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

Làm cách nào để ngăn việc xóa hàng đầu tiên trong bảng (PostgreSQL)?

Bạn đã đúng khi nghĩ về hệ thống quy tắc. Đây là một liên kết đến một ví dụ phù hợp với vấn đề của bạn. Nó thậm chí còn đơn giản hơn các trình kích hoạt:

create rule protect_first_entry_update as
  on update to your_table
  where old.id = your_id
  do instead nothing;
create rule protect_first_entry_delete as
  on delete to your_table
  where old.id = your_id
  do instead nothing;

Một số câu trả lời thiếu một điểm:việc cập nhật hàng được bảo vệ cũng phải bị hạn chế. Nếu không, trước tiên người ta có thể cập nhật hàng được bảo vệ để nó không còn đáp ứng tiêu chí xóa bị cấm, và sau đó người ta có thể xóa hàng đã cập nhật vì nó không còn được bảo vệ nữa.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thay đổi nhóm bảo mật trên Phiên bản cơ sở dữ liệu AWS RDS

  2. Chuẩn hóa Unicode trong PostgreSQL 13

  3. Cơ chế sao chép vật lý trong PostgreSQL

  4. Sao chép cơ sở dữ liệu PostgreSQL sang một máy chủ khác

  5. Làm thế nào để chọn nhiều hơn 1 bản ghi mỗi ngày?