日期:2014-05-20  浏览次数:20639 次

调用存储过程出现的一个奇怪的问题
第一次在java中调用存储过程,代码如下:
CallableStatement   proc   =   dbConn.prepareCall( "{   call   sp_parameters   } ");  
proc.execute();
proc.close();
System.out.println( "Loading   parameters   finished! ");

存储过程sp_parameters中从一张表格中select出68条数据然后用游标一条一条做一些操作后插入到另外一张表格中。   奇怪的是每次都能选出68条数据,但是只能插入十几条,感觉是存储过程在执行过程中没执行完就被中断了,有什么办法能保证存储过程一定执行完再执行下面的语句吗?

------解决方案--------------------
存储过程有问题的话,先调试存储过程呀。

你这个调用很简单的,有数据插入,证明调用了存储过程。可能是存储过程出错了。
------解决方案--------------------
数据插入成功!
断掉没有回滚
------解决方案--------------------
跟上边的插入数据有关?会不会主键重复.
------解决方案--------------------
存储过程的prepared打开了么。
------解决方案--------------------
你的存储过程都没有一个返回标记,怎么保证插入过程正确与否??