存储过程 mysqlDELIMITER //
CREATE DEFINER=`root`@`localhost` PROCEDURE `p4`(IN deid VARCHAR(20),OUT NAME VARCHAR(25))
BEGIN
SELECT uname,upwd INTO NAME FROM fu_white_user WHERE dessid = deid LIMIT 1;
END //====================================================================================
java 类调用
public void query(String desttermid){
System.out.println(desttermid);
Connection con = ConnectionManager.getConnection();
CallableStatement stmt = null;
ResultSet rs=null;
try{
stmt = con.prepareCall("{call p4(?,?,?)}");
stmt.setString(1, desttermid);
stmt.registerOutParameter(2, java.sql.Types.VARCHAR); //指定输出类型
stmt.registerOutParameter(3, java.sql.Types.VARCHAR); //指定输出类型
stmt.execute();
String name=stmt.getString(2);
String re=stmt.getString(3);
System.out.println("name="+name+"\t"+"re="+re);=====================================================================================啥时候使用这中方式呢 select语句 咋写 举个例子白 我有些分不清 楚了public void query(){
Connection con = ConnectionManager.getConnection();
CallableStatement stmt = null;
ResultSet rs=null;
try{
stmt = con.prepareCall("{call demoSp(?)}");
stmt.registerOutParameter(1, java.sql.Types.VARCHAR); //指定输出类型
boolean hasResultSet = stmt.execute();
while(hasResultSet){
rs = stmt.getResultSet();
String a ="";
String b="";
String c="";
while(rs.next()){
a = rs.getString(1);
b = rs.getString(2);
c = rs.getString(3);
}
hasResultSet = stmt.getMoreResults();
System.out.println("获得返回参数是"+a+","+b+","+c);
CREATE DEFINER=`root`@`localhost` PROCEDURE `p4`(IN deid VARCHAR(20),OUT NAME VARCHAR(25))
BEGIN
SELECT uname,upwd INTO NAME FROM fu_white_user WHERE dessid = deid LIMIT 1;
END //====================================================================================
java 类调用
public void query(String desttermid){
System.out.println(desttermid);
Connection con = ConnectionManager.getConnection();
CallableStatement stmt = null;
ResultSet rs=null;
try{
stmt = con.prepareCall("{call p4(?,?,?)}");
stmt.setString(1, desttermid);
stmt.registerOutParameter(2, java.sql.Types.VARCHAR); //指定输出类型
stmt.registerOutParameter(3, java.sql.Types.VARCHAR); //指定输出类型
stmt.execute();
String name=stmt.getString(2);
String re=stmt.getString(3);
System.out.println("name="+name+"\t"+"re="+re);=====================================================================================啥时候使用这中方式呢 select语句 咋写 举个例子白 我有些分不清 楚了public void query(){
Connection con = ConnectionManager.getConnection();
CallableStatement stmt = null;
ResultSet rs=null;
try{
stmt = con.prepareCall("{call demoSp(?)}");
stmt.registerOutParameter(1, java.sql.Types.VARCHAR); //指定输出类型
boolean hasResultSet = stmt.execute();
while(hasResultSet){
rs = stmt.getResultSet();
String a ="";
String b="";
String c="";
while(rs.next()){
a = rs.getString(1);
b = rs.getString(2);
c = rs.getString(3);
}
hasResultSet = stmt.getMoreResults();
System.out.println("获得返回参数是"+a+","+b+","+c);
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货