java oracle insert_[Java]在JAVA中使用Oracle的INSERT ALL语法进行批量插入

该博客展示了如何使用Java连接Oracle数据库进行批量插入数据,并执行查询操作。代码中定义了数据库连接参数,通过`Class.forName()`加载Oracle驱动,然后使用`DriverManager.getConnection()`建立连接,创建`Statement`对象执行SQL语句。批量插入后,进一步查询并打印出新插入的数据。
摘要由CSDN通过智能技术生成

packagecom.hy;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;importjava.text.MessageFormat;public classBatchInserter {//连接到数据库的四大属性

private static final String DRIVER = "oracle.jdbc.driver.OracleDriver";private static final String DBURL = "jdbc:oracle:thin:@127.0.0.1:1521:orcl";private static final String USER = "system";private static final String PSWD = "XXXXX";public static voidbatchInsert() {

Connection conn= null;

Statement stmt= null;try{

Class.forName(DRIVER).newInstance();

conn=DriverManager.getConnection(DBURL, USER, PSWD);

stmt=conn.createStatement();

StringBuilder sb=newStringBuilder();

sb.append("INSERT ALL ");

sb.append(" INTO firsttb(NAME, age,createdtime) values('E1','22',sysdate)");

sb.append(" INTO firsttb(NAME, age,createdtime) values('E2','32',sysdate)");

sb.append(" INTO firsttb(NAME, age,createdtime) values('E3','42',sysdate)");

sb.append("select * from dual");

String sql=sb.toString();

stmt.executeUpdate(sql);

sql= "select id,name,age,createdtime from firsttb";

ResultSet rs=stmt.executeQuery(sql);int index = 0;while(rs.next()) {

index++;

String id= rs.getString("id");

String name= rs.getString("name");

String age= rs.getString("age");

String cdate= rs.getString("createdtime");

String raw= "#{0},{1},{2},{3},{4}";

Object[] arr={ index, id, name, age, cdate };

String outStr=MessageFormat.format(raw, arr);

System.out.println(outStr);

}

}catch(Exception e) {

System.out.print(e.getMessage());

}finally{try{

stmt.close();

conn.close();

}catch(SQLException e) {

System.out.print("Can't close stmt/conn because of " +e.getMessage());

}

}

}/*** 执行点

*@paramargs*/

public static voidmain(String[] args) {

batchInsert();

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值