実現したいこと
データベースは違うが、同一テーブル名の値をinsertしたい。(トリガーfunctionで)
発生している問題・分からないこと
Aテーブル → Bと同じ値をBのinsertと同時に追加したい
Bテーブル → insertと同時にAに値を追加するトリガーが発生する
(ABともにカラム名同一)
AテーブルとBテーブルは異なるデータベースにあります(サーバーは同じ)
dblinkを使い、値をとってくるなどはできたのですが
perform dblink_exec('Aデータベースへの接続名' , 'insert into Aテーブル values select * from Bテーブル名')
とした所、AテーブルとBテーブルが同じ名前のため、上記のSQLだとvalueに入れたい値がAテーブルを見てしまうようで重複エラーが発生します。。。(トリガー発動のBテーブルの値をいれたい)
解決方法がわからず困っています、、わかる方お願いします、、
エラーメッセージ
error
1重複エラーが発生しています
該当のソースコード
perform dblink_exec('Aデータベースへの接続名' , 'insert into Aテーブル values select * from Bテーブル名')
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
NEWを使う?(from句の定義が必要と出て断念)
補足
特になし
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2024/02/21 11:07
2024/02/21 15:26 編集