jdbc调用存储过程为什么语句不能加分号 100
就是调用发送的sql语句字符串的时候()后加了分好就抛异常,不加就可以运行,想问为什么,哪位大神知道告诉小弟一下...
就是调用发送的sql语句字符串的时候()后加了分好就抛异常,不加就可以运行,想问为什么,哪位大神知道告诉小弟一下
展开
3个回答
大雅新科技有限公司
2024-11-19 广告
2024-11-19 广告
这方面更多更全面的信息其实可以找下大雅新。深圳市大雅新科技有限公司从事KVM延长器,DVI延长器,USB延长器,键盘鼠标延长器,双绞线视频传输器,VGA视频双绞线传输器,VGA延长器,VGA视频延长器,DVI KVM 切换器等,优质供应商,...
点击进入详情页
本回答由大雅新科技有限公司提供
2017-08-25
展开全部
jdbc中对于执行存储过程支持是通过CallableStatement接口来实现的,该接口的实现类实例来调用并执行存储过程。桥斗“public interface CallableStatementextends PreparedStatement”。Connection类提供了创建CallableStatement对象的方法以调用数据库存储过程。//CallableStatement prepareCall(String sql) throws SQLException。//注意:调用存储过的字符串参数格式为形如:敏弊磨"{call p_Register(?,?,?)}",1、注意大括号,卜迹2、注意使用call来调用存储过程,3、存储过程参数使用括号括起来,4、同样支持占位符"?",5、语句后没有分号。
追问
想问为什么没有,但是发送不是存储过程的语句就可以,就是存储过程不行呢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
conn.prepareCall("{call sp_get_goods_by_id(?)}");
cs.setObject(1, uid); //uid应该是BigInteger吧,字答举汪符串与清仔bigint类型不答正匹配
cs.setObject(1, uid); //uid应该是BigInteger吧,字答举汪符串与清仔bigint类型不答正匹配
追问
不是可变的,就是直接发送了一条静态的语句过去,可是不是存储过程的为什么可以加,到存储过程就不可以了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询