调存储过程不能带SCHEMA???

xylohouse 2008-06-20 11:57:00
JDBC:
String sql = "{call \"myschema\".my_proc(?, ?, ?)}";
String sql = "{call myschema.my_proc(?, ?, ?)}";

SQLPLUS:
execute "myschema".my_proc(101570,:c1,:c2);

即使登录用户也是myschema, 都出错:
ORA-06550: line 1, column 16:
PLS-00302: component 'my_proc' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored

去掉SCHEMA就可以,但如果my_proc在其他SCHEMA,就不行了:
String sql = "{call my_proc(?, ?, ?)}";

难道 调存储过程不能带SCHEMA???
...全文
72 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xylohouse 2008-06-20
  • 打赏
  • 举报
回复
不会,什么命令?

我在 10.1.0.3.0,windows 10.2.0.1.0上市好的,但LINUX 10.2.0.2.0就不行。

即便:my_proc就创建在myschema下,带“myschema”就是不行。
yuzhenhuan01 2008-06-20
  • 打赏
  • 举报
回复
把执行存储过程的权限附一下
doer_ljy 2008-06-20
  • 打赏
  • 举报
回复
没有这个限制,不过不能用双引号。
sqlplus下
SQL> exec myschema.my_proc();
没有问题

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧