儲存過程&函式-sql
阿新 • • 發佈:2018-12-31
以一下例子以mysql為例:
- 儲存過程
- 函式
函式
函式建立:
需要參入引數user_id是int
BEGIN
DECLARE ss varchar(100);
set ss='aaa';
select name into ss
from testuser
where id=user_id;
RETURN ss;
END
java呼叫:Connection con = DriverManager.getConnection(url,user,password); CallableStatement callableStatement = con.prepareCall("{? = call testfunction(?)}"); callableStatement.registerOutParameter(1, Types.VARCHAR); callableStatement.setInt(2,2); callableStatement.execute(); System.out.println("-----------"+callableStatement.getString(1));
儲存過程
儲存過程建立:
需要參入引數user_id是int
BEGIN
select id,name,remarks
from testuser
where id<user_id;
END
java呼叫:Connection con = DriverManager.getConnection(url,user,password); CallableStatement callableStatement = con.prepareCall("{ call testProcedure(?)}"); callableStatement.setInt(1,5); ResultSet resultSet = callableStatement.executeQuery(); ResultSetMetaData rsm = resultSet.getMetaData(); while (resultSet.next()){ Integer id = resultSet.getInt("id"); String name = resultSet.getString("name"); String remarks= resultSet.getString("remarks"); System.out.println(id+" "+name+" "+remarks); }