Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Neu: 15. September 2007
Gibt den niedrigsten aktiven rowversion-Wert in der aktuellen Datenbank zurück. Ein rowversion -Wert ist aktiv, wenn er in einer Transkation verwendet wird, für die noch kein Commit ausgeführt wurde. Weitere Informationen finden Sie unter timestamp (Transact-SQL).
Hinweis: |
|---|
| Der rowversion-Datentyp wird auch als timestamp bezeichnet. |
Transact-SQL-Syntaxkonventionen
Syntax
MIN_ACTIVE_ROWVERSION
Rückgabetypen
Gibt einen binary(8)-Wert zurück.
Hinweise
MIN_ACTIVE_ROWVERSION ist eine nicht deterministische Funktion, die den niedrigsten aktiven rowversion-Wert in der aktuellen Datenbank zurückgibt. Ein neuer rowversion-Wert wird in der Regel generiert, wenn ein neuer Einfüge- oder Aktualisierungsvorgang in einer Tabelle ausgeführt wird, die eine Spalte vom Typ rowversion enthält. Wenn in der Datenbank keine aktiven Werte vorhanden sind, gibt MIN_ACTIVE_ROWVERSION den gleichen Wert wie @@DBTS + 1 zurück.
MIN_ACTIVE_ROWVERSION ist in Szenarien wie der Datensynchronisierung hilfreich, in denen rowversion-Werte zur Gruppierung von Änderungssätzen verwendet werden. Wenn eine Anwendung @@DBTS anstelle von MIN_ACTIVE_ROWVERSION verwendet, ist es möglich, dass Änderungen nicht erfasst werden, die aktiv sind, wenn die Synchronisierung erfolgt.
Beispiele:
Im folgenden Beispiel werden rowversion-Werte mithilfe von MIN_ACTIVE_ROWVERSION und @@DBTS zurückgegeben. Beachten Sie, dass sich die Werte unterscheiden, wenn es keine aktiven Transaktionen in der Datenbank gibt.
-- Create a table that has a ROWVERSION column in it.
CREATE TABLE RowVersionTestTable (rv ROWVERSION)
GO
-- Print the current values for the database.
PRINT ''
PRINT 'DBTS'
PRINT @@DBTS
PRINT 'MIN_ACTIVE_ROWVERSION'
PRINT MIN_ACTIVE_ROWVERSION()
GO
---------------- Results ----------------
--DBTS
--0x00000000000007E2
--MIN_ACTIVE_ROWVERSION
--0x00000000000007E3
-- Insert a row.
INSERT INTO RowVersionTestTable VALUES (DEFAULT)
SELECT * FROM RowVersionTestTable
GO
---------------- Results ----------------
--rv
--0x00000000000007E3
-- Print the current values for the database.
PRINT ''
PRINT 'DBTS'
PRINT @@DBTS
PRINT 'MIN_ACTIVE_ROWVERSION'
PRINT MIN_ACTIVE_ROWVERSION()
GO
---------------- Results ----------------
--DBTS
--0x00000000000007E3
--MIN_ACTIVE_ROWVERSION
--0x00000000000007E4
-- Insert a new row inside a transaction but do not commit.
BEGIN TRAN
INSERT INTO RowVersionTestTable VALUES (DEFAULT)
SELECT * FROM RowVersionTestTable
GO
---------------- Results ----------------
--rv
--0x00000000000007E3
--0x00000000000007E4
-- Print the current values for the database.
PRINT ''
PRINT 'DBTS'
PRINT @@DBTS
PRINT 'MIN_ACTIVE_ROWVERSION'
PRINT MIN_ACTIVE_ROWVERSION()
GO
---------------- Results ----------------
--DBTS
--0x00000000000007E4
--MIN_ACTIVE_ROWVERSION
--0x00000000000007E4
-- Commit the transaction.
COMMIT
GO
-- Print the current values for the database.
PRINT ''
PRINT 'DBTS'
PRINT @@DBTS
PRINT 'MIN_ACTIVE_ROWVERSION'
PRINT MIN_ACTIVE_ROWVERSION()
GO
---------------- Results ----------------
--DBTS
--0x00000000000007E4
--MIN_ACTIVE_ROWVERSION
--0x00000000000007E5
Siehe auch
Verweis
@@DBTS (Transact-SQL)
timestamp (Transact-SQL)
Hinweis: