Java调用oracle的存储过程时,只能用问号指定参数么?

SadEmprie 2011-05-31 05:59:48
有一个参数有点多(20个)的存储过程PRC,Java的调用的时候,难道只能像下面这么写么?


CallableStatement cs = conn.prepareCall("BEGIN PRC(?,?,...?);END;");
cs.setString(1,string1);
...
cs.setString(20,string20);


这么写的话,参数顺序变了都要改程序啊,setString()不是有一个指定变量名的重载么,那个怎么用啊?

多谢!
...全文
128 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
SadEmprie 2011-06-01
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 bobo12082119 的回复:]

你可以给参数直接设定值,
[/Quote]

愿闻其详!
xiaoduan 2011-06-01
  • 打赏
  • 举报
回复
呵呵
Cs.SetInt (int parameterIndex ,int ) 还有个
(String parameterName ,int)

我刚才测试了下,但是 Incorrectly set or registered parameters. 显示错误!
304的的哥 2011-05-31
  • 打赏
  • 举报
回复
你可以给参数直接设定值,
tangren 2011-05-31
  • 打赏
  • 举报
回复
这个是JAVA的调用方式,?是位置参数。跟oracle没有关系吧。
一直都以这种方式调用,貌似未发现按名称调用的方式。

去JAVA版问问......

17,086

社区成员

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

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