プロが教える店舗&オフィスのセキュリティ対策術

お世話になります。
Oracle初心者です。

別のスキーマのテーブルをアップデートすべく、
PLSQL(プロシージャ)作成したのですが、
コンパイルすると、ORA01031:権限が不足しています。
と出てしまいます。

どなたかご教示下さいます様、
宜しくお願い致します。

A 回答 (2件)

>これは、plsqlの記述内に加えるのでしょうか


同じplsql内では同じユーザーですので、GRANT権限が無いのが普通ですので、GRAN権限の有るユーザーで接続してGRANTします。
>それとも一度これを実行(コンパイル!?)すれば良いのでしょうか。
DROP TABLEしない限り、一回実行しておけば良いので、通常はCREATE TABLE直後にGRANTを実行しておきます。
    • good
    • 0
この回答へのお礼

有難うございます。
しかしうまくいきません。

どこでどういう風にGRANTをすれば良いのか
今一分からず、SQL PLUSで
「GRANT update on pipe(他スキーマ名) to psuser(スキーマ名)」
と実行(enter)したのですが、
折り返しで、「2」としか表示されなく、とりあえず
これで良いのかどうかと思いながら、

PLSQLでUPDATEプロシージャを実行して見ましたが、
結果は変わらず、ORA01031:権限が不足しています。
と出てしまいます。

又、上記のpipe(他スキーマ名)は本当はpipe.emp(他スキーマ.表名)
としたかったのですが、表明が日本語でSQL PLUSでは日本語の表記の
仕方が分からなかったので上記の様にしました。

まったく何をやってるんだろうと言うレベルなのだとは
思いますが、もう少しお付き合い頂きたく誠に申し訳ございませんが、
再度ご教示願いたく宜しくお願い申し上げます。

お礼日時:2012/07/09 21:48

「権限が不足しています。

」なのでGRANTでUPDATEの権限をユーザーに与えて下さい。
    • good
    • 0
この回答へのお礼

ご回答頂き有難うございます。

GRANT update on pipe.emp(他スキーマ.表名) to psuser(ユーザー名)

こういう様にでしょうか。

これは、plsqlの記述内に加えるのでしょうか。

それとも一度これを実行(コンパイル!?)すれば良いのでしょうか。

ド素人な質問ですみません。

ご教示下さいます様宜しくお願い致します。

お礼日時:2012/07/06 22:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す