Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Database SQL di Azure
Istanza gestita di SQL di Azure
Azure Synapse Analytics
Piattaforma di analisi (PDW)
Endpoint di analisi SQL in Microsoft Fabric
Magazzino in Microsoft Fabric
Database SQL in Microsoft Fabric
GUID a 16 byte.
Remarks
È possibile inizializzare una colonna o variabile locale di tipo uniqueidentifier su un valore specifico nei modi seguenti:
- Usando le funzioni NEWID o NEWSEQUENTIALID.
- Tramite la conversione da una costante stringa nel formato xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, in cui ogni x rappresenta una cifra esadecimale compresa nell'intervallo 0-9 oppure a-f. Ad esempio, 6F9619FF-8B86-D011-B42D-00C04FC964FF è un valore uniqueidentifier valido.
Con i valori uniqueidentifier è possibile usare gli operatori di confronto. Quando si confrontano gli schemi di bit dei due valori, tuttavia, l'ordinamento non viene implementato. Le uniche operazioni che è possibile eseguire su un valore uniqueidentifier sono i confronti (=, <>, <, >, <=, >=) e il controllo della presenza di valori NULL (IS NULL e IS NOT NULL). Non è possibile utilizzare altri operatori aritmetici. Con il tipo di dati uniqueidentifier è possibile usare tutti i vincoli e le proprietà delle colonne, ad eccezione di IDENTITY.
Le colonne uniqueidentifier vengono usate nella replica transazionale e di tipo merge con sottoscrizioni aggiornabili, per garantire che le righe siano identificate in modo univoco in più copie della tabella.
Conversione del tipo di dati uniqueidentifier
Per la conversione da un'espressione di caratteri, il tipo uniqueidentifier è considerato un tipo di dati carattere ed è pertanto soggetto alle regole di troncamento per la conversione in un tipo di dati carattere. Vale a dire che, se un'espressione di caratteri viene convertita in un tipo di dati carattere di dimensioni diverse, i valori troppo lunghi per il nuovo tipo di dati vengono troncati. Vedere la sezione relativa agli esempi.
Limitazioni e restrizioni
I seguenti strumenti e funzionalità non supportano il tipo di dati uniqueidentifier:
- PolyBase
- Strumento di caricamento dwloader per Parallel Data Warehouse
Examples
Nell'esempio seguente un valore uniqueidentifier viene convertito in un tipo di dati char.
DECLARE @myid uniqueidentifier = NEWID();
SELECT CONVERT(CHAR(255), @myid) AS 'char';
Nell'esempio seguente viene illustrato il troncamento dei dati quando il valore è troppo lungo per il tipo di dati in cui avviene la conversione. Poiché la lunghezza del tipo uniqueidentifier è limitata a 36 caratteri, i caratteri eccedenti vengono troncati.
DECLARE @ID NVARCHAR(max) = N'0E984725-C51C-4BF4-9960-E1C80E27ABA0wrong';
SELECT @ID, CONVERT(uniqueidentifier, @ID) AS TruncatedValue;
Il set di risultati è il seguente.
String TruncatedValue
-------------------------------------------- ------------------------------------
0E984725-C51C-4BF4-9960-E1C80E27ABA0wrong 0E984725-C51C-4BF4-9960-E1C80E27ABA0
(1 row(s) affected)
Vedere anche
ALTER TABLE (Transact-SQL)
CAST e CONVERT (Transact-SQL)
CREA TABELLA (Transact-SQL)
Tipi di dati (Transact-SQL)
DECLARE @local_variable (Transact-SQL)
NEWID (Transact-SQL)
NEWSEQUENTIALID (Transact-SQL)
SET @local_variable (Transact-SQL)
Sottoscrizioni modificabili per la replica transazionale