2011-01-15 3 views
1

Ich bin ziemlich neu zu HSQLDB und habe eine Frage zu Identity-Spalten.Wird die Identity-Spalte in verschiedenen HSQLDB-Tabellen identisch sein

Wenn ich zwei Tabellen habe und beide Tabellen Identity-Spalten haben, gibt es dann Werte, die von einer einzelnen Sequenz generiert wurden, oder besteht die Möglichkeit, dass beide Tabellen ähnliche Werte in Identitätsspalten haben?

Auch gibt es eine Möglichkeit, eine Sequenz auszulösen, wann immer eine Einfügung in irgendeine Tabelle geschieht.

Antwort

1

Hyper SQL verwendet dasselbe Modell wie die meisten anderen (alle?) SQL-Implementierungen. Die Reihenfolge der Identitätswerte in einer Tabelle ist völlig unabhängig von anderen Tabellen.

Als Beispiel nehmen wir an, Sie haben TableA und TableB beide haben eine ID-Spalte und diese Spalte ist eine Identität. Wenn Sie in TabelleA einfügen, wird der ID-Wert für diese Tabelle berechnet und zugewiesen. Dieser Wert hat jedoch nichts mit TableB zu tun, und TableB wird überhaupt nicht geändert.

Wenn Sie einen Prozess haben, der zur gleichen Zeit in beide Tabellen eingefügt wird, wird eine scheinbare Verknüpfung angezeigt, da die Identitätswerte identisch sind (vorausgesetzt, Sie verwenden dasselbe Identitätsmodell für beide Tabellen und beginnen am selben Punkt)). Diese "scheinbare Verbindung" ist nur, dass es überhaupt keine Beziehung gibt.

Verwandte Themen