SQL 服务器 FK 和约束
SQL SERVER FK and Constraint
我正在使用 SQL SERVER 2000,我有创建 table 的代码。我的 table 有外键,我想添加一个约束。
我的问题是:我必须定义约束和外键吗?还是其中一个就够了?
CREATE TABLE controls
(
id INT IDENTITY(1,1) PRIMARY KEY,
description VARCHAR(2000),
date DATETIME,
result VARCHAR(255),
clients_id INT FOREIGN KEY REFERENCES clients(id),
profesionals_id INT FOREIGN KEY REFERENCES profesionals(id),
CONSTRAINT FK_CLIENTS FOREIGN KEY (clients_id) REFERENCES clients(id)
);
最后2行,FK定义和Constraint,是不是多余?
最后一行
CONSTRAINT FK_CLIENTS FOREIGN KEY (clients_id) REFERENCES clients(id)
等同于client_ids
:
之后的内联定义
FOREIGN KEY REFERENCES clients(id)
应删除两者之一。
我正在使用 SQL SERVER 2000,我有创建 table 的代码。我的 table 有外键,我想添加一个约束。 我的问题是:我必须定义约束和外键吗?还是其中一个就够了?
CREATE TABLE controls
(
id INT IDENTITY(1,1) PRIMARY KEY,
description VARCHAR(2000),
date DATETIME,
result VARCHAR(255),
clients_id INT FOREIGN KEY REFERENCES clients(id),
profesionals_id INT FOREIGN KEY REFERENCES profesionals(id),
CONSTRAINT FK_CLIENTS FOREIGN KEY (clients_id) REFERENCES clients(id)
);
最后2行,FK定义和Constraint,是不是多余?
最后一行
CONSTRAINT FK_CLIENTS FOREIGN KEY (clients_id) REFERENCES clients(id)
等同于client_ids
:
FOREIGN KEY REFERENCES clients(id)
应删除两者之一。