【发布时间】:2011-11-11 16:17:22
【问题描述】:
在下面的表定义中,这两个列定义有什么区别,还是说第二个只是创建了一个自动命名的外键索引?
CREATE TABLE dbo.Employee
(
dept_id int NOT NULL
CONSTRAINT fk_employee_deptid FOREIGN KEY REFERENCES Department(dept_id),
empType_id int NOT NULL REFERENCES EmployeeType(empType_id)
/* ... other columns ... */
);
【问题讨论】:
-
请注意,虽然外键约束可以帮助优化器,但在技术上它不是索引。
-
在 SQL Server 中没有为外键自动生成没有索引 - 没有,从不。见:Does a foreign key automatically create an index?
-
感谢您对索引的澄清。
标签: sql sql-server foreign-keys create-table