![]() |
TStringList Add Zeile einfügen Fehler !
Hallo zusammen,
ich habe eine Var. TStringList in der ich eine Zeile einfügen möchte, die auch aus '' bestehen. Wenn ich jetzt schreibe:
Delphi-Quellcode:
schmeist Delphi mir Fehler aus !
MeineTStringList.Add('$querry = mysql_query("INSERT INTO `a4` VALUES (1, 'DE', '€', '', '', '', '',0, '')");
'); Wie kann ich jetzt die Zeile in meine TStringList einfügen ohne Fehler ? Ich glaube die Hochkomertas machen den Ärger ! Ich bin Dankbar für jeden Tip. |
Re: TStringList Add Zeile einfügen Fehler !
So sollte es gehen (wenn ich mich bei der jeweiligen Anzahl von ' nicht verzählt habe ;-))
MeineTStringList.Add('$querry = mysql_query("INSERT INTO '''a4''' VALUES (1,'''DE''', '''€''', ''''', ''''', ''''', ''''',0, ''')");'); |
Re: TStringList Add Zeile einfügen Fehler !
Danke wenn ich das richtig sehe muß ich jedes ' in zwei '' setzen.
Das wird Arbeit da die Zeile etwa 3 mal so lang ist. Gut dann lege ich mal los. Danke. |
Re: TStringList Add Zeile einfügen Fehler !
Und: keine Zeilenumbrüche im string ;) Lieber statt [Enter] ein '#10#13' hinsetzen :)
|
Re: TStringList Add Zeile einfügen Fehler !
Hallo,
wenn ich Dir einen kleinen Tipp geben darf: das Ganze wird, bei umfangreichen Statements sehr unübersichtlich mit den ganzen einfachen und, je nach SQL-Syntax, doppelten Anführungszeichen. Gerade dann, wenn man der Übersichtlichkeit wegen den Code auf mehrere Zeilen aufteilt, kommt man sehr schnell durcheinander. Ich habe mir angewöhnt, für Anführungszeichen, die die Strings in den Statements kennzeichnen, die jeweiligen ASCII-Zeichen zu benutzen, also #034 für die doppelten, und #039 für die einfachen Anführungszeichen. Das macht das ganze gleich viel übersichtlicher. Und wenn Du noch einen Schritt weiter gehen möchtest, dann packst Du das Ganze in eine Konstante, so dass Du, wenn Du mal den DB-Treiber wechseln solltest, das entsprechende Zeichen nur noch an einer Stelle ersetzen musst. |
Re: TStringList Add Zeile einfügen Fehler !
Weil es sich ja offensichtlich um statische Strings handelt, so kannst du diese doch einfach in eine Textdatei hinterlegen, und diese ganze Datei einfach in die Stringlist laden.
|
Re: TStringList Add Zeile einfügen Fehler !
Das geht eben leider nicht, da ich noch Variabeln verwenden möchte die dann die Werte einfügt dic zur Laufzeit von Delphi übergeben werden.
jetzt stoße ich auch schon af die Grenzen: der String ist länger als 255 und Delphi meckert. |
Re: TStringList Add Zeile einfügen Fehler !
Versuch mal die überflüssigen Leerzeichen wegzulassen oder verwende anstatt einer Stringliste einen dynamischen Array of string, dann fällt die Begrenzung auf 255 Zeichen weg.
|
Re: TStringList Add Zeile einfügen Fehler !
Nope, eben nicht. Aber den String an der 255. Stelle durch '+' trennen hilft ;)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz