栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何从Java执行多个SQL语句

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何从Java执行多个SQL语句

您可以使用以下示例实现addBatch和executeBatch命令同时执行多个 SQL 命令。

批处理允许您将相关的SQL语句分组为一个批处理,并通过一次调用将其提交给数据库。参考

当您一次将多个SQL语句发送到数据库时,可以减少通信开销,从而提高性能。

  • 不需要JDBC驱动程序即可支持此功能。您应该使用该
    DatabasemetaData.supportsBatchUpdates()
    方法确定目标数据库是否支持批量更新处理。如果您的JDBC驱动程序支持此功能,则该方法返回true。
  • Statement,PreparedStatement和CallableStatement 的 addBatch ()方法用于将单个语句添加到批处理中。将
    executeBatch()
    用于启动所有组合在一起的语句的执行。
  • 则ExecuteBatch ()返回一个整数数组,并且阵列中的每个元素表示相应更新语句的更新计数。
  • 正如您可以将语句添加到批处理中一样,您可以使用 clearBatch ()方法将其删除。此方法将删除您使用该
    addBatch()
    方法添加的所有语句。但是,您不能有选择地选择要删除的语句。

例:

import java.sql.*;public class jdbcConn {   public static void main(String[] args) throws Exception{      Class.forName("org.apache.derby.jdbc.ClientDriver");      Connection con = DriverManager.getConnection      ("jdbc:derby://localhost:1527/testDb","name","pass");      Statement stmt = con.createStatement      (ResultSet.TYPE_SCROLL_SENSITIVE,      ResultSet.CONCUR_UPDATABLE);      String insertEmp1 = "insert into emp values      (10,'jay','trainee')";      String insertEmp2 = "insert into emp values      (11,'jayes','trainee')";      String insertEmp3 = "insert into emp values      (12,'shail','trainee')";      con.setAutoCommit(false);      stmt.addBatch(insertEmp1);//inserting Query in stmt      stmt.addBatch(insertEmp2);      stmt.addBatch(insertEmp3);      ResultSet rs = stmt.executeQuery("select * from emp");      rs.last();      System.out.println("rows before batch execution= "      + rs.getRow());      stmt.executeBatch();      con.commit();      System.out.println("Batch executed");      rs = stmt.executeQuery("select * from emp");      rs.last();      System.out.println("rows after batch execution= "      + rs.getRow());   }}

请参阅http://www.tutorialspoint.com/javaexamples/jdbc_executebatch.htm



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/437337.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号