MySQL Workbench
 sql >> Cơ Sở Dữ Liệu >  >> Database Tools >> MySQL Workbench

Errno 121, trùng lặp khóa khi ghi hoặc cập nhật?

Điều này có thể do bạn đã đặt tên cho ít nhất một ràng buộc có cùng số nhận dạng như một cột:

/* You already have a column named `restaurant` in this table, 
   but are naming the FK CONSTRAINT `restaurant` also... */
CONSTRAINT `restaurant`
    FOREIGN KEY (`restaurant` )
    REFERENCES `mydb`.`restaurants` (`id` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)

Nên sử dụng một số nhận dạng khác cho ràng buộc như fk_restaurant như trong:

CONSTRAINT `fk_restaurant`
    FOREIGN KEY (`restaurant` )
    REFERENCES `mydb`.`restaurants` (`id` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)

Và điều tương tự trong food bảng:

  /* Name it fk_food */
  CONSTRAINT `fk_food`
    FOREIGN KEY (`food` )
    REFERENCES `mydb`.`food` (`id` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  /* Name it fk_restaurant */
  CONSTRAINT `fk_restaurant`
    FOREIGN KEY (`restaurant` )
    REFERENCES `mydb`.`restaurants` (`id` )
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)

Đó là ba cái duy nhất tôi nhìn thấy, nhưng có thể có những cái khác mà tôi đã bỏ lỡ.



  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. Cách thực hiện FIO phát lại một dấu vết với nhiều chuỗi

  2. MySQL Workbench tự động hoàn thành có hoạt động không?

  3. iAd không hiển thị quảng cáo trong trò chơi được chấp thuận của tôi

  4. Gặp lỗi kích thước heap java khi cố gắng phân cụm tài liệu 15980 qua cà rốt2workbench

  5. Errno 121, trùng lặp khóa khi ghi hoặc cập nhật?