Tengo una pequeña tabla (~ 10 filas) llamada restrictionsen mi base de datos PostgreSQL, donde los valores se eliminan e insertan a diario.
Me gustaría tener una tabla llamada restrictions_deleted, donde cada fila que se elimina restrictionsse almacenará automáticamente. Como restrictionstiene una identificación en serie, no habrá duplicados.
¿Cómo escribo tal desencadenante en PostgreSQL?
postgresql
trigger
delete
plpgsql
Adam Matan
fuente
fuente

VALUES((OLD).*)create functiondebe llamarse antescreate trigger. Y elVALUES((OLD).*)truco sugerido por KayEss es bueno.Si está abierto a un enfoque diferente, ¿Ha considerado agregar un indicador booleano 'eliminado' a la tabla o una marca de tiempo 'deleted_at' en su lugar?
O mejor aún, niegue el acceso CRUD a las tablas de su base de datos y maneje el seguimiento de auditoría en su API transaccional :)
fuente