[pgsql-jp: 27947] Re: view/rule/insert
Jun Kitamura
kitamura @ zoozee.jp
2002年 11月 12日 (火) 14:45:14 JST
北村@zoozee です。
> 実際に作ってるものは、4つくらいの外部参照があって、
> それをviewにくるんでいるので、すべての外部参照先に対する
> 「あればselect、なければinsertしてselect」というのを、
> viewに対する一つのinsert(のdo〜句)ににおいて
> implicitに呼び出したいのですが。
>
> そーゆーときはこーやるもんだ、みたいなセオリーがありましたら、
> どなたかお教えくださると助かります。
>
> あと、質問の意味が分からなかったらご指摘いただけると幸いです。
チャチャっぽいんですが、我慢してください。:-)
そもそも、参照先にソレが無ければダメだ、という制約のために外
部参照キー付けてるんですよね?(やろうとしてることが矛盾して
ない?)
t1 の BEFORE トリガで、INSERT する前に c1 をチェックして、無
ければトリガ内で(c1に) INSERT をしてしまえば良いのでは?
これなら、外部参照制約をつけたままでも OK かもしれません。
VIEW に対するルールよりも、t1 に対するトリガ(ルールでもでき
るかも)で対処すべき問題のような気がします。
ではでは。
pgsql-jp メーリングリストの案内