SQL Server 2008 July CTP 版安裝需注意:不可與 SQL Server 2000 共存,升級舊 CTP 需先解除安裝。安裝介面較 2005 簡潔流暢。本文重點介紹 CTP 版引入的新資料類型:DATE、TIME、HIERARCHYID。
舊版需以 DATETIME 儲存完整日期時間,再用轉換函數剝離;新類型可直接獨立儲存,使用方式與 DATETIME 相似。
DECLARE @Dt AS DATE, @Tm AS TIME
SET @Dt = GETDATE()
SET @Tm = GETDATE()
SELECT @Dt, @Tm
CREATE TABLE dbo.Table_1
(
RecordID INT NOT NULL,
DateAdded DATE NULL,
DataValue NVARCHAR(MAX) NULL
) ON [PRIMARY]
ALTER TABLE dbo.Table_1 ADD CONSTRAINT
DF_Table_1_DateAdded DEFAULT GETDATE() FOR DateAdded
INSERT INTO Table_1 (RecordID, DataValue) VALUES (1, 'test')
SELECT * FROM Table_1
INSERT INTO Table_1 (RecordID, DateAdded, DataValue)
VALUES (1, GETDATE(), 'test')
範例 2 與 3 執行結果相同,DateAdded 僅保留日期部分。
HIERARCHYID 為系統資料類型,專為樹狀結構(組織架構、檔案目錄、BOM 等)設計,支援高效的祖先/子孫查詢、節點移動與排序,將在後續文章詳細介紹。
新資料類型大幅提升日期時間建模彈性與儲存效率,HIERARCHYID 則為階層資料查詢帶來原生效能優勢,值得在新專案中優先採用。