Megosztás a következőn keresztül:


MIN_ACTIVE_ROWVERSION (Transact-SQL)

A következőkre vonatkozik:SQL ServerAzure SQL DatabaseFelügyelt Azure SQL-példánySQL-adatbázis a Microsoft Fabricben

A jelenlegi adatbázis legalacsonyabb aktív sorverziós értékét adja vissza. Egy sorverziós érték aktív, ha olyan tranzakcióban használják, amelyet még nem köteleztek el. További információért lásd a rowversion (Transact-SQL) oldalt.

Megjegyzés:

A sorverziós adattípust időbélyegnek is nevezik.

Transact-SQL szintaxis konvenciók

Szemantika

MIN_ACTIVE_ROWVERSION ( ) 

Visszatérési típusok

Bináris (8) értéket ad vissza.

Megjegyzések

MIN_ACTIVE_ROWVERSION egy nem determinisztikus függvény, amely a jelenlegi adatbázis legalacsonyabb aktív sorverziós értékét adja vissza. Egy új sorverzió értéket általában akkor generálnak, amikor egy táblázaton beillesztést vagy frissítést hajtanak végre, amely egy sorverzió típusú oszlopot tartalmaz. Ha az adatbázisban nincsenek aktív értékek, MIN_ACTIVE_ROWVERSION ugyanazt az értéket adja, mint a @@DBTS + 1.

MIN_ACTIVE_ROWVERSION hasznos olyan helyzetekben, mint az adatszinkronizáció, ahol sorverziós értékeket használnak a változtatások csoportosítására. Ha egy alkalmazás @@DBTS-t használ MIN_ACTIVE_ROWVERSION helyett, előfordulhat, hogy kihagyhatja azokat a változásokat, amelyek aktívak a szinkronizálás során.

A MIN_ACTIVE_ROWVERSION függvényt nem befolyásolják a tranzakciós izolációs szintek változásai.

Példák

A következő példa a sorverziós értékeket és használatával MIN_ACTIVE_ROWVERSION@@DBTSadja vissza. Figyeld meg, hogy az értékek eltérnek, ha az adatbázisban nincsenek aktív tranzakciók.

-- 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  

Lásd még:

@@DBTS (Transact-SQL)
sorverzió (Transact-SQL)