• 締切済み

異なるスキーマからデータを抽出するには?oracl、PL/SQL

Oracle初心者です。検索してもなかなかhitしないので、質問させていただきます。 aaaとbbbというスキーマがあると仮定します。 aaaにはパスワードテーブル bbbにはユーザテーブルがあるとします。 ユーザテーブル、パスワードテーブルにはそれぞれuser_idカラムがあり、そのuser_idをキーにして、aaaのpasswordカラムのデータを取得したいと思っています。 sql*plusでbbbに接続して、作業をしています。 言語はPL/SQLを使用しています。 単純に SELECT a.password FROM aaa.パスワードテーブル a, bbb.ユーザテーブル b WHERE a.user_id = b.user_id とすれば良いのかと思っていたら、違うようで、オブジェクトが存在しないと言うエラーになりコンパイルが通りません。 このよう違うスキーマのテーブルを参照する場合、どのようにすれば良いのでしょうか?

みんなの回答

  • atkuma
  • ベストアンサー率11% (5/45)
回答No.2

#1さんの回答が正解! 権限だけの問題だぁ。 めんどくさけりゃ、パブリックシノニムで作成しちゃえば、どのユーザーからでも参照できるよん。

  • muyoshid
  • ベストアンサー率72% (230/318)
回答No.1

こんにちわ > オブジェクトが存在しないと・・・ 単に、権限が付与されていないだけだと思います。 Grant select on aaa.パスワードテーブル to ユーザ名; Grant select on bbb.ユーザテーブル to ユーザ名; で、作業しているユーザにそれぞれのオブジェクトを参照する権限を付与して下さい。

関連するQ&A