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

vi phạm chỉ mục duy nhất trong quá trình cập nhật

Các chỉ mục duy nhất được đánh giá trên mỗi hàng chứ không phải trên mỗi câu lệnh (ví dụ:khác với cách triển khai của Oracle)

Giải pháp cho vấn đề này là sử dụng một ràng buộc duy nhất có thể được hoãn lại và do đó được đánh giá khi kết thúc giao dịch.

Vì vậy, thay vào đó của chỉ mục duy nhất, xác định một ràng buộc:

alter table test add constraint test_idx_pos unique (pos)
  deferrable initially deferred;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Django + Postgres:giao dịch hiện tại bị hủy bỏ, các lệnh bị bỏ qua cho đến khi kết thúc khối giao dịch

  2. Thực hiện WHERE IN trên nhiều cột trong Postgresql

  3. PostgreSQL với vấn đề nhà phát triển SQL

  4. Làm cách nào để thực hiện truy vấn PostgreSQL với mệnh đề where-in chứa nhiều cột theo chương trình?

  5. Cho phép truy cập Postgresql từ bất kỳ máy tính nào