我有這樣最初創建一個表:是否有理由在可空列上指定DEFAULT(NULL)?
CREATE TABLE dbo.XX (
YY int DEFAULT(NULL)
)
如果你這樣做,然後腳本後在桌子上,你會得到下面的代碼,再加上一個隨機命名的默認約束:
CREATE TABLE [dbo].XX([YY] [int] NULL)
GO
ALTER TABLE [dbo].XX ADD DEFAULT (NULL) FOR [YY]
GO
現在有沒有什麼真正的要點在列上指定DEFAULT (NULL)
而不是僅僅把它作爲[YY] [int] NULL
放在第一位呢?
在我熟悉的任何數據庫中沒有任何一點。 –
第二個想法是,雖然它不會改變數據的添加方式,但我猜它可能被認爲是設計意圖的表達式(「我打算將此列添加爲NULL,我並沒有忘記設置一個默認的「),這使得數據庫的設計更清晰,讓下一個人前來。 –
下一個(相關)的問題:在列中指定NULL是否有任何缺點,而不是首先將其保留爲[[yy] [INTEGER]]? – onedaywhen