按一下以給予評分及指教
TechNet
SQL Server
SQL Server 2008
Database Engine
技術參考
 NEWID (Transact-SQL)

  開啟低頻寬檢視
社群內容
本節內容
數據 註解 (0)
全部折疊/全部展開 全部折疊
其他版本也適用於下列軟體:
SQL Server 2008 線上叢書 (2009 年 7 月)
NEWID (Transact-SQL)

建立 uniqueidentifier 類型的唯一值。

主題連結圖示 Transact-SQL 語法慣例

NEWID ( )

uniqueidentifier

A. 搭配變數使用 NEWID 函數

下列範例會利用 NEWID(),將值指派給宣告為 uniqueidentifier 資料類型的變數。uniqueidentifier 資料類型變數的值會列印在所測試值的前面。

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

以下為結果集:

Value of @myid is: 6F9619FF-8B86-D011-B42D-00C04FC964FF
ms190348.note(zh-tw,SQL.100).gif附註:
NEWID 傳回的值,每部電腦都不相同。顯示這個數字,只是為了說明。

B. 在 CREATE TABLE 陳述式中使用 NEWID

下列範例會建立 uniqueidentifier 資料類型的 cust 資料表,且利用 NEWID 在資料表中填入預設值。在指派 NEWID() 的預設值時,每個新的資料列和現有的資料列,都有唯一的 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. 使用 uniqueidentifier 和變數指派

下列範例將稱為 @myid 的本機變數宣告成 uniqueidentifier 資料類型的變數。之後,再利用 SET 陳述式來指派變數值。

DECLARE @myid uniqueidentifier 
SET @myid = 'A972C577-DFB0-064E-1189-0154C99310DAAC12'
GO
社群內容   什麼是社群內容?
新增內容 RSS  註解
Processing
© 2009 Microsoft Corporation. 著作權所有,並保留一切權利。 使用規定 | 商標 | 隱私權聲明
Page view tracker