|
next_identity()
Die
System Funktion
next_identity() gibt den nächstmöglichen
Wert
zurück, der für
inserts
auf eine
Tabelle
mit
Identity Spalte
zur Verfügung steht.
Dieser Wert kann von dem eigentlich eingefügten Wert abweichen, wenn mehre
User
gleichzeitig inserts auf die selbe Tabelle ausführen.
Der Rückgabewert der Funktion next_identity ist vom
Datentyp
varchar,
um alle mögliche Genauigkeitswerte der Identitätsspalte abbilden zu können.
Ist die abgefragte Tabelle eine
Proxy Tabelle,
keine
User
Tabelle, oder wenn die Tabelle keine
Identity-Spalte
hat, so ist der Rückgabewert
NULL.
Die Funktion steht in Verbindung mit der
Konfigurationsoption
"identity grab size".
Steht der Wert dieser Option auf "1", so wird der nächstmögliche Identitywert
für eine Insert-Anweisung einer beliebigen
Session
zurückgegeben. Ist der Wert von "identity grab size" größer als "1",
so bezieht sich der Rückgabewert auf Insert-Anweisungen der aktuellen Session.
Die Funktion ist nur ausführbar für den Besitzer der Tabelle (owner), einen
System Administrator,
oder einen
Datenbankadministrator.
Syntax der System Funktion next_identity()
next_identity("table_name")
Der Parameter der System Funktion next_identity()
"table_name"
Der Parameter "table_name" bezeichnet den Namen der Tabelle,
für die der nächstmögliche Identitätswert zurückgegeben werden soll.
Der Name der Tabelle ist in der
Spalte
"name" der
System Tabelle
sysobjects
verzeichnet, oder kann mit der
Stored Procedure
sp_help
ausgelesen werden.
Beispiel für die System Funktion next_identity()
select next_identity ('mytable')
go
mytable
--------
22
Abhängig vom Wert der Konfigurationsparameters "identity grab size",
zeigt der Rückgabewert (22) entweder den für die aktuelle Session
nächst verfügbaren Identitywert, oder den einer beliebigen Session.
Siehe auch:
Aggregat Funktionen, audit_event_name(), col_length(), col_name(), curunreservedpgs(), datachange(), datalength(), data_pages(), data_pgs(), db_id(), db_name(), derived_stat(), host_id(), host_name(), identity(), identity_burn_max(), index_col(), index_colorder(), isnull(), is_quiesced(), lct_admin("logsegment_freepages"), lct_admin("num_logpages"), lct_admin("reserved"), lct_admin("reserved_for_rollbacks"), lct_admin(), license_enabled(), lockscheme(), object_id(), object_name(), pageinfo(), pagesize(), pointer_size(), ptn_data_pgs(), reserved_pages(), reserved_pgs(), rowcnt(), row_count(), showplan_in_xml(), syb_quit(), syb_sendmsg(), System Funktionen, tempdb_id(), tran_dumpable_status(), tsequal(), used_pages(), used_pgs().
|