本实例给出批量insert到mysql的java实例!欢迎讨论大批量insert到数据库的实例方法!
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.BatchUpdateException;
public class TestBatchUpdate {
public static Connection getConnection() throws Exception {
String driver = "org.gjt.mm.mysql.Driver";
String url = "jdbc:mysql://localhost/octopus";
String username = "root";
String password = "root";
Class.forName(driver);
Connection conn = DriverManager.getConnection(url, username, password);
return conn;
}
public static void main(String args[]) {
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
try {
conn = getConnection();
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
conn.setAutoCommit(false);
stmt.addBatch("INSERT INTO batch_table(id, name) VALUES('11', 'A')");
stmt.addBatch("INSERT INTO batch_table(id, name) VALUES('22', 'B')");
stmt.addBatch("INSERT INTO batch_table(id, name) VALUES('33', 'C')");
int[] updateCounts = stmt.executeBatch();
conn.commit();
rs = stmt.executeQuery("SELECT * FROM batch_table");
while (rs.next()) {
String id = rs.getString("id");
String name = rs.getString("name");
System.out.println("id=" + id + " name=" + name);
}
} catch (BatchUpdateException b) {
System.err.println("SQLException: " + b.getMessage());
System.err.println("SQLState: " + b.getSQLState());
System.err.println("Message: " + b.getMessage());
System.err.println("Vendor error code: " + b.getErrorCode());
System.err.print("Update counts: ");
int[] updateCounts = b.getUpdateCounts();
for (int i = 0; i < updateCounts.length; i++) {
System.err.print(updateCounts[i] + " ");
}
} catch (SQLException ex) {
System.err.println("SQLException: " + ex.getMessage());
System.err.println("SQLState: " + ex.getSQLState());
System.err.println("Message: " + ex.getMessage());
System.err.println("Vendor error code: " + ex.getErrorCode());
} catch (Exception e) {
System.err.println("Exception: " + e.getMessage());
} finally {
try {
rs.close();
stmt.close();
conn.close();
} catch (Exception ignore) {
}
}
}
}
分享到:
相关推荐
综上所述,这个Demo提供了从SpringBoot应用到Mybatis配置,再到数据库批量插入的具体实现,是学习和实践大数据量操作的一个实用案例。通过深入理解这些知识点,开发者可以更好地处理类似的大规模数据处理任务。
本案例将探讨如何使用JDBC连接MySQL数据库,并通过实际的代码示例讲解整个过程。我们将涉及以下知识点: 1. **JDBC驱动注册**: 在Java中,连接MySQL数据库首先需要加载并注册JDBC驱动。MySQL的JDBC驱动类是`...
本文以"3分钟如何向MySQL数据库中插入100万条数据"为主题,探讨如何快速地批量插入大量数据。 首先,我们需要创建一个测试数据表。在MySQL中,创建表的SQL语句如下: ```sql use db_xk; drop table if exists tb_...
在Java编程语言中,向MySQL数据库插入大量数据是一项常见的任务,特别是在进行性能测试或数据分析时。本案例聚焦于150万条数据的插入,并对比了有索引和无索引表的查询效率,以此来突出数据库索引的重要性和优势。在...
本书旨在为开发人员提供一个全面的理解框架,帮助他们掌握如何在Java应用程序中有效地使用MySQL数据库。 ### 关键知识点概述 #### 1. MySQL数据库基础 - **数据库结构**:了解数据库的表结构、字段类型、索引等...
本案例将深入探讨如何使用Java Web与MySQL数据库进行交互,实现各种数据库操作,包括批量存储、删除、查询以及用户登录、注册等功能。这里我们将围绕以下几个关键知识点展开讨论: 1. 数据库连接池: 数据库连接池...
在IT行业中,数据库设计是构建高效、稳定和可扩展应用程序的关键环节,特别是在使用JAVA进行网络编程时。JAVA作为跨平台的编程语言,结合强大的数据库能力,可以构建出处理大规模数据的网络应用。本资料包“JAVA...
5. 处理大数据:了解批量插入、分页查询、大数据处理框架如Hadoop和Spark与JDBC的结合使用。 6. 错误处理:学习如何处理JDBC抛出的异常,以及如何编写健壮的数据库应用程序。 7. JPA和Hibernate:作为JDBC的高级...
在MySQL数据库操作中,优化SQL执行效率是提升系统性能的关键因素之一。特别是在大量数据插入时,传统的单条插入方式会显著降低处理速度,并可能导致数据库锁表,影响其他并发操作。本篇将详细介绍MySQL批量插入优化...
尚硅谷_MySQL高级_批量插入数据脚本 · 51.尚硅谷_MySQL高级_用Show Profile进行sql分析 · 52.尚硅谷_MySQL高级_全局查询日志 · 53.尚硅谷_MySQL高级_数据库锁理论概述 · 54.尚硅谷_MySQL高级_读锁案例讲解 ...
本资源包涵盖了这两个主题,提供了实际操作的案例,包括"java并发编程实战"和"驾校K1考试试卷批量生成mysql表结构和数据"。 首先,让我们深入了解一下Java并发编程。Java并发编程是多线程编程的一种形式,它允许...
MyBatis实现Mysql数据库分库分表操作和总结 MyBatis是一款流行的持久层框架,能够与Mysql数据库进行交互。在大规模的应用系统中,数据库的性能和可扩展性变得非常重要。为了解决这个问题,需要实现数据库的分库分表...
4. 数据访问层:使用JDBC(Java Database Connectivity)连接MYSQL数据库,执行SQL操作。此外,还可以采用ORM(Object-Relational Mapping)框架如Hibernate或MyBatis,以对象化的形式操作数据库,减少直接的SQL编写...
8. **性能优化**:当处理大量数据时,需考虑性能优化,比如批量插入、使用预编译的SQL语句(PreparedStatement)以及合理使用连接池来管理数据库连接。 9. **设计模式**:为了使代码结构清晰、可维护,可以运用设计...
│ Java面试题27.mysql数据库最大连接数.mp4 │ Java面试题28.mysql和oracle的分页语句(着重说思路).mp4 │ Java面试题29.触发器的使用场景.mp4 │ Java面试题30.存储过程的优点.mp4 │ Java面试题31.jdbc调用存储...
总的来说,“学生管理系统”是一个结合了JSP动态网页技术和MySQL数据库管理的实践项目,它体现了Web应用的基本架构和流程,是学习和理解Web开发与数据库管理的绝佳案例。通过此类项目的实施,开发者不仅可以提升技术...
在Java应用中,调用数据库存储过程时,往往需要处理复杂的参数传递,特别是当参数为集合类型时,这一过程变得更加具有挑战性。本文将深入探讨如何在Java中有效地调用存储过程,并向其传递集合参数,主要聚焦于Oracle...