Einzelnen Beitrag anzeigen

brunoM

Registriert seit: 19. Jul 2006
Ort: CH-3123 Belp
62 Beiträge
 
Delphi XE5 Professional
 
#1

Firebird Autoincrement

  Alt 1. Dez 2016, 09:03
Datenbank: Firebird • Version: 2.5 • Zugriff über: Unidac
Hallo zusammen
Ich bin daran von AbsoluteDatabase auf Firebird umzusteigen. Firebird ist Neuland und ich habe ein Problem mit Autoincrement-Feldern bzw. mit dem Import von Daten mittels Delphi.

Von AbsoluteDB gewohnt:
tabelle.Insert;
tabelle.Fieldbyname('yx').AsString :='Text....';
tabelle.Fieldbyname('yx').AsString :='Text....';
tabelle.Post.
Soweit so gut - das Autoincrement-Feld wird dabei automatisch erhöt und der Wert mitgespeichert.

Dass es bei Firebird kein Autoincrement-Feld gibt weis ich - habe deshalb auch einen Generator und einen Trigger angelegt bzw. das hat SQL-Manager erledigt. Erfasse ich Daten innerhalb des SQL-Managers funktioniert die Zählung des Autoincrement-Feldes. Versuche ich jedoch über Delphi Daten analog der oben beschriebenen Vorgehensweise zu erfassen, erscheint die Meldung Feld "id" (das besagte Autoincrement-Feld) muss einen Wert haben - scheinbar muss ich da noch etwas unternehmen dass ein Wert vom Generator geliefert und in das id-Feld eingetragen wird. Ich benutze die Unidac-Komponenten von Devart

Leider komme ich nicht weiter - aber vielleicht hat ja hier jemand einen Tipp, jedenfalls schon Danke im Voraus für eure Hilfe.

Gruss
Bruno
  Mit Zitat antworten Zitat