19 lines
748 B
SQL
19 lines
748 B
SQL
-- 002: Добавить значение RESTORE в CHECK-констрейнт audit_log.action
|
|
-- Дата: 2026-06 (до этого CHECK допускал только CREATE, UPDATE, DELETE)
|
|
|
|
-- Сначала удаляем старый CHECK, потом создаём новый со значением RESTORE
|
|
DO $$
|
|
DECLARE
|
|
cn text;
|
|
BEGIN
|
|
SELECT con.conname INTO cn
|
|
FROM pg_constraint con
|
|
JOIN pg_class rel ON rel.oid = con.conrelid
|
|
WHERE rel.relname = 'audit_log' AND con.contype = 'c';
|
|
IF cn IS NOT NULL THEN
|
|
EXECUTE 'ALTER TABLE audit_log DROP CONSTRAINT ' || cn;
|
|
END IF;
|
|
EXECUTE 'ALTER TABLE audit_log ADD CONSTRAINT audit_log_action_check CHECK (action IN (''CREATE'',''UPDATE'',''DELETE'',''RESTORE''))';
|
|
END;
|
|
$$;
|