package test;
import java.sql.Connection;
import java.sql.PreparedStatement;
import cc.yiyao.dbConn.DB;
/**
* 利用序列插入批量数据:
下面是表的对象.
create table myuser
(
id NUMBER(20),
username varchar2(20),
userpwd varchar2(30)
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
alter table myuser
add constraint mu_id primary key (id)
disable;
CREATE SEQUENCE seq_myuser INCREMENT BY 1 START WITH 1;
commit;
*
*/
public class Test {
public static void main(String[] args){
Test test = new Test();
test.addBatch();
}
public void addBatch(){
String sql = "insert into myuser values(seq_myuser.nextval,?,?)";
Connection conn = DB.getConn();
try{
conn.setAutoCommit(false);
PreparedStatement ptmt = conn.prepareStatement(sql);
for(int i=1; i<11; i++){
ptmt.setString(1, "hello"+i);
ptmt.setString(2, "hellopwd"+i);
ptmt.addBatch();
}
int[] a = ptmt.executeBatch();
System.out.println("len="+a.length);
conn.commit();
conn.setAutoCommit(true);
}catch(Exception e){
e.printStackTrace();
}finally{
try {
if (conn != null) {
conn.close();
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
}