//java程序去调用oracle 的存储过程的案例
package com.sp;import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.DriverManager;public class TestOraclePro { /**
 * @param args
 */
public static void main(String[] args) {
// TODO Auto-generated method stub try{
//1.加载驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//2.得到连接
Connection ct = DriverManager.getConnection("jdbc:oracle:thin:@192.168.0.122:1521:puhuadb","jzl", "puhuatest");
//3。创建一个CallableStatement
CallableStatement cs = ct.prepareCall("{call sp_pro3(?,?)}");
//4.给? 赋值
cs.setString(1, "伯格");
cs.setString(2, "m1234");
//5.执行
cs.execute();   //为什么执行到这里面就走了  我用的是debug方式  也没有异常
cs.close();
ct.close();

}catch(Exception e){
e.printStackTrace();
}
}}

解决方案 »

  1.   

    不要用debug,直接run,看看最后什么情况?这句之前的代码看不出什么问题。
      

  2.   

    呵呵 前段时间我也碰到一个在plsql里执行没有,但是在程序里执行得到的结果就不对,后来才发现原来service层只有结束调用后才提交事务,数据才真正的进入到数据库,这个时候调用存储过程就对了。
      

  3.   

    如果是停住了有可能是碰到锁了
    查询一下lock对象,怎么查我忘了