• 締切済み

SymfoWareでトリガの作成

SymfoWareでトリガを作成したいと思います。 CREATE TRIGGER トリガ名 AFTER INSERT ON 表1 REFERENCING NEW AS NEWREC FOR EACH ROW WHEN(条件)        INSERT INTO 表2 VALUES(NEWREC.項目名, NEWREC.項目名,…) となりますが、 WHENの条件に表1以外の表の値を持ってくることは できるのでしょうか? それから、表2にINSERTするVALUEの値も、表1以外のテーブル の値を取ってくることは可能でしょうか? よろしくお願いします。

みんなの回答

回答No.2

前の方の回答方法ではダメな場合はプロシジャを呼び出すようにして、回避したことあります。

  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

条件に関しては、副問い合わせを使えば、こんな感じで出来そうな気がしますが・・・ WHEN(NEWREC.A IN(SELECT A FROM 表3)) 別のレコードの追加はこんな感じになると思います。 INSERT INTO 表2 select 表4.A, 表4.B, NEWREC.項目名1 from 表4 where 表4.A = NEWREC.項目名2 Symfoないので確認できません。すみません。

naonaonaona
質問者

お礼

回答ありがとうございました。 INSERT文、早速試してみます♪ 条件の方に関しては、Symfoの制約上、副問合せの指定が出来ないようなんです。 Symfoでは厳しいのかな…

関連するQ&A