Einzelnen Beitrag anzeigen

Satyr

Registriert seit: 8. Feb 2012
Ort: Essen
305 Beiträge
 
Delphi 10.4 Sydney
 
#1

String eintragen der Apostroph enthält

  Alt 18. Mai 2012, 16:46
Datenbank: SQLite • Version: 3 • Zugriff über: ASQL
Guten Abend,

ich stehe ein wenig auf dem Schlauch.
Ich habe ein Programm das ein Mail System "simuliert". Es arbeitet also als Mail System, die Mails sind aber keinen echten Mails.
Dazu nutze ich eine SQLite Datenbank um die Mails (welche auch vom Programm generiert werden können) speichert. Mit virtuellem Absender und Datum. Dazu habe ich mir eine Procedure geschrieben:

Delphi-Quellcode:
procedure addMail(abs: String; txt: String);
var
datum: String;
begin
datum := FormatDateTime('dd.mm.yyyy', Now);

 fuunc.ASQLite3Query1.SQL.Clear;
 fuunc.ASQLite3Query1.SQL.Add('INSERT INTO mails (absender, mail, datum) VALUES ('''+abs+''', '''+txt+''', '''+datum+''')');
 fuunc.ASQLite3Query1.ExecSQL;
end;
Funktioniert fast perfekt. Aufgerufen wird es mit:

func.addMail('Hans Meier', 'Text'); Mein Problem ist nun, das es den SQL Befehl zerhaut, wenn im Text oder Absender ein ' vorkommt. Kein Problem, dachte ich und lasse alle ' durch '' ersetzen. Aber dann funktioniert meine String Übergabe nicht mehr weil Delphi '' schon selbst nutzt.
Kann ich da irgendwas einfaches machen? Bestimmt, ich komme nur grad nicht drauf *grml*.

Gruß,
Andreas
  Mit Zitat antworten Zitat