2011-10-10 94 views
0

有誰知道是否有可能創建一個UDDT是像這樣在SQL Server 2008用戶定義的數據類型:創建基於INT IDENTITY(#,#)

CREATE TYPE dbo.TID FROM int NOT NULL IDENTITY(1,1) 

的身份,然後一切(1,1)是合法的,並且會生成一個新的UDDT。但是,我需要在定義UDDT和定義表格期間自動設置IDENTITY。有時,如果我們決定從INT IDENTITY(#,#)更改爲UNIQUEIDENTIFIER,我只想在一個地方更改它。我不覺得它很有趣,通過表格修改從一種類型到另一種類型,特別是因爲會有很多表格。

問候,

Huske

回答

1

這是不可能的。看看CREATE TYPE。身份不是數據類型的一部分。它是列定義的一部分。

+0

我在看'CREATE TYPE',暗暗希望這樣的事情是可能的。不管怎麼說,還是要謝謝你。 –

1

號身份屬性附加表中也一樣,不只列

你可能不覺得有趣,但是這是SQL如何工作

  • 並非所有的表都需要一個代理鍵
  • 一些表需要TINYINT或SMALLINT或BIGINT
  • 如果需要唯一標識符,現在使用它(並採取聚集索引命中)
  • 你有一個實際的現在需要