Lý do tại sao bạn nhận được ngoại lệ đó là vì bạn đang chèn một bản ghi trên bảng test_usershosts
giá trị của userID
không có trên bảng test_users
. Giống với giá trị của hid
cũng không có trên bảng test_hosts
.
Bảng test_usershosts
phụ thuộc vào các bảng:test_users
và test_hosts
. Vì vậy, hãy chắc chắn rằng khi chèn bản ghi trên bảng test_usershosts
, các giá trị cho hid
và userid
đã tồn tại trên các bảng mẹ:test_users
và test_hosts
.
Hãy thử thực hiện truy vấn này và chắc chắn nó sẽ được chèn.
INSERT INTO test_usershosts (RID,userid,hid,Usr,Pass)
VALUES (NULL,1120,30,'user','pass');
Tôi thấy rằng AUTO_INCREMENT
tùy chọn trên bảng:test_users
và test_hosts
, không cần thiết vì bạn đang cung cấp các giá trị trên mọi truy vấn mà bạn đang thực hiện trên hai bảng.