主键约束

Mir*_*vec 4 sql-server constraints primary-key

这两个创建表格片段之间有区别吗?一个包含CONSTRAINT关键字,另一个不包含.

CREATE TABLE [dbo].[Person](
    [ID] [bigint] NOT NULL,
    [Name] [varchar](255) NOT NULL,
PRIMARY KEY CLUSTERED ([ID] ASC))


CREATE TABLE [dbo].[Person](
    [ID] [bigint] NOT NULL,
    [Name] [varchar](255) NOT NULL,
CONSTRAINT [PK_Person] PRIMARY KEY CLUSTERED ([ID] ASC))
Run Code Online (Sandbox Code Playgroud)

我有一个数据库,表格以两种方式定义,我想知道我是否应该对此做些什么.

San*_*ddy 8

除了约束的命名之外没有区别.如果您没有指定一个,SQL Server将为您创建一个,但约束的名称不容易识别.

我更愿意为我的所有数据库对象提供良好的命名约定,而不是依赖于SQL Engine生成的名称.