【发布时间】:2010-12-21 12:25:36
【问题描述】:
在 MSSQL 中有一种方法可以为 PK 约束指定名称,这样 MSSQL 就不会像这样提供随机生成的 PK 名称:
PK__Addresse__3214EC074E88ABD4
我现在看到的唯一方法是首先创建表,然后发出 ALTER 命令来重命名 PK。如果我能一口气做到这一点会更容易。
【问题讨论】:
标签: sql-server primary-key constraints create-table
在 MSSQL 中有一种方法可以为 PK 约束指定名称,这样 MSSQL 就不会像这样提供随机生成的 PK 名称:
PK__Addresse__3214EC074E88ABD4
我现在看到的唯一方法是首先创建表,然后发出 ALTER 命令来重命名 PK。如果我能一口气做到这一点会更容易。
【问题讨论】:
标签: sql-server primary-key constraints create-table
是的。这是 SSMS 生成的语法:
CREATE TABLE [Address] (
[ID] [int] IDENTITY(1,1) NOT NULL,
<< columns here >>,
CONSTRAINT [PK_Address] PRIMARY KEY CLUSTERED ([ID] ASC)
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
【讨论】:
创建表时
CREATE TABLE MyTable
(
Id INT NOT NULL
CONSTRAINT PK_MyTable PRIMARY KEY (Id)
)
如果您需要更改表格并添加主要约束
ALTER TABLE MyTable
ADD CONSTRAINT PK_MyTable PRIMARY KEY (Id)
希望对你有帮助
【讨论】: