Add update trigger on department and state table

This commit is contained in:
Yorick Barbanneau 2022-05-03 00:50:12 +02:00
parent 3c5d5dfc07
commit 131ec5f070

View file

@ -244,4 +244,30 @@ if __name__ == '__main__':
) )
conn.commit() conn.commit()
t.stop() t.stop()
t.start('Add Modify Trigger')
with conn.cursor() as curs:
curs.execute("""
CREATE OR REPLACE FUNCTION %(schema)s.block_maj_reg_dep()
RETURNS TRIGGER AS $bloquage$
BEGIN
RAISE EXCEPTION
'Mise à jour non autorisé';
END;
$bloquage$ language plpgsql;
CREATE TRIGGER TRG_BLOQ_MAJ_REG
BEFORE INSERT OR UPDATE OR DELETE ON %(schema)s.region
FOR EACH ROW EXECUTE PROCEDURE %(schema)s.block_maj_reg_dep();
CREATE TRIGGER TRG_BLOQ_MAJ_DEP
BEFORE INSERT OR UPDATE OR DELETE ON %(schema)s.departement
FOR EACH ROW EXECUTE PROCEDURE %(schema)s.block_maj_reg_dep();
""",
{'schema':AsIs(args.schema_name)})
conn.commit()
t.stop()
conn.close() conn.close()