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


NEWSEQUENTIALID (Transact-SQL)

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

Olyan GUID-t hoz létre, amely nagyobb, mint a függvény által korábban létrehozott GUID egy megadott számítógépen a Windows elindítása óta. A Windows újraindítása után a GUID újraindulhat egy alacsonyabb tartományból, de globálisan még mindig egyedi. Ha a GUID oszlopot sorazonosítóként használják, a használat NEWSEQUENTIALID gyorsabb lehet, mint a NEWID függvény használata. Ennek az az oka, hogy a NEWID függvény véletlenszerű tevékenységet okoz, és kevesebb gyorsítótárazott adatlapot használ. A használatával NEWSEQUENTIALID teljes mértékben kitöltheti az adatokat és az indexlapokat.

Fontos

Ha az adatvédelem aggodalomra ad okot, ne használja ezt a függvényt. A következő generált GUID értékét meg lehet tippelni, és így az adott GUID-hoz társított adatokat is elérheti.

NEWSEQUENTIALID egy burkoló a Windows UuidCreateSequential függvényen, néhány bájtos osztással.

Figyelmeztetés

A UuidCreateSequential függvény hardverfüggőségekkel rendelkezik. Az SQL Serveren szekvenciális értékek fürtöi akkor alakulhatnak ki, ha az adatbázisok (például a tartalmazott adatbázisok) más számítógépekre kerülnek. Az Azure SQL Database-ben és az Always On használatakor szekvenciális értékek fürtöi akkor alakulhatnak ki, ha az adatbázis egy másik számítógépre nem adhatja át a feladatátvételt.

Transact-SQL szintaxis konvenciók

Szemantika

NEWSEQUENTIALID ( )

Visszatérési típusok

uniqueidentifier

Megjegyzések

NEWSEQUENTIALIDcsak DEFAULT típusú táblaoszlopokra vonatkozó korlátozásokkal használható. Például:

CREATE TABLE myTable
(
    ColumnA UNIQUEIDENTIFIER DEFAULT NEWSEQUENTIALID()
);

Kifejezésekben NEWSEQUENTIALIDDEFAULT nem kombinálható más skaláris operátorokkal. Például nem tudja végrehajtani a következő kódot:

CREATE TABLE myTable
(
    ColumnA UNIQUEIDENTIFIER DEFAULT dbo.myfunction(NEWSEQUENTIALID())
);

Az előző példában egy skaláris, myfunction() felhasználó által definiált skaláris függvény, amely egy értéket fogad el és ad uniqueidentifier vissza.

NEWSEQUENTIALID lekérdezésekben nem lehet hivatkozni.

NEWSEQUENTIALID A grafikus felhasználói felülettel csökkenthető az oldaleloszlások és a véletlenszerű I/O-k száma az indexek levélszintjén.

Minden, a használatával NEWSEQUENTIALID létrehozott GUID egyedi ezen a számítógépen. A használat során NEWSEQUENTIALID létrehozott GRAFIKUS GUID-k csak akkor egyediek több számítógépen, ha a forrásszámítógép rendelkezik hálózati kártyával.