一、mysql表创建语句
1.1 创建表
set foreign_key_checks=0;
drop table if exists `testproc`;
create table `testproc` (
`id` int(4) not null,
`name` varchar(100) default null,
primary key (`id`)
) engine=innodb default charset=utf8;
1.2 插入数据
insert into `testproc` values ('1', '第一条记录');
insert into `testproc` values ('2', 'efgh');
insert into `testproc` values ('3', 'ijklmn');
insert into `testproc` values ('4', 'zxvb');
insert into `testproc` values ('5', 'uiop');
insert into `testproc` values ('6', '222');
insert into `testproc` values ('7', '8888');
insert into `testproc` values ('9', '第9条记录');
insert into `testproc` values ('10', '第10条记录');
insert into `testproc` values ('11', '第11条记录');
insert into `testproc` values ('12', '第12条记录');
1.3 创建存储过程
create procedure test_proc_multi_select()
begin
select * from testproc;
select * from testproc where id=1;
end;
二、java相关代码
注意要导入mysql包
import java.sql.connection;
import java.sql.drivermanager;
import java.sql.resultset;
import java.sql.sqlexception;
import com.mysql.jdbc.callablestatement;
public class test1 {
public static final string dbdriver = "com.mysql.jdbc.driver";
public static final string dburl = "jdbc:mysql://127.0.0.1:3306/test1";
public static final string dbuser = "root";
public static final string dbpass = "123456";
public static void main(string[] args) {
connection con = null;
callablestatement cs;
try {
class.forname(dbdriver);
con = drivermanager.getconnection(dburl, dbuser, dbpass);
string sql = "{call test_proc_multi_select()}";
cs = (callablestatement) con.preparecall(sql);
boolean hadresults = cs.execute();
int i = 0;
while (hadresults) {
system.out.println("result no:----" + (++i));
resultset rs = cs.getresultset();
while (rs != null && rs.next()) {
int id1 = rs.getint(1);
string name1 = rs.getstring(2);
system.out.println(id1 + ":" + name1);
}
hadresults = cs.getmoreresults(); // 检查是否存在更多结果集
}
} catch (classnotfoundexception e) {
e.printstacktrace();
} catch (sqlexception e) {
} finally {
try {
con.close();
} catch (sqlexception e) {
}
}