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

lỗi psql để khôi phục sao lưu pgsl trên cmd

Như joop đã giải thích, tệp SQL của bạn không nhất quán.

Có một ràng buộc khóa ngoại từ raffle.user_id thành "user".id , có nghĩa là đối với mọi giá trị trong raffle.user_id phải có một hàng trong "user" ở đâu id có cùng giá trị.

Bây giờ không có hàng nào được chèn vào "user" với một id bằng 1, nhưng tập lệnh cố gắng chèn một hàng trong raffle với user_id bằng 1.

Điều đó vi phạm ràng buộc khóa ngoại và gây ra lỗi. Khi đã xảy ra lỗi trong giao dịch PostgreSQL, tất cả những gì bạn có thể làm là ROLLBACK . Cho đến khi bạn làm điều đó, tất cả các câu lệnh trong giao dịch sẽ không thành công với lỗi bạn quan sát thấy.

Các giải pháp duy nhất bạn có là sửa dữ liệu để chúng nhất quán hoặc loại bỏ tính nhất quán bằng cách loại bỏ ràng buộc khóa ngoại.

Ghi chú: Bạn nên chọn một từ khóa SQL dành riêng như USER như tên.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bạn có thể tạo chỉ mục trong định nghĩa TẠO BẢNG không?

  2. Tại sao trong PostgreSQL enum loại giá trị null mảng được phép?

  3. không cho phép thực thi root máy chủ PostgreSQL

  4. Duy trì múi giờ ở loại timestamptz PostgreSQL

  5. Làm thế nào để tạo bảng cây mà không có mối quan hệ tuần hoàn?