が、私は、このようなトリガを作成するイベントトリガのために、例えばトリガーのステートメントを作成するどのテーブル店舗知っていただきたいと思いますか?または少なくとも部分的に。 information_schema.triggersには、通常のトリガーではなく、イベント・トリガーであるため、それを含んでいません。私は、例えば
Q
私は、例えば
2
A
答えて
0
サンプル:
et=# create or replace function event_trigger_begin() returns event_trigger as $$ begin raise info '%',99; end;$$ language plpgsql;
CREATE FUNCTION
Time: 27.611 ms
et=# CREATE EVENT TRIGGER tr_event_begin
ON ddl_command_start
EXECUTE PROCEDURE event_trigger_begin ();
CREATE EVENT TRIGGER
Time: 18.293 ms
et=# create table i (i int);
INFO: 99
CREATE TABLE
あなたが好きななめらか、event_triggersのDDLを生成するpg_catalog
関係を使用することができます。
et=# SELECT format('CREATE EVENT TRIGGER %I ON %s EXECUTE PROCEDURE %I()',evtname,evtevent,evtfoid::regproc) as ddl
FROM pg_event_trigger;
ddl
--------------------------------------------------------------------------------------------------
CREATE EVENT TRIGGER tr_event_begin ON ddl_command_start EXECUTE PROCEDURE event_trigger_begin()
(1 row)
、最後の定義を取得するための正しい方法を:
MacBook-Air:~ vao$ pg_dump -d et -s | tail -20
CREATE FUNCTION event_trigger_begin() RETURNS event_trigger
LANGUAGE plpgsql
AS $$ begin raise info '%',99; end;$$;
ALTER FUNCTION public.event_trigger_begin() OWNER TO vao;
--
-- Name: tr_event_begin; Type: EVENT TRIGGER; Schema: -; Owner: vao
--
CREATE EVENT TRIGGER tr_event_begin ON ddl_command_start
EXECUTE PROCEDURE public.event_trigger_begin();
もちろんdbnameはetではなく、tailは動作しません - 私はtruncatにjsutを使いましたe出力
+0
リクエストはSQL上でどのように見えるのか教えてください。 –
+0
優秀 - 多くのありがとう。そして、良い一日を! –
+0
@Викторご安心ください。回答があれば承認してください。 –
関連する問題
- 1. 私は例えばmysqlデータベース
- 2. は、私は例えばjQueryの
- 3. 私は例えば、パッケージ開発
- 4. Pythonのリスト、私は、例えば
- 5. は、例えば
- 6. は、例えば
- 7. は、例えば
- 8. Javaは:例えば
- 9. は、例えば、IIS
- 10. JMeterは例えば
- 11. JavaScriptは例えば
- 12. は、例えばメモリ
- 13. は、例えば、NULL
- 14. は、例えば行
- 15. は、例えばPHP
- 16. ソリューションは、例えば、
- 17. は、例えばPHP
- 18. は、例えば、XML
- 19. は、例えばパイソン
- 20. は、例えばパイソン
- 21. は、例えばワードシード
- 22. )が(例えば私の見解で
- 23. React.jsは、例えばは、dispatchEvent
- 24. 例えばLLVM
- 25. ?例えば
- 26. 例えば
- 27. 例えばジャバスクリプト
- 28. 例えば、
- 29. 例えば
- 30. 例えば、データベースクエリ
[PostgreSQLにトリガがあるかどうかをチェックする方法](https://stackoverflow.com/a/33174794/1995738) – klin
これは通常のトリガでは機能しますが、イベントトリガが必要です。 –
[PostgreSQLにトリガが存在するかどうかを確認する方法](https://stackoverflow.com/questions/33174638/how-to-check-if-trigger-exists-in-postgresql) – pegla