- PR -

作成されたtriggerの内容は

投稿者投稿内容
yoshika
常連さん
会議室デビュー日: 2005/10/31
投稿数: 28
投稿日時: 2005-12-22 16:08
お世話になります。

PostgreSQLを使用しています。
テーブルにトリガが作成されているのですがcreate triggerをしたときの
コードが不明です。
トリガの名前から作成されたときの情報を知る手段はないのでしょうか?

どうぞよろしくお願いします。
PoH
常連さん
会議室デビュー日: 2003/09/09
投稿数: 48
投稿日時: 2005-12-26 11:17
PostgreSQLはまったく分からないのですが・・・

ORACLEならばUSER_TRIGGERSというVIEWがSYSにあります。
そのVIEWのDESCRIPTION(綴り間違ってるかも )と
TRIGGER_BODYを足したものがCREATE文になってきます

参考までに・・・
今川 美保(夏椰)
ぬし
会議室デビュー日: 2004/06/10
投稿数: 363
お住まい・勤務地: 神奈川県茅ヶ崎市
投稿日時: 2005-12-26 11:29
システムカタログの
pg_triggerなどからおっていけばみつかるのでは?

(後でつけたし)

・・・っと思ったらpg_adminで見れますね・・・ソースの中身が(^^;


[ メッセージ編集済み 編集者: 夏椰(冒 険 者) 編集日時 2005-12-26 11:37 ]
今川 美保(夏椰)
ぬし
会議室デビュー日: 2004/06/10
投稿数: 363
お住まい・勤務地: 神奈川県茅ヶ崎市
投稿日時: 2005-12-26 12:32
http://www.postgresql.jp/document/pg800doc/html/functions-info.html#FUNCTIONS-INFO-CATALOG-TABLE
こんな関数もあるみたいです。
yoshika
常連さん
会議室デビュー日: 2005/10/31
投稿数: 28
投稿日時: 2006-01-18 15:11
ご回答ありがとうございます。

システムカタログを使ってみようと調べたのですが
調べ方が悪いのか使い方がわかりません。。

pg_get_triggerdef(trigger_oid)
を使用すればよさそうなのですが
oidはどのようにしたら特定できるのでしょうか?
また、コマンドの具体的な利用方法を教えていただけませんでしょうか。


明智重蔵
大ベテラン
会議室デビュー日: 2005/09/05
投稿数: 127
投稿日時: 2006-01-18 15:22
windowsならnavicatを使えばソースが見れるかも

http://www.navicat.jp/
今川 美保(夏椰)
ぬし
会議室デビュー日: 2004/06/10
投稿数: 363
お住まい・勤務地: 神奈川県茅ヶ崎市
投稿日時: 2006-01-18 17:06
こんな感じで見れませんか?

コード:
select pg_get_triggerdef(oid) from pg_trigger ;

yoshika
常連さん
会議室デビュー日: 2005/10/31
投稿数: 28
投稿日時: 2006-01-26 09:55
ご回答ありがとうございます。

書いていませんでしたが残念ながらOSはLinuxです。

>select pg_get_triggerdef(oid) from pg_trigger ;

oid には何を指定したらよいのでしょうか?
select * from pg_trigger;
で検索された値を入れてみましたがどれもだめでした。

スキルアップ/キャリアアップ(JOB@IT)