Für bessere Übersicht/Performance kann ich da nur die Verwendung von Parametern empfehlen:
Delphi-Quellcode:
With ADOQuery
Do
Begin
SQL.Text :=
'
Insert Into EinzelFelder' + #10 +
'
(Typ, Beschreibung, Aktiv, Text, Bemerkungen, Timestamp)' + #10 +
'
Values' + #10 +
'
(:i_Typ,' + #10 +
'
:i_Beschreibung,' + #10 +
'
:i_Aktiv,' + #10 +
'
:i_Text,' + #10 +
'
:i_Bemerkungen,' + #10 +
'
:i_TimeStamp)';
// mit Prepared wird das Statement nach SQL-Variablen (Parametern) durchsucht
Prepared := True;
Parameters.ParamByName('
i_Typ').Value := ComboBox1.Text;
Parameters.ParamByName('
i_Beschreibung').Value := Edit2.Text;
Parameters.ParamByName('
i_Aktiv').Value := Feld_Aktiv;
Parameters.ParamByName('
i_Text').Value := Memo2.Text;
Parameters.ParamByName('
i_Bemerkungen').Value := Memo1.Text;
Parameters.ParamByName('
i_TimeStamp').Value := Now();
ExecSQL;
End;
Da ID bei dir anscheinend durch einen Trigger in der
DB gesetzt wird, musst du es auch nicht in deine Spaltenliste aufnehmen.
p.s.:
Control-Bezeichnungen wie: ComboBox1, Edit1,Memo2,... sorgen dafür, dass du deinen Code in 2 Wochen genau Durchlesen musst um zu wissen was du da eigentlich machen wolltest.
Bei aussagekräftigen Bezeichnungen reicht meistens ein kurzes "Überfliegen".
Edit: Delphi-SchlussTag gesetzt