Hallo zusammen,
<br><br>
angenommen man hat eine Tabelle A mit einem Primarschlüssel als Identity und eine Detailtabelle B, die über einen FOREIGN-KEY Constraint auf Tabelle A referenziert.
<br><br>
Ich möchte nun in einem Trigger für Tabelle C einen Datensatz in Tabelle A, und danach zu diesem neu angelegten Datensatz eine Reihe von Datensätzen in Tabelle B anlegen. Dazu brauch ich natürlich die zuletzt vergebene Identity aus Tabelle A, um in Tabelle B die Datensätze anlegen zu können. Ich kann die zuletzt vergebene Identity mit <b>@@IDENTITY</b> ermitteln. Meine Frage ist nun aber, ob diese Sache mehrbenutzerfähig ist, d.h. ob garantiert ist, dass ich nicht eine Identity von einem anderen INSERT Statement vorgegaukelt bekomme?
<br><br>
In InterBase/Firebird bin ich es gewöhnt in einem Trigger mir vorher einen nächsten Generatorwert in einer Variable zu speichern, und diesen Wert dann durchgehend zu verwenden.
<br><br>
Für etwaige Tipps wäre ich dankbar!
<br><br>
Schöne Grüße,<br>
Thomas
<br><br>
angenommen man hat eine Tabelle A mit einem Primarschlüssel als Identity und eine Detailtabelle B, die über einen FOREIGN-KEY Constraint auf Tabelle A referenziert.
<br><br>
Ich möchte nun in einem Trigger für Tabelle C einen Datensatz in Tabelle A, und danach zu diesem neu angelegten Datensatz eine Reihe von Datensätzen in Tabelle B anlegen. Dazu brauch ich natürlich die zuletzt vergebene Identity aus Tabelle A, um in Tabelle B die Datensätze anlegen zu können. Ich kann die zuletzt vergebene Identity mit <b>@@IDENTITY</b> ermitteln. Meine Frage ist nun aber, ob diese Sache mehrbenutzerfähig ist, d.h. ob garantiert ist, dass ich nicht eine Identity von einem anderen INSERT Statement vorgegaukelt bekomme?
<br><br>
In InterBase/Firebird bin ich es gewöhnt in einem Trigger mir vorher einen nächsten Generatorwert in einer Variable zu speichern, und diesen Wert dann durchgehend zu verwenden.
<br><br>
Für etwaige Tipps wäre ich dankbar!
<br><br>
Schöne Grüße,<br>
Thomas
Comment