如果我在创建表时没有将列标记为NULL,它是否被视为NULL?

时间:2014-03-18 08:03:02

标签: sql-server

如果我在创建表时没有将列标记为NULL,它是否被视为NULL?假设我忘了将null或not null放入像MasterCustomerAddress Column这样的特定列中。它是自动标记为NULL吗?

IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[ODSMasterCustomer]') AND type in (N'U'))
    DROP TABLE [ODSMasterCustomer]
    Go
    Create Table ODSMasterCustomer 
    (MasterCustomerID int NOT NULL identity PRIMARY KEY, 
    MasterCustomerName nvarchar(160)NULL, 
    MasterCustomerNotes nvarchar(800)NULL,
    MasterCustomerAddress nvarchar(255),
    )

2 个答案:

答案 0 :(得分:3)

默认情况下,对于构成PRIMARY KEY的列,外,所有列都可以为空。由于主键不允许空值,因此参与主键的所有列都会自动标记为NOT NULL

答案 1 :(得分:0)

如果空值为空,则默认为空。