在表创建期间指定PK名称

时间:2009-11-30 02:52:22

标签: sql-server primary-key constraints create-table

在MSSQL中有一种方法可以为PK约束指定一个名称,这样MSSQL就不会像这样提供随机生成的PK名称:

PK__Addresse__3214EC074E88ABD4

我现在唯一可以看到的方法是首先创建表,然后发出ALTER命令来重命名PK。如果我能一次性完成它会更容易。

2 个答案:

答案 0 :(得分:2)

是。这是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

答案 1 :(得分:1)

创建表时

CREATE TABLE MyTable
(
   Id INT NOT NULL      
   CONSTRAINT PK_MyTable PRIMARY KEY (Id)   
)

如果您需要更改表格并添加主要约束

ALTER TABLE  MyTable
ADD CONSTRAINT PK_MyTable PRIMARY KEY (Id)

希望这有帮助