AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Zugriff auf MySQL mit Zeos-Komponenten - SQL-Befehl zu lang?
Thema durchsuchen
Ansicht
Themen-Optionen

Zugriff auf MySQL mit Zeos-Komponenten - SQL-Befehl zu lang?

Ein Thema von mirko2000 · begonnen am 25. Jul 2004 · letzter Beitrag vom 26. Jul 2004
Antwort Antwort
mirko2000

Registriert seit: 9. Nov 2003
69 Beiträge
 
#1

Zugriff auf MySQL mit Zeos-Komponenten - SQL-Befehl zu lang?

  Alt 25. Jul 2004, 12:56
Hallo.

Ich greife mit den Zeos-Komponenten auf eine MySQL-Datenbank zu. Bei einem etwas längerem String kommt jetzt die Fehlermeldung:

Code:
Strin-Literale könne maximal 255 Elemente besitzen
Jetzt ist nur die Frage, wie kann ich einen SQL-Befehl ausführen, der länger als 255 Zeichen ist?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Zugriff auf MySQL mit Zeos-Komponenten - SQL-Befehl zu l

  Alt 25. Jul 2004, 13:27
Welchen SQL-Befehl schickst Du genau weg. bzw. wie ist dein Code?
Bei MySQL können (var-)char-Felder maximal 255 Zeichen lang sein.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
mirko2000

Registriert seit: 9. Nov 2003
69 Beiträge
 
#3

Re: Zugriff auf MySQL mit Zeos-Komponenten - SQL-Befehl zu l

  Alt 25. Jul 2004, 13:43
Hat sich schon erledigt. Hab mal versucht den gesamten SQL-Befehl in zwei Teile zu zerlegen und dann hat es funktioniert.

Delphi-Quellcode:
zeoSQL.SQL.Text := 'SELECT ...........(TEIL 1)';
zeoSQL.SQL.Text := zeoSQL.SQL.Text + ' .......(TEIL 2)';
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Zugriff auf MySQL mit Zeos-Komponenten - SQL-Befehl zu l

  Alt 25. Jul 2004, 13:49
Ist das vieleicht 'ne Macke der Zeos-Komponenten?

Du kannst aber auch schreiben:
Delphi-Quellcode:
zeoSQL.SQL.Clear;
zeoSQL.SQL.Add('SELECT ...........(TEIL 1)');
zeoSQL.SQL.Add(' .......(TEIL 2)');
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Zugriff auf MySQL mit Zeos-Komponenten - SQL-Befehl zu l

  Alt 25. Jul 2004, 16:27
Zitat von Bernhard Geyer:
Ist das vieleicht 'ne Macke der Zeos-Komponenten?...
Ist das bei Delphi nicht immer so?
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
woki

Registriert seit: 29. Mär 2003
563 Beiträge
 
Delphi 2006 Architect
 
#6

Re: Zugriff auf MySQL mit Zeos-Komponenten - SQL-Befehl zu l

  Alt 25. Jul 2004, 17:38
Hi,

Zitat von Sharky:
Zitat von Bernhard Geyer:
Ist das vieleicht 'ne Macke der Zeos-Komponenten?...
Ist das bei Delphi nicht immer so?
Das ist aber auch ganz in Ordnung so, man sollte auch nicht versuchen mehr als 255 Zeichen in eine Zeile zu quetschen, und sobald man mit + die einzelnen Zeilen zusammensetzt, gilt die Begrenzung ja schon nicht mehr.

Grüsse
Woki
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Zugriff auf MySQL mit Zeos-Komponenten - SQL-Befehl zu l

  Alt 26. Jul 2004, 07:14
Zitat von Sharky:
Zitat von Bernhard Geyer:
Ist das vieleicht 'ne Macke der Zeos-Komponenten?...
Ist das bei Delphi nicht immer so?
Wieso sollte das so sein?
Strings waren nur in der Delphi-1-Version auf eine länge von 255 Zeichen beschränkt. Ab D2 gibt es dafür den Datentyp ShortString oder den Compilerschalter {$LONGSTRINGS OFF}.
Und dein Code mit "+" erzeugt ja auch einen String der Länger als 255 Zeichen ist.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Zugriff auf MySQL mit Zeos-Komponenten - SQL-Befehl zu l

  Alt 26. Jul 2004, 08:12
Zitat von Bernhard Geyer:
Zitat von Sharky:
Zitat von Bernhard Geyer:
Ist das vieleicht 'ne Macke der Zeos-Komponenten?...
Ist das bei Delphi nicht immer so?
Wieso sollte das so sein?...
Hai Bernhard,

ich meinte damit das ein String-Literal nicht länger als 255 Zeichen sein darf. Also
Delphi-Quellcode:
var
  tstring : String;
begin
  tstring := 'hier kommen > 255 Zeichen'; // Geht nicht
  tstring := 'hier kommen <= 255 Zeichen' ; // Geht
  tstring := tstring + 'noch einmal <= 255 Zeichen'; // Geht auch. usw.
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: Zugriff auf MySQL mit Zeos-Komponenten - SQL-Befehl zu l

  Alt 26. Jul 2004, 12:07
Ach so. Es ist ein Compiler-Fehler und kein Laufzeitfehler.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz