• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:プロシージャの共有について)

プロシージャの共有について

このQ&Aのポイント
  • プロシージャやファンクション、パッケージ等のソース内に書かれたDMLは基本的に自分のスキーマが参照対象なので、(ユーザは異なるが)同一構造のスキーマが複数存在する場合はスキーマ毎に同じプロシージャ等を用意する必要がありますが、このソースを(動的SQLを使わずに)一つのスキーマで一元管理することはできないでしょうか。
  • たとえば下記の状態で、スキーマA(またはB)から、スキーマCのTEST_FUNCTIONを呼び出し、実際はスキーマA(またはB)のTEST_TABLEを参照したい場合です。大変お手数ですが、宜しくお願い致します。
  • create function TEST_FUNCTION return NUMBER is nRET NUMBER; begin SELECT COUNT(*) INTO nRET FROM TEST_TABLE; return nRET; end;

質問者が選んだベストアンサー

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

こんにちわ。 > 一つのスキーマで一元管理・・・ ストアド・ファンクションを、実行者権限で定義すれば可能です。 Create function ~ return number AUTHID CURRENT_USER is ・・・ としてみて下さい。

kitasuke
質問者

お礼

素晴らしいです! 本当に助かりました。ありがとうございました!