使用JDBC调用存储过程

时间:2013-12-17 23:11:33

标签: sql stored-procedures jdbc

我正在使用MS SqlServer,并且有一个存储过程,它将开始日期和结束日期作为参数,处理大量数据并将自定义记录写入表中。存储过程可以根据需要正常工作 - 我在SQLServer Management studio中检查过。但是,当我这样做java时,它无法正常工作。我没有错误,也没有例外。没有写的记录。所以,我认为在某处有消耗的例外。

任何人都可以帮忙吗?这是代码:

  public static void main(String[] args){
     System.setProperty("oss.property.file.location", "C:\\config.prp");
     Session session = HibernateUtil.getRoSession() ; //works OK
     String start = "2013-11-01", end="2013-11-05" ;

    Connection connection = null;
        CallableStatement statement = null;
        try{
            connection = session.connection() ;

statement = connection.prepareCall("{ ? = call  dbo.sp_getReport(?,?) }");
            statement.registerOutParameter(1, Types.INTEGER);
            statement.setDate(2, Date.valueOf(start));
            statement.setDate(3, Date.valueOf(end));

            boolean flag = statement.execute();
        }
        catch (SQLException e) {
    // TODO Auto-generated catch block
            e.printStackTrace();
        }

        finally{
            try{
                statement.close();
            }catch(Exception e){
            }
            try{
                connection.close();
            }
            catch(Exception e){
            }
        }
}

我检查了调试器 - 检查了会话变量。它有一个合适的连接属性 - 服务器,用户名,密码等。

由于

0 个答案:

没有答案