PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Как да предотвратим изтриването на първия ред в таблицата (PostgreSQL)?

Бяхте прав, като мислехте за системата от правила. Ето линк към пример, отговарящ на вашия проблем. Дори е по-просто от тригерите:

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;

Някои отговори пропускат една точка:също така актуализирането на защитения ред трябва да бъде ограничено. В противен случай човек може първо да актуализира защитения ред, така че той вече да не отговаря на критерия за забранено изтриване, а след това може да изтрие актуализирания ред, тъй като вече не е защитен.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как Mod() работи в PostgreSQL

  2. Postgres Alter Column Integer на Boolean

  3. Инсталиране на Postgres на Windows за използване с Ruby-on-Rails

  4. Инсталирайте PostgreSQL на Ubuntu 18.04

  5. Каква е причината за грешката Повече не се разпознава... при стартиране на Postgresql 11 на машина с Windows?