[pgsql-jp: 32935] Re: 一時的にトリガを無効化できないか?
Akinori FUJII
showten24 @ yahoo.co.jp
2004年 5月 14日 (金) 16:11:03 JST
藤井です。
私もトリガの一時無効化についてコマンドを探したことがあります。
現在は、以下のコマンドを使用しています。
-- Disable triggers
UPDATE pg_catalog.pg_class SET reltriggers = 0 WHERE oid =
'table_name'::pg_catalog.regclass;
-- Enable triggers
UPDATE pg_catalog.pg_class SET reltriggers = (SELECT pg_catalog.count(*) FROM
pg_catalog.pg_trigger where pg_class.oid = tgrelid) WHERE oid =
'table_name'::pg_catalog.regclass;
このSQLは以下のコマンドで出力される内容から見つけました。
pg_dump -a -X disable-triggers [DBNAME]
pgsql-jp メーリングリストの案内