【发布时间】:2014-09-29 17:19:31
【问题描述】:
我是 SQL Server 的新手。
我想引用下面相同的表格列,
CREATE TABLE JOIN_DEPARTMENTS
(
DEPTID INT PRIMARY KEY,
DEPTNAME VARCHAR(20)
);
CREATE TABLE JOIN_EMPLOYEES
(
EMPID INT PRIMARY KEY,
EMPNAME VARCHAR(20),
MGRID INT,
DEPTID INT FOREIGN KEY REFERENCES JOIN_DEPARTMENTS(DEPTID),
CONSTRAINT FK_SELFREFE FOREIGN KEY (MGRID) REFERENCES EMPLOYEES(EMPID) ON DELETE SET NULL
);
INSERT INTO JOIN_DEPARTMENTS VALUES (100, 'BFS');
INSERT INTO JOIN_DEPARTMENTS VALUES (101, 'MELT');
INSERT INTO JOIN_EMPLOYEES VALUES(1, 'SARA', NULL, 100); --> inserts fine
INSERT INTO JOIN_EMPLOYEES VALUES(2, 'SANTHOSH', 1, 100); -->
抛出以下错误
消息 547,级别 16,状态 0,行 530
INSERT 语句与 FOREIGN KEY 约束“FK_SELFREFE”冲突。冲突发生在数据库“SARA”、表“dbo.EMPLOYEES”、列“EMPID”中。
我做错了什么,在这里?
【问题讨论】:
标签: sql sql-server self-join