Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

lỗi thay đổi bảng, thêm ràng buộc khóa ngoại gặp lỗi Không thể thêm hoặc cập nhật hàng con

Bạn có ít nhất một giá trị dữ liệu trong answers.questions_id điều đó không xảy ra trong questions.id .

Đây là một ví dụ về ý tôi muốn nói:

mysql> create table a ( id int primary key);

mysql> create table b ( aid int );

mysql> insert into a values (123);

mysql> insert into b values (123), (456);

mysql> alter table b add foreign key (aid) references a(id);
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint 
fails (`test`.`#sql-3dab_e5c`, CONSTRAINT `#sql-3dab_e5c_ibfk_1` FOREIGN KEY
(`aid`) REFERENCES `a` (`id`))

Bạn có thể sử dụng điều này để xác nhận rằng có các giá trị chưa từng có:

SELECT COUNT(*)
FROM answers AS a
LEFT OUTER JOIN questions AS q ON a.questions_id = q.id
WHERE q.id IS NULL



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Các JOIN trong SQL tốn kém như thế nào? Và / hoặc, đánh đổi giữa hiệu suất và bình thường là gì?

  2. Rails:hiển thị hình ảnh từ trường đốm màu trong cơ sở dữ liệu

  3. Cách cài đặt phpMyAdmin trên các tài khoản lưu trữ được quản lý

  4. Mã hóa C # Mysql UTF8

  5. Thoát các truy vấn SQL thô trong Laravel 4