`

BatchUpdate

阅读更多
package JDBC;

import java.sql.BatchUpdateException;
import java.sql.Connection;
import java.sql.Date;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.DriverManager;
import java.sql.Statement;
import java.sql.Time;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.Calendar;
/** *//**
 * 
 * 
@author oakertree
 *
 
*/

public class TestBatch {
    
public static void main(String[] args) {
        Connection con 
= null;
//        Statement stmt = null;
        PreparedStatement stmt = null;
        
        
try {
            Class.forName(
"com.mysql.jdbc.Driver");
//            new com.mysql.jdbc.Driver();
            con = DriverManager.getConnection("jdbc:mysql://localhost:3307/test""root""admini");
            
/**//*
            stmt = con.createStatement();
            stmt.addBatch("INSERT INTO time VALUES ( NOW(), NOW(), NOW())");
            stmt.addBatch("INSERT INTO time VALUES ( NOW(), NOW(), NOW())");
            stmt.addBatch("INSERT INTO time VALUES ( NOW(), NOW(), NOW())");
            stmt.addBatch("INSERT INTO time VALUES ( NOW(), NOW(), NOW())");
            stmt.addBatch("INSERT INTO time VALUES ( NOW(), NOW(), NOW())");
            stmt.addBatch("INSERT INTO time VALUES ( NOW(), NOW(), NOW())");
            stmt.executeBatch();
            stmt.close();
             
*/

            System.out.println(Date.valueOf(
"2004-02-19"));
            System.out.println(Time.valueOf(
"14:29:32"));
            System.out.println(Timestamp.valueOf(
"2008-12-01 12:25:32"));
            
            
            stmt 
= con.prepareStatement("INSERT INTO time VALUES (?, ?, ?)");
            stmt.setDate(
1, Date.valueOf("2004-12-02"));
            stmt.setTime(
2, Time.valueOf("14:02:32"));
            stmt.setTimestamp(
3, Timestamp.valueOf("2004-12-01 12:25:32"));
            stmt.addBatch();
            
            stmt.setDate(
1, Date.valueOf("2005-12-02"));
            stmt.setTime(
2, Time.valueOf("15:02:32"));
            stmt.setTimestamp(
3, Timestamp.valueOf("2005-12-01 12:25:32"));
            stmt.addBatch();
            
            stmt.setDate(
1, Date.valueOf("2006-12-02"));
            stmt.setTime(
2, Time.valueOf("16:02:32"));
            stmt.setTimestamp(
3, Timestamp.valueOf("2006-12-01 12:25:32"));
            stmt.addBatch();
            
            stmt.setDate(
1, Date.valueOf("2007-12-02"));
            stmt.setTime(
2, Time.valueOf("17:02:32"));
            stmt.setTimestamp(
3, Timestamp.valueOf("2007-12-01 12:25:32"));
            stmt.addBatch();
            
            stmt.executeBatch();
            stmt.close();
            
            }
 catch (ClassNotFoundException e) {
                e.printStackTrace();
            }
 catch (BatchUpdateException e) {
                e.printStackTrace();
            }
 catch (SQLException e) {
                e.printStackTrace();
            }
 finally {
                
try {
                    
if(stmt != null{
                        stmt.close();
                        stmt 
= null;
                    }

                    
if(con != null{
                        con.close();
                        con 
= null;
                    }

                }
 catch (SQLException e) {
                    e.printStackTrace();
                }

            }

    }

}

/**//*
+------------+----------+---------------------+
| date       | time     | datetime            |
+------------+----------+---------------------+
| 2007-10-16 | 01:01:17 | 2007-10-16 01:01:17 |
| 2007-10-17 | 01:02:22 | 2006-05-12 00:00:00 |
| 2007-12-19 | 00:13:04 | 2007-12-19 00:13:04 |
| 2007-12-22 | 14:13:48 | 2007-12-22 14:13:48 |
| 2007-12-22 | 14:14:52 | 2007-12-22 14:14:52 |
| 2007-12-22 | 14:14:52 | 2007-12-22 14:14:52 |
| 2007-12-22 | 14:14:52 | 2007-12-22 14:14:52 |
| 2007-12-22 | 14:14:52 | 2007-12-22 14:14:52 |
| 2007-12-22 | 14:14:52 | 2007-12-22 14:14:52 |
| 2007-12-22 | 14:14:52 | 2007-12-22 14:14:52 |
| 2004-12-02 | 14:02:32 | 2004-12-01 12:25:32 |
| 2005-12-02 | 15:02:32 | 2005-12-01 12:25:32 |
| 2006-12-02 | 16:02:32 | 2006-12-01 12:25:32 |
| 2007-12-02 | 17:02:32 | 2007-12-01 12:25:32 |
+------------+----------+---------------------+
*/

分享到:
评论

相关推荐

    Spring JdbcTemplate.batchUpdate 例子

    本篇文章将详细探讨`batchUpdate`方法及其在实际开发中的应用。 在SQL中,批处理是一种高效的技术,它允许一次性发送多个SQL命令到数据库,从而减少了网络通信和数据库处理的开销。`JdbcTemplate`的`batchUpdate`...

    batchupdate

    sqlhelper工具,batchupdate方法

    mybatis执行批量更新batch update 的方法(oracle,mysql两种)

    <update id="batchUpdate" parameterType="java.util.List"> ;" separator=";"> UPDATE test test = #{item.test} + 1 WHERE id = #{item.id} </update> ``` 在这个配置中,`collection`属性指定了传入...

    SQL Server批量插入批量更新工具类

    SQL Server批量插入批量更新工具类,SqlBulkCopy,BatchUpdate

    mysql-batch:小批量运行大型MySQL UPDATE和DELETE查询,以防止表行级锁定

    安装 pip3 install mysql_batchUPDATE示例您可以使用可用的模式运行此示例以下示例与以下更新相同: UPDATE batch_test SET date = NOW() WHERE number > 0 . 2 AND date is NULL ; 这等效于以20行为批处理此更新: ...

    JdbcTemplate的批量方法使用

    4. 最后,通过`JdbcTemplate`的`batchUpdate`方法执行批量插入操作。它接受SQL语句和`BatchPreparedStatementSetter`作为参数,返回一个整数数组,表示每条SQL语句的受影响行数。 批量删除操作与批量插入类似,但在...

    用JDBC访问ORACLE数据库 关于commit 增快效率 大数据 等的整理

    1、问:用JDBC访问ORACLE数据库,做DELETE操作,能用JAVA多线程实现吗? ORACLE服务器要怎么配?(以下答案来自网络,仅供参考)  答: Oracle有自己的锁机制。...  (2)充分利用batch update。如果不用batch,每个

    Mybatis批量插入更新xml方式和注解方式的方法实例

    在上面的示例中,我们定义了一个名为`batchUpdate`的update语句,该语句将批量更新`t_student`表中的数据。`foreach`元素用来遍历List集合,并将每个元素的属性值更新到数据库中。 Mybatis批量更新注解方式 ...

    xmljava系统源码-mybatis-generator-gui-plus:mybatis-generator-gul-plus

    batchUpdate 批量可选更新 batchUpdateSelective 批量插入 batchInsert 条件查询返回一个 selectFirstByExample 核心特性 按照界面步骤轻松生成代码,省去XML繁琐的学习与配置过程 保存数据库连接与Generator配置,...

    Hibernate错误及解决办法集合

    ### Hibernate常见错误及解决办法 #### 一、Nodefaultconstructorforentity 错误 **问题描述**:在使用Hibernate执行查询语句时,系统抛出`Nodefaultconstructorforentity`错误。 **可能原因**:该错误通常是由于...

    springmvc_mybatis_多数据源

    在IT行业中,SpringMVC和MyBatis是两个非常重要的框架,它们被广泛用于构建企业级的Java Web应用。SpringMVC作为MVC(模型-视图-控制器)设计模式的实现,负责处理请求和展示结果,而MyBatis则是一个轻量级的持久层...

    ibatis应对批量update

    executor.update("test.batchUpdate", item); } executor.executeBatch(); return null; } } ); } } catch (Exception e) { // 处理异常 } ``` 5. **注意事项**: - 确保数据库驱动支持批量更新功能。 -...

    springstudy

    4. **Spring批量更新JdbcTemplate.batchUpdate().docx**:该文档详细解释了如何使用JdbcTemplate的batchUpdate()方法进行批量更新,包括设置SQL语句、参数绑定、异常处理等内容。 5. **JVM调优总结.docx**:JVM是...

    Mybatis Plus 自定义批量插入或批量更新(根据唯一索引)

    Mybatis Plus 提供了 `batchInsert()` 和 `batchUpdate()` 方法来实现批量插入和更新。这些方法接受一个实体对象列表,然后一次性将所有对象插入或更新到数据库。然而,当涉及到唯一索引时,简单的批量操作可能无法...

    C# sqlite 批量更新及性能测试

    "UPDATE MyTable SET Column1 = 'Value1' WHERE Id = 1", "UPDATE MyTable SET Column1 = 'Value2' WHERE Id = 2", // 更多更新语句... }; foreach (var stmt in updateStatements) { cmd.CommandText = ...

    TimeBack.exe命令行工具获取和更改文件的创建、修改、访问时间

    命令行工具TimeBack.exe获取和更改文件的创建、修改、访问时间 TimeBack 1.0 文件时间控制 作者:Xinje E-mail:xinje@126.com 2010.6.16 /F [文件名] 设置欲更改或查看文件时间的文件名。 /T [日期时间] 欲更改的...

    hibernate操纵实体对象

    2. **更新(Update)**:如果对象已经存在于数据库中,可以使用`update()`方法来更新其状态。同样,更新操作也是在事务提交时执行。 3. **删除(Delete)**:`delete()`方法用于从数据库中移除一个对象。在调用此...

    Spring JdbcDaoSupport 批量插入数据

    在`JdbcDaoSupport`中,我们可以通过`JdbcTemplate`的`batchUpdate(String sql, BatchPreparedStatementSetter setter)`方法来实现这个功能。`BatchPreparedStatementSetter`是一个接口,我们需要实现它的`setValues...

    Spring框架JdbcTemplate类中查询方法介绍

    JdbcTemplate 类主要提供四类方法:execute 方法、update 方法及 batchUpdate 方法、query 方法及 queryForXXX 方法、call 方法。 一、 execute 方法 execute 方法用于执行任何 SQL 语句,一般用于执行 DDL 语句。...

    OLEdbProNet

    bookmark, record searching and scrolling, batch update, provider-specific features, and many more. Specifically, it is great in accessing a large table using a proper server cursor.

Global site tag (gtag.js) - Google Analytics