主键约束

发布于 2024-11-01 21:42:34 字数 399 浏览 2 评论 0原文

这两个创建表片段之间有区别吗?一种包含 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))

我有一个数据库,其中的表以两种方式定义,我想知道是否应该对此做点什么。

Is there a difference between these two create table snippets? One includes CONSTRAINT keyword, other does not.

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))

I have a database with tables defined in both ways, I'm wondering if I should do something about it.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

初熏 2024-11-08 21:42:34

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

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

There is no difference apart from the naming of the constraint. If you don't specify one, SQL Server will create it one for you but the name of the constraint is NOT easily recognizable.

I would prefer to give all my database objects good naming conventions instead of relying on the SQL Engine generated names.

梦醒时光 2024-11-08 21:42:34

CONSTRAINT [PK_Person] 部分是可选的。您可以在此处了解更多相关信息;来自 MSDN 页面:

约束

是可选关键字,表示
PRIMARY KEY 的开头,NOT NULL,
唯一、外键或检查
约束定义。限制条件是
强制执行数据的特殊属性
完整性,他们可以创建索引
对于表及其列。

The CONSTRAINT [PK_Person] part is optional. You can read more about it here; from the MSDN page:

CONSTRAINT

Is an optional keyword indicating the
beginning of a PRIMARY KEY, NOT NULL,
UNIQUE, FOREIGN KEY, or CHECK
constraint definition. Constraints are
special properties that enforce data
integrity and they may create indexes
for the table and its columns.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文