使用主键创建表的两种方法...这是最佳实践(SQLSERVER 2014)

时间:2015-11-16 10:34:51

标签: sql-server

以下三个脚本是否有任何区别,哪个是最佳做法?

CREATE TABLE Test1 (
  TestID INT IDENTITY(1,1) NOT NULL,
  Description NVARCHAR(50) NOT NULL,
CONSTRAINT [PK_AnyNameIFancy] PRIMARY KEY CLUSTERED
(
  TestID ASC
)
) ON PRIMARY;


CREATE TABLE Test1 (
  TestID INT NOT NULL PRIMARY KEY IDENTITY,
  Description NVARCHAR(50) NOT NULL) ON PRIMARY

1 个答案:

答案 0 :(得分:2)

唯一的区别是你在第一个中命名约束 - 这是一个非常好的做法。

他们最终都有一个聚集的唯一索引。

对于单列约束,我倾向于将其写在一行...

TestID INT NOT NULL IDENTITY CONSTRAINT PK_AnyNameIFancy PRIMARY KEY CLUSTERED