Einzelnen Beitrag anzeigen

AlexII

Registriert seit: 28. Apr 2008
1.717 Beiträge
 
FreePascal / Lazarus
 
#1

Variable mittels INSERT in die DB speichern?

  Alt 13. Okt 2012, 23:11
Datenbank: SQLite • Version: 3 • Zugriff über: SQLite4Delphi Wrapper von Tim Anderson
Hallo,

hab folgendes Problem: ich möchte die Daten aus Edit-Feldern in die DB mittels INSERT speichern. Ich kann wie folgt feste Strings speichern, aber nicht Variablen:

Delphi-Quellcode:
procedure TForm1.OKBtnClick(Sender: TObject);
var dbFile: String;
    db: TSQLiteDatabase;
    sSQL: String;
begin
  dbFile := ExtractFilePath(Application.ExeName) + 'Datab.db';
  db := TSQLiteDatabase.Create(dbFile);
  try

    // Transaktion beginnt
    db.BeginTransaction;

    // Tabelle füllen
    sSQL := 'INSERT INTO telbuch(Vorname, Name, Telefon) VALUES ("Max", "Mustermann", "123-1234567");';

    // Insert Befehl wird ausgeführt
    db.ExecSQL(sSQL);

    // Transaktion endet
    db.Commit;

  finally
    db.Free;
  end;
end;
Jah... wenn ich die Zeile:
Delphi-Quellcode:
// Tabelle füllen
sSQL := 'INSERT INTO telbuch(Vorname, Name, Telefon) VALUES ("Max", "Mustermann", "123-1234567");';
durch diese ersetze:
Delphi-Quellcode:
// Tabelle füllen
sSQL := 'INSERT INTO telbuch(Vorname, Name, Telefon) VALUES (Edit1.Text, Edit2.Text, Edit3.Text);';
bekomme ich eine Fehlermeldung.

Ich weiß ich kann das irgendwie mit Query-Komponente lösen, aber ich hab diese nicht, da mit Delphi 7 Personal arbeite.

Kann ich mein Vorhaben irgendwie anders umsetzen?

Danke!
Bin Hobbyprogrammierer! Meine Fragen beziehen sich meistens auf Lazarus!

Geändert von AlexII (13. Okt 2012 um 23:15 Uhr)
  Mit Zitat antworten Zitat