我用jdbc调用存储过程,总是报这个错误,不知道是什么问题,大家帮帮忙,谢谢!

解决方案 »

  1.   

    把调用procedure的那段java代码发出来看看
      

  2.   


    Routine (test_proc) can not be resolved
      

  3.   

    private void executeproce(String sql) throws Exception {
      DBManager dbManager = new DBManager();  try {
       dbManager.open("pcsDataSource");
       Connection conn = dbManager.getConnection();
       
       CallableStatement stat = conn.prepareCall("{call sp_pcsstat};");
       stat.executeUpdate();
         } catch (Exception exception) {   throw exception;
      } finally {
       
       dbManager.close();
      } }
      

  4.   

    CallableStatement stat = conn.prepareCall("{call sp_pcsstat};");
    stat.executeUpdate(); 
    第一行第一个;多余了
      

  5.   

    sp_pcsstat这个procedure有参数吗?还有程序是否有权限访问这个schema下面的procedure
      

  6.   


    没有参数,也没有返回值。里面的操作就是从一些表中查出数据插入到另一个表中
    权限都有的,在数据库中直接执行都可以,但是到jdbc里面就不行
      

  7.   

    用这个pcsDataSource测试下简单的查询语句看可否连上
      

  8.   

    NND,终于找到什么问题了,存储过程所放的db和我系统用的不是一个,唉!
    shiyiwan谢谢你了!:)