Saya telah membuat tabel seperti di bawah ini di Shell:

create table Employees (Emp_ID int not null primary key, Emp_Name varchar(20), Hours_Logged int);
Query OK, 0 rows affected (0.11 sec)
mysql-sql> insert into Employees (Emp_ID,Emp_Name,Hours_Logged) values 
(123,'***',9);
Query OK, 1 row affected (0.01 sec)
mysql-sql> insert into Employees (Emp_ID,Emp_Name,Hours_Logged) values 
(456,'***',8);
Query OK, 1 row affected (0.01 sec)
mysql-sql> insert into Employees (Emp_ID,Emp_Name,Hours_Logged) values 
(789,'**',10);
Query OK, 1 row affected (0.02 sec)
mysql-sql> insert into Employees (Emp_ID,Emp_Name,Hours_Logged) values 
(345,'***',10);
Query OK, 1 row affected (0.02 sec)

Dan kemudian saya mencoba membuat kunci asing

mysql-sql> create table Project (
    Project_ID int not null primary key, 
    Project_Name varchar(20), 
    Project_Manager varchar(20), 
    CostPerHour int, 
    Minimum_LoggedinHours int,
    foreign key(Minimum_LoggedinHours) references Employees(Hours_Logged)
);

Dan berakhir dengan kesalahan di bawah ini.

ERROR: 1215 (HY000): Cannot add foreign key constraint

Adakah yang bisa membantu saya dengan apa yang akan menjadi yang benar?

0
Dinesh Kumar 19 September 2019, 18:27

1 menjawab

Jawaban Terbaik

Kunci asing harus mereferensikan bidang unik, apa yang bisa Anda lakukan ini

foreign key(Minimum_LoggedinHours) references Employees(Emp_ID)

Dan perintah Shell Anda seharusnya berfungsi!

0
MathieuAuclair 19 September 2019, 15:39