0 0

使用merge into语句程序性能,效率的提高5

oracle数据库
我有一张临时表
fax_no,lsh(主键)两个字段

我有个功能 往这张临时表插入数据 
如果 这条数据fax_no存在什么都不做,如果不存在就insert

部分代码如下:
//list2.get(i)----->fax_no
//这次需要插入的总条数
//list2中有几万条数据
final int size = list2.size();
jdbcTemplate
					.batchUpdate(
							"merge into netfaxdb.fax_temp_faxno a"
									+ " using (select ? as fax_no,? as lsh from dual)b"
									+ " on (a.fax_no=b.fax_no)"
									+ " when not matched then insert(fax_no,lsh) values(b.fax_no,b.lsh)",
							new BatchPreparedStatementSetter() {
								public void setValues(PreparedStatement ps,
										int i) throws SQLException {
									String lsh = UUIDGenerator.getUUID();
									ps.setString(1, list2.get(i));
									ps.setString(2, lsh);
								}

								public int getBatchSize() {
									return size;
								}
							});



当fax_temp_faxno 这张表数据一多时  程序就会变慢   有没有更好的办法
2012年8月20日 16:59

1个答案 按时间排序 按投票排序

0 0

采纳的答案

fax_no 建立索引了吗

2012年8月20日 18:05

相关推荐

    Mybatis批量foreach merge into的用法

    首先,需要使用Oracle 9i及其以后版本支持的merge into语句,该语句可以实现insertOrUpdate的功能。然后,使用Mybatis的动态SQL语法foreach循环插入,待插入的实体bean的List通过查询数据库dual形成表。foreach的 ...

    使用BULK COLLECT, MERGE 语句提高sql执行效率

    详细介绍了使用 BULK COLLECT 进行批量操作 提高sql的执行效率 使用MERGE INTO USING 一条sql搞定 新增和修改 使用connect by 进行递归树查询

    Merge Into 语句代替InsertUpdate

    非常经典的SQL经验,适合于数据库初学者及长期从事软件开发者

    DB2 MERGE INTO语句的使用

    DB2中的Merge语句可以将一个表中的数据合并到另一个表中,在合并的同时可以根据条件进行插入、删除、更新等操作,功能非常强大。

    浅谈Oracle数据库中Merge Into的用法.pdf

    Oracle 数据库中 Merge Into 的用法 在 Oracle 数据库中,Merge Into 语句是一种非常有用的功能,它主要用来合并 update 和 insert 语句,即用一个...Merge Into 语句可以帮助我们简化数据处理的过程,提高工作效率。

    oracle merge into的使用

    标题:Oracle Merge Into 的使用 描述详解:Oracle Merge Into 是一个功能强大的SQL语句,它在Oracle数据库系统中被广泛用于处理数据同步、更新或插入操作。与传统的UPDATE和INSERT语句相比,Merge Into 提供了更为...

    Merge into的使用详解

    在SQL语言中,`MERGE INTO`语句是一种强大的工具,用于合并两个数据集,它允许根据特定条件将数据从一个源(通常是临时表或视图)插入或更新到目标表。这个操作通常被称为“合并”或“ Upsert”,因为它可以实现插入...

    Oracle merge into用法

    `MERGE INTO`语句的一个关键优势是它允许使用`WHERE`子句来细化更新和插入的规则。这意味着你可以控制哪些记录会被更新,哪些记录会被插入,甚至可以排除某些特定的记录不进行任何操作。这种精细的控制能力对于数据...

    Oracle中merge into的使用

    在Oracle数据库中,`MERGE INTO`语句是一种强大的数据操作工具,它允许你在一个步骤中执行更新(UPDATE)和插入(INSERT)操作,从而提高了数据处理的效率和灵活性。这个命令尤其适用于需要同步两个表的数据时,比如...

    利用 sqluldr2导出数据 使用sqlldr导入数据 通过merge into 合并更新数据

    下面将详细阐述如何使用这两个工具以及如何通过`MERGE INTO`语句进行数据合并更新。 1. SQLULDR2导出数据: SQLULDR2是Oracle提供的一款数据导出工具,它能够快速地将数据库中的数据导出到文本文件或其他格式的...

    DB2 merge语句使用教程

    然而,使用 DB2 Merge 语句,我们可以将这两个操作合并成一个语句,从而提高效率并减少潜在的并发问题: ```sql MERGE INTO EMPLOYE AS EM USING MANAGER AS MG ON (EM.EMPLOYEID = MG.MANAGERID) WHEN MATCHED ...

    买书1111111111

    根据提供的文件信息,我们可以推断出此文档与数据库操作有关,特别是Oracle数据库中的MERGE INTO语句。然而,由于部分内容包含非技术性信息且与标题和描述不匹配,因此我们将集中于标题和描述中提到的技术知识点进行...

    SQL Server使用Merge语句当源表数据集为空时,无法进行查询的问题

    在SQL Server中,`MERGE`语句是一种强大的工具,用于合并两个数据集,它可以实现插入、更新或删除操作。然而,当源表数据集为空时,`MERGE`语句可能不会按照预期的方式工作。这个问题在【标题】和【描述】中已经提到...

    merge用法详解(实例详解)

    【知识点详解】 ...通过以上介绍,我们了解了`MERGE INTO`语句的基本概念和使用方法,以及在实际场景中如何进行数据同步。在数据库管理和ETL过程中,合理运用`MERGE`能有效地提高数据处理的效率和准确性。

    Oracle_merge

    为了解决这一问题,Oracle 引入了 `MERGE` 语句,它允许用户在一个步骤中同时执行这两种操作,从而大大提高了数据处理的效率和准确性。 #### 三、`MERGE` 语句的结构 `MERGE` 语句的基本结构如下: ```sql MERGE ...

    merge用法详解

    正确使用`MERGE`可以提高代码的可读性和维护性,减少编写大量条件判断的代码。但同时,需要注意`ON`后的条件必须具有唯一性,以防止出现无法确定的操作情况。在实际应用中,`MERGE`常常用于数据仓库的加载过程,以及...

    Oracle MERGE INTO的用法示例介绍

    总结来说,Oracle的MERGE INTO语句是数据库管理中的一个重要工具,它简化了在插入和更新数据时的复杂逻辑,提高了效率,特别是在处理大量数据或需要根据条件动态操作数据时。理解并熟练使用MERGE INTO,能够帮助...

    oracle Merge 函数.doc

    Oracle Merge 函数是一种强大的数据操作语句,用于从一个表中选择一些数据更新或者插入到另一个表中。Merge 函数的使用方式有三种:只更新不插入、只插入不更新和既插入也更新。 Merge 函数的基本用法 Merge ...

    oracle中merge into用法及实例解析

    通过一次性操作,`MERGE INTO`可以显著提高数据维护的效率,减少不必要的查询和事务开销。然而,需要注意的是,由于`MERGE`操作可能涉及多行,因此在处理大量数据时需要谨慎,确保对数据库性能的影响在可控范围内。

Global site tag (gtag.js) - Google Analytics