Sql server 如何为默认约束指定列名?

Sql server 如何为默认约束指定列名?,sql-server,Sql Server,我知道我可以这样内联指定它: CREATE TABLE dbo.MyTable ( Id INT NOT NULL CONSTRAINT PK_MyTable_Id PRIMARY KEY IDENTITY, Created DATETIME NOT NULL CONSTRAINT DF_MyTable_Created DEFAULT GETDATE() ) 但我想将所有约束放在表定义的末尾,以使它们分开。如果将默认约束列放在表定义的末尾,我似乎无法找到如何命名该列。我可以使用

我知道我可以这样内联指定它:

CREATE TABLE dbo.MyTable
(
    Id INT NOT NULL CONSTRAINT PK_MyTable_Id PRIMARY KEY IDENTITY,
    Created DATETIME NOT NULL CONSTRAINT DF_MyTable_Created DEFAULT GETDATE()
)
但我想将所有约束放在表定义的末尾,以使它们分开。如果将默认约束列放在表定义的末尾,我似乎无法找到如何命名该列。我可以使用主键/外键和唯一约束来完成,但不知道如何使用默认约束指定列名

CREATE TABLE dbo.MyTable
(
    Id INT NOT NULL IDENTITY,
    Created DATETIME NOT NULL,
    CONSTRAINT PK_MyTable_Id PRIMARY KEY( Id ),
    CONSTRAINT DF_MyTable_Created DEFAULT GETDATE()
)

使用ALTER TABLE ADD将其分开。。。。。语法

像这样

CREATE TABLE dbo.MyTable
(
    Id INT NOT NULL IDENTITY,
    Created DATETIME NOT NULL

)
GO

ALTER TABLE dbo.MyTable ADD CONSTRAINT PK_MyTable_Id PRIMARY KEY( Id ),
CONSTRAINT DF_MyTable_Created DEFAULT GETDATE() FOR Created
GO

我宁愿做内联操作,而不是修改表。在这种情况下,你必须做你的第一个选择我认为默认约束是不可能的?