3 回答

TA貢獻1836條經驗 獲得超3個贊
您可能應該在 Address 表中的 addressid 上添加一個主鍵,這將創建所需的索引。在您當前的腳本中,不能保證 addressid 是唯一的,因此如果有重復,外鍵永遠無法確定要引用哪一行。
create table address(addressId int primary key not null, city varchar(10), pincode varchar(10));

TA貢獻1854條經驗 獲得超8個贊
您需要在地址表中添加主鍵約束,以便在員工表中添加外鍵引用
嘗試使用以下代碼:
create table address(addressid int primary key not null,city varchar(10),pincode varchar(10));
insert into address(addressid,city,pincode) values(201,'Hosur',635109);
create table employee(empid int , firstname varchar(20),lastname varchar(20),department varchar(10),emailAddress varchar(50),baseLocation varchar(20),address int,FOREIGN KEY (address) REFERENCES address(addressid));

TA貢獻1804條經驗 獲得超7個贊
因為外鍵引用主鍵。您在表地址中沒有主鍵。
像這樣,
create table address(addressid int primary key,city varchar(10),pincode varchar(10));
create table employee(empid int , firstname varchar(20),lastname varchar(20),department varchar(10),emailAddress varchar(50),baseLocation varchar(20),address int ,FOREIGN KEY (address) REFERENCES address(addressid));
insert into address(addressid,city,pincode) values(201,'Hosur',635109);
添加回答
舉報