package util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
/**
* DELIMITER $$
USE `test`$$
DROP PROCEDURE IF EXISTS `query_member`$$
CREATE PROCEDURE `query_member`()
BEGIN
SELECT * FROM member;
SELECT * FROM student;
DELETE FROM user;
END$$
DELIMITER ;
*/
public class MoreResultQuery {
public static void main(String[] args) throws Exception{
Connection conn = getConnection();
Statement stmt = conn.createStatement();
boolean bool = stmt.execute("call query_member()");
boolean check = true;
do{
if(bool){
ResultSet rs = stmt.getResultSet();
ResultSetMetaData rsmd = rs.getMetaData();
int count = rsmd.getColumnCount();
while(rs.next()){
for(int i= 1;i<=count;i++){
String key = rsmd.getColumnLabel(i);
System.out.print(key + ":" + rs.getString(key)+"\t");
}
System.out.println();
}
}else{
int count = stmt.getUpdateCount();//如何是ResultSet或没有可显示的结果集返回-1
if(count!=-1){
System.out.println("更新成功影响数据库条数:"+count);
}else{
check = false;
}
}
bool = stmt.getMoreResults();//移至下一结果集,如果是ResultSet返回true如果是更新语句getUpdateCount()>=0或没有结果集可显示返回false
}while(check);
}
public static Connection getConnection() throws SQLException,ClassNotFoundException{
Class.forName("com.mysql.jdbc.Driver");
return DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","root");
}
}
多集合查询(getMoreResults())
最新推荐文章于 2019-10-09 16:38:35 发布