1

我正在尝试获取有关使用 C++ Oracle OCCI 在包中定义的存储过程参数的元数据。获取独立 proc 的参数元数据很简单:

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

知道为什么这不起作用,还是我需要查询在包中以不同方式定义的存储过程参数?

4

1 回答 1

0

您可以查询all_arguments(或user_argumentsdba_arguments)视图以检索打包函数和过程的参数。

http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/statviews_1014.htm#i1573843

于 2009-11-23T15:39:35.280 回答