Einzelnen Beitrag anzeigen

Benutzerbild von dataspider
dataspider

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.350 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Verwenden von Triggern für Firebird 2.5 DB

  Alt 13. Apr 2011, 14:49
Hi,

an dieser Stelle bleiben doch einige hängen.
Der Hintergrund:

Deine Datenmenge in deinem DataSet füllst du ja mit Daten.
Dann erfolgt ein Insert und dein Dataset schickt eine Insert - Statement an die DB.
Dein DataSet kennt alle Daten, die du eingegeben hast.
Um auch die Daten zu kennen, die durch Trigger generiert werden, muss das DataSet dazu veranlasst werden,
nach einem Insert quasi eine Syncronisation mit dem Server durchzuführen.

Je nach Komponentenherstelle wir dieses Problem unterschiedlich angegangen.
Die meisten erlauben es, den Generator und das KeyField anzugeben und holen den Wert für die ID selbst.
Deshalb macht es Sinn, im Trigger immer ...if new.id is null then... zu verwenden.

Such mal nach einer Eigenschaft GeneratorName und KeyFieldName.
[EDIT]
Für andere durch Trigger generierte Werte gibt es z.B.
IBO: BufferSyncroFlags oder InvalidateRecord
IBDac: RefreshOptions
...
[/EDIT]



Frank
Frank Reim

Geändert von dataspider (13. Apr 2011 um 14:55 Uhr)
  Mit Zitat antworten Zitat