2016-11-05 26 views
1

我正在使用SQL Server 2014 Management Studio進行編程。如何定義一個屬性是可選的?

我想在我的程序中構建一個可選屬性。

E.g

CREATE TABLE [Picture] 
(
    Title VARCHAR(20), 
    Signature VARCHAR(20), <--- should be optional 
    Alttext VARCHAR(20) 
) 

回答

5

通常,它是通過缺省「任選的」 - 如果不提​​供用於Signature列數據,則其null的值。

但是,要明確指定這個(如果,例如,你的數據庫配置默認爲NOT NULL),簽名域可以表示爲這樣:

Signature VARCHAR(20) NULL

+1

@馬丁,好點。我會補充一些說明。 –

+0

所以當我添加「NULL」時,它表示該列的值爲NULL(因此沒有任何內容)?而對於Signature屬性來說,用戶首先輸入一些東西,對嗎?我的教授會提出問題,我只想確保我對我的命令的理解是正確的 – noclue123

+0

@ noclue123,「CREATE TABLE」DDL中的列定義指定列是否允許NULL值。最好的做法是明確指定NULL或NOT NULL以避免當前會話設置的不明確性。如果指定了NULL(ANSI默認值),則可以通過指定值NULL或通過從INSERT語句的列和值列表中省略列來顯式插入具有NULL值的新行。 NULL值通常表示UNKNOWN或不適用。 –

相關問題