Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Punkt końcowy analizy SQL w usłudze Microsoft Fabric
Hurtownia danych w usłudze Microsoft Fabric
Baza danych SQL w usłudze Microsoft Fabric
To 16-bajtowy identyfikator GUID.
Remarks
Kolumna lub zmienna lokalna typu danych uniqueidentifier można zainicjować na wartość w następujący sposób:
- Za pomocą funkcji NEWID lub NEWSEQUENTIALID .
- Konwertując z stałej ciągu w postaci --xxxxxxxxxxxx--, w której każdy x jest cyfrą szesnastkową w zakresie od 0 do 9 lub a-f. Na przykład 6F9619FF-8B86-D011-B42D-00C04FC964FF jest prawidłową unikatową wartością.
Operatory porównania mogą być używane z unikatowymi wartościamiidentyfikatora . Jednak kolejność nie jest implementowana przez porównanie wzorców bitowych dwóch wartości. Jedynymi operacjami, które można wykonać względem unikatowej wartościidentifier, są porównania (=, <>, <><= , =, >=) i sprawdzanie wartości NULL (IS NULL i IS NOT NULL). Nie można używać innych operatorów arytmetycznych. Wszystkie ograniczenia i właściwości kolumn, z wyjątkiem IDENTITY, mogą być używane w unikatowym typie danychidentyfikatora .
Scal replikację i replikację transakcyjną z aktualizowaniem subskrypcji używają unikatowych kolumnidentyfikatora w celu zagwarantowania, że wiersze są jednoznacznie identyfikowane w wielu kopiach tabeli.
Konwertowanie unikatowych danychidentyfikatora
Typ uniqueidentifier jest uważany za typ znaku na potrzeby konwersji z wyrażenia znaku i dlatego podlega regułom obcinania konwersji na typ znaku. Oznacza to, że gdy wyrażenia znaków są konwertowane na typ danych znaków o innym rozmiarze, wartości, które są zbyt długie dla nowego typu danych, są obcinane. Zobacz sekcję Przykłady.
Ograniczenia i ograniczenia
Te narzędzia i funkcje nie obsługują uniqueidentifier typu danych:
- PolyBase
- narzędzie ładującego dwloader dla magazynu danych równoległych
Examples
Poniższy przykład konwertuje uniqueidentifier wartość na char typ danych.
DECLARE @myid uniqueidentifier = NEWID();
SELECT CONVERT(CHAR(255), @myid) AS 'char';
W poniższym przykładzie pokazano obcięcie danych, gdy wartość jest zbyt długa dla typu danych konwertowanego na. Ponieważ typ uniqueidentifier jest ograniczony do 36 znaków, znaki, które przekraczają długość, są obcinane.
DECLARE @ID NVARCHAR(max) = N'0E984725-C51C-4BF4-9960-E1C80E27ABA0wrong';
SELECT @ID, CONVERT(uniqueidentifier, @ID) AS TruncatedValue;
Oto zestaw wyników.
String TruncatedValue
-------------------------------------------- ------------------------------------
0E984725-C51C-4BF4-9960-E1C80E27ABA0wrong 0E984725-C51C-4BF4-9960-E1C80E27ABA0
(1 row(s) affected)
Zobacz także
ZMIEŃ TABELĘ (Transact-SQL)
RZUTOWANIE i konwertowanie (Transact-SQL)
CREATE TABLE (Transact-SQL)
typy danych (Transact-SQL)
DECLARE @local_variable (Transact-SQL)
NEWID (Transact-SQL)
NEWSEQUENTIALID (Transact-SQL)
SET @local_variable (Transact-SQL)
Subskrypcje z możliwością aktualizacji na potrzeby replikacji transakcyjnej