簡體   English   中英

無法為表創建外鍵約束

[英]Unable to create foreign key constraint for a table

在此處輸入圖像描述我無法為表創建外鍵約束

無法創建外鍵約束

CREATE TABLE dept ( DNO INT NOT NULL primary key, 
DNAME varchar(15) not null, 
Location varchar(15) not null, 
NumEmp int not null,
Managers int not null, 
Foreign key (DNO) references employee (DNO) );

create table employee ( SSN CHAR(9) NOT NULL primary key, 
FNAME VARCHAR(15) NOT NULL,
MINIT VARCHAR(5), 
LNAME VARCHAR(15) NOT NULL, 
BDATE DATE, ADDRESS VARCHAR(30), 
SEX CHAR, SALARY DECIMAL(10,2), 
SUPERSSN CHAR(9), 
DNO INT NOT NULL )

您嘗試創建對不存在的表的外鍵引用(因為您首先創建了dept )。
這里真正的問題是foreign key應該放在表employee不是dept中:

CREATE TABLE dept ( 
  DNO INT NOT NULL primary key, 
  DNAME varchar(15) not null, 
  Location varchar(15) not null, 
  NumEmp int not null, 
  Managers int not null
);

CREATE TABLE employee ( 
  SSN CHAR(9) NOT NULL primary key, 
  FNAME VARCHAR(15) NOT NULL, 
  MINIT VARCHAR(5), 
  LNAME VARCHAR(15) NOT NULL, 
  BDATE DATE, 
  ADDRESS VARCHAR(30), 
  SEX CHAR, 
  SALARY DECIMAL(10,2), 
  SUPERSSN CHAR(9), 
  DNO INT NOT NULL,
  FOREIGN KEY (DNO) REFERENCES dept (DNO)
);

您只需要先創建員工表,然后創建部門表。 這會起作用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM