Hallo,
ich habe hier einen Befehl, der mir immer wieder die Fehlermeldung bringt:
ISC ERROR CODE: 335544347
ISC ERROR MESSAGE: validation error for column ID, value "***null***"
Das Feld ist in der Datenbank so definiert, dass es nicht "NULL" sein darf.
Nach meinem Verständnis befülle ich das Feld. Ich habe den gleichen Code schon einmal in diesem Programm genutzt, und da funktioniert es.
Vielleicht kann mir jemand sagen, was ich übersehe?
Delphi-Quellcode:
IB_Query.Close;
IB_Query.SQL.Text:= 'SELECT MAX(BLABRUF.ID) AS IDMAX FROM BLABRUF';
IB_Query.Open;
if IB_Query.FieldByName('IDMAX').IsNotNull then
begin
id:= IB_Query.FieldByName('IDMAX').AsInteger;
end
else
begin
id:= 0;
end;
IB_Query.Close;
id:= id + 1;
IB_Query.Close;
IB_Query.SQL.Clear;
IB_Query.SQL.Append('INSERT INTO BLABRUF (BLABRUF.ID, BLABRUF.AUFTRAG, BLABRUF.PFAD, BLABRUF.GESPEICHERT, BLABRUF.INOUT)');
IB_Query.SQL.Append('VALUES (:id,:auftrag,:pfad,:gespeichert,''I'');');
IB_Query.ParamByName('id').AsInteger;
IB_Query.ParamByName('auftrag').AsString:= zeile;
IB_Query.ParamByName('pfad').AsString:= pfadListBox;
IB_Query.ParamByName('gespeichert').AsDateTime;
Ich bin für jede Hilfe dankbar.