Einzelnen Beitrag anzeigen

Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#1

FireDAC : Trigger geht nicht

  Alt 4. Sep 2015, 14:38
Datenbank: Firebird • Version: 2.5 • Zugriff über: FireDAC
Moin,

will etwas mit FireDac testen und wollte mir deshalb eine Table erstellen.

Delphi-Quellcode:
    DM.DS.Insert;
    DM.DS.FieldByName('NR').AsInteger := i + 100;
    DM.DS.FieldByName('BEZ').AsInteger := i;
    DM.DS.Post;
    if i mod 1000 = 0 then begin
mem1.Lines.Add(IntToStr (i));
      DM.Trans.Commit;
      DM.Trans.StartTransaction;
    end;
Die Table enthält natürlich noch eine ID, die über Trigger hochgezählt wird. Lege ich in IBExpert von Hand einen Datensatz an, ähnlich wie hier im Programm, dann wird die nicht eingegebene ID automatisch vergeben, der Trigger scheint also zu gehen. Lasse ich obiges Delphi-Programm laufen, dann kommt allerdings folgende Fehlermeldung : "Das Feld ID muss einen Wert haben". Wieso das ?

Nachtrag : ersetze ich das Insert durch ein Edit, dann laufen in dem Kontrollmemo schön die Tausender durch, das Feld BEZ bleibt aber bei dem vorher manuell eingegeben Wert. Da wird also in diesem Fall nichts abgespeichert, ohne dass Fehlermeldung kommt.
Gruß
Hansa

Geändert von Hansa ( 4. Sep 2015 um 14:41 Uhr)
  Mit Zitat antworten Zitat