質問: A2_old 上記SQLでupdateしようとするとORA-01779が発生しました。 調べてみたら更新するレコードが一意にならない場合に発生するエラーのようですが、子データから親データを見ると一意になるのでは?と考えています。 merge構文でも試してみましたがそちらはORA-30926エラーが発生しました。 発行したmergeのSQLは手元に無く、すぐに記載できそうにないです。すみません。 確認できたら、改めて追記します。 あまりにも上手くいかず、全然見当外れの調べ方をしているのではないかと不安になり、こちらで質問させていただきました。調べる視点や、疑うべき箇所などヒントになりそうな部分があれば教えてください。 質問している現在SQLを発行できる環境にいないので、追記が必要そうな場合は後日追記します。 ### 補足情報(FW/ツールのバージョンなど) 特になし
回答: テーブルA→(1:n)→テーブルB という関係でテーブルAの値でテーブルBを更新するなら、ORA-01779は発生しないはずですけどね。 試しに以下のSQLで試してサブクエリーが複数の値を返すエラーになるなら、関係は正しくないという事だと思います。 ``` update テーブルB B set A2=(select A2 from テーブルA where A1=B.A1) ```