NEWID (Transact-SQL)

Crea un valore univoco di tipo uniqueidentifier.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

NEWID ( )

Tipi restituiti

uniqueidentifier

Esempi

A. Utilizzo della funzione NEWID con una variabile

Nell'esempio seguente viene utilizzata NEWID() per assegnare un valore a una variabile dichiarata con il tipo di dati uniqueidentifier. Il valore della variabile di tipo uniqueidentifier viene stampato prima di essere verificato.

-- Creating a local variable with DECLARE/SET syntax.
DECLARE @myid uniqueidentifier
SET @myid = NEWID()
PRINT 'Value of @myid is: '+ CONVERT(varchar(255), @myid)

Set di risultati:

Value of @myid is: 6F9619FF-8B86-D011-B42D-00C04FC964FF

[!NOTA]

Il valore restituito da NEWID è diverso in ogni computer. Il valore riportato è solo a scopo illustrativo.

B. Utilizzo di NEWID in un'istruzione CREATE TABLE

Nell'esempio seguente viene creata una tabella cust con tipo di dati uniqueidentifier e viene utilizzata NEWID per riempire la tabella con un valore predefinito. Quando si assegna il valore predefinito con NEWID(), tutte le righe, esistenti e nuove, contengono un valore univoco nella colonna CustomerID.

-- Creating a table using NEWID for uniqueidentifier data type.
CREATE TABLE cust
(
 CustomerID uniqueidentifier NOT NULL
   DEFAULT newid(),
 Company varchar(30) NOT NULL,
 ContactName varchar(60) NOT NULL, 
 Address varchar(30) NOT NULL, 
 City varchar(30) NOT NULL,
 StateProvince varchar(10) NULL,
 PostalCode varchar(10) NOT NULL, 
 CountryRegion varchar(20) NOT NULL, 
 Telephone varchar(15) NOT NULL,
 Fax varchar(15) NULL
)
GO
-- Inserting data into cust table.
INSERT cust
(CustomerID, Company, ContactName, Address, City, StateProvince, 
 PostalCode, CountryRegion, Telephone, Fax)
VALUES
(NEWID(), 'Wartian Herkku', 'Pirkko Koskitalo', 'Torikatu 38', 'Oulu', NULL,
 '90110', 'Finland', '981-443655', '981-443655')
INSERT cust
(CustomerID, Company, ContactName, Address, City, StateProvince,
PostalCode, CountryRegion, Telephone, Fax)
VALUES 
(NEWID(), 'Wellington Importadora', 'Paula Parente', 'Rua do Mercado, 12', 'Resende', 'SP',
 '08737-363', 'Brasil', '(14) 555-8122', '')
INSERT cust
(CustomerID, Company, ContactName, Address, City, StateProvince,
 PostalCode, CountryRegion, Telephone, Fax)
VALUES
(NEWID(), 'Cactus Comidas para Ilevar', 'Patricio Simpson', 'Cerrito 333', 'Buenos Aires', NULL, 
 '1010', 'Argentina', '(1) 135-5555', '(1) 135-4892')
INSERT cust
(CustomerID, Company, ContactName, Address, City, StateProvince,
 PostalCode, CountryRegion, Telephone, Fax)
VALUES 
(NEWID(), 'Ernst Handel', 'Roland Mendel', 'Kirchgasse 6', 'Graz', NULL,
 '8010', 'Austria', '7675-3425', '7675-3426')
INSERT cust
(CustomerID, Company, ContactName, Address, City, StateProvince,
 PostalCode, CountryRegion, Telephone, Fax)
VALUES 
(NEWID(), 'Maison Dewey', 'Catherine Dewey', 'Rue Joseph-Bens 532', 'Bruxelles', NULL,
 'B-1180', 'Belgium', '(02) 201 24 67', '(02) 201 24 68')
GO

C. Utilizzo dell'assegnazione di variabili e del tipo uniqueidentifier

Nell'esempio seguente viene dichiarata una variabile locale denominata @myid come variabile di tipo uniqueidentifier. Alla variabile viene quindi assegnato un valore mediante l'istruzione SET.

DECLARE @myid uniqueidentifier 
SET @myid = 'A972C577-DFB0-064E-1189-0154C99310DAAC12'
GO