sqlsrever数据库连接之储存过程和函数的调用

小编接着这一篇来说,如果忘记了sqlserver储存过程和函数的编写,请看这
储存过程的调用
在调用SQL进程之前,需要使用合适的set方法将值传给IN和IN OUT参数,使用registeroutParameter来注册OUT和IN OUT参数。 例如,在调用进程sampleProcedure之前,下面的语句将值传给参数p1(IN)、p2(IN)和p3(IN OUT), 并注册参数p3(IN OUT),可以使用execute()或executeUpdate()按照SQL语句的类型执行进程,然后使用get方法获取来自OUT参数的值。例如,下一条语句从参数p3获取值。

在这里插入代码片
CallableStatement s=dbConn.prepareCall("{call ad(?,?,?)}");//“?”占位符,作为参数
        s.setInt(1, 1);
        s.setInt(2, 2);
        s.setInt(3, 2);
        s.registerOutParameter(3,Types.INTEGER);
        s.execute();
        System.out.println(s.getInt(3));
		dbConn.close();

调用函数

在这里插入代码片
CallableStatement s=dbConn.prepareCall("{?=call sum(?,?)}");
        s.setInt(2, 1);
        s.setInt(3, 2);
        s.registerOutParameter(1,Types.INTEGER);
        s.execute();
        System.out.println(s.getInt(1));
		dbConn.close();

其实调用存储过程和调用函数相似,只不过有时候有return有时候没有这些不同。

发布了152 篇原创文章 · 获赞 16 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/feiqipengcheng/article/details/105442674
今日推荐