C ++OracleOCCIを使用してパッケージで定義されているストアドプロシージャのパラメータに関するメタデータを取得しようとしています。スタンドアロンプロシージャのパラメータメタデータを取得するのは簡単です。
MetaData meta = connection->getMetaData("MY_PROC");
vector<MetaData> params = meta.getVector(MetaData::ATTR_LIST_ARGUMENTS);
ただし、以下のコードを使用してパッケージ内にあるプロシージャからパラメータメタデータをクエリしようとすると、エラーが発生します。
MetaData meta = connection->getMetaData("PKG_MY_PACKAGE.MY_PROC2");
エラーメッセージ:
ORA-04043: object PKG_MY_PACKAGE.MY_PROC2 does not exist
これが機能しない理由、またはパッケージ内で別の方法で定義されているストアドプロシージャパラメータをクエリする必要がある理由はありますか?