大批量更新

declare
                 type ridarray is table of rowid;  --类型rowid
                 type jqbharray is table of pj_zzsp_fpmx.jqbh%type;  --类型jqbh
                 type kqrqarray is table of pj_zzsp_fpmx.kprq%type;  --类型kprq
                 my_rids ridarray;  --变量1  保存rowid
                 my_jqbh jqbharray; --变量2  保存jqbh
                 my_kprq kqrqarray; --变量3  保存kprq
                cursor my_cur is select t2.rowid, t1.jqbh,t1.kprq from pj_zzsp_fpmx t1 ,pj_zzsp_fpmxzb t2 where t1.id=t2.mxid;  --两表的关联条件
       begin

open my_cur;
              loop
                        fetch my_cur bulk collect into my_rids, my_jqbh,my_kprq LIMIT 100;
                        forall i in 1 .. my_rids.count
                         
                        update pj_zzsp_fpmxzb t2 set jqbh = lower(my_jqbh(i)),kprq=lower(my_kprq(i)) where rowid = my_rids(i);

commit;
                       
                        exit when my_cur%notfound;
              end loop;
              close my_cur;
     end;
--160.697s

时间: 2024-10-08 22:50:06

大批量更新的相关文章

ADO.NET大批量更新数据

public static void SqlBulkUpdate() { DataTable dt = ExcelHelper.ImportExcelFile("d://User1.xls"); //将Excel中的数据导入到DataTable中 10000条数据(作为更新数据的数据源) DateTime begin = DateTime.Now; string connectionString = connStr; using (SqlConnection conn = new Sq

hibernate批量删除和更新数据

转载自:http://blog.csdn.net/yuhua3272004/article/details/2909538 Hibernate3.0 採用新的基于ANTLR的HQL/SQL查询翻译器,在Hibernate的配置文件里,hibernate.query.factory_class属性用来选择查询翻译器. (1)选择Hibernate3.0的查询翻译器: hibernate.query.factory_class= org.hibernate.hql.ast.ASTQueryTrans

IBatis.Net 下使用SqlBulkCopy 大批量导入数据 问题解决

SQLBulkCopy是继承SQLClient空间下的一个特殊类,它可以帮助我们以映射的方式把DataTable和DataReader数据大批量导入到数据库对应表中 public void Inert2DBBySqlBulkCopy(DataTable data, string tableName) { BaseDao basdd = new BaseDao(); using (SqlConnection conn = new SqlConnection(basdd.SqlNormMap.Dat

mysql的监控及优化

---恢复内容开始--- 1.数据库的用途:写数据和读数据 2.查询语句的生命周期: (1)mysql服务器监听3306端口(2)验证访问用户(3)创建mysql线程 (4)检查内存(Qcache) (5)解析SQL(6)生成查询计划(7)打开表 (8)检查内存(Buffer Pool) (9)到磁盘取数据(10)写入内存(11)返回数据给客户端(12)关闭表(13)关闭线程(14)关闭连接 3.mysql构架 总的来说,MySQL Server可以看成是二层架构,第一层我们通常叫做 SQL L

.NET基础拾遗(6)ADO.NET与数据库开发基础

一.ADO.NET和数据库程序基础 1.1 安身立命之基本:SQL SQL语句时操作关系型数据库的基础,在开发数据访问层.调试系统等工作中十分常用,掌握SQL对于每一个程序员(无论是.NET.Java还是C++等)都非常重要.这里挑选了一个常见的面试题目,来热热身. 常见场景:通过SQL实现单表行列转换 行列转换时数据库系统中经常遇到的一个需求,在数据库设计时,为了适合数据的累积存储,往往采用直接记录的方式,而在展示数据时,则希望整理所有记录并且转置显示.下图是一个行列转换的示意图: ①好了,废

hibernate二级缓存攻略(转)

很多人对二级缓存都不太了解,或者是有错误的认识,我一直想写一篇文章介绍一下hibernate的二级缓存的,今天终于忍不住了. 我的经验主要来自hibernate2.1版本,基本原理和3.0.3.1是一样的,请原谅我的顽固不化. hibernate的session提供了一级缓存,每个session,对同一个id进行两次load,不会发送两条sql给数据库,但是session关闭的时候,一级缓存就失效了. 二级缓存是SessionFactory级别的全局缓存,它底下可以使用不同的缓存类库,比如ehc

SQL Server 锁的 8 种类型

第1种. 共享锁.由读取查寻产生. 第2种. 意向锁.用意向锁来表示有将要获得某一资源的意向. 第3种. 更新锁.在修改数据前获得. 第4种. 排它锁.用于独占某一资源时获得. 第5种. 架构锁.运行ddl 语句时产生. 第6种. 架构稳定锁.在查询编译时产生,使ddl不能在表上进行. 第7种. 大批量更新锁.在批量复制时产生这种锁,如同时锁住id由1~100000这些行,许多行用一把锁. 第8种. 键范围锁.根据键范围来保护一系列的行.

Hibernate Hql 总结

1.from子句 Hibernate中最简单的查询语句的形式如下: from eg.Cat该子句简单的返回eg.Cat类的所有实例. 通常我们不需要使用类的全限定名, 因为 auto-import(自动引入) 是缺省的情况. 所以我们几乎只使用如下的简单写法: from Cat大多数情况下, 你需要指定一个别名, 原因是你可能需要 在查询语句的其它部分引用到Cat from Cat as cat这个语句把别名cat指定给类Cat 的实例, 这样我们就可以在随后的查询中使用此别名了. 关键字as

HQL: Hibernate查询语言

HQL: Hibernate查询语言 Hibernate配备了一种非常强大的查询语言,这种语言看上去很像SQL.但是不要被语法结构 上的相似所迷惑,HQL是非常有意识的被设计为完全面向对象的查询,它可以理解如继承.多态 和关联之类的概念. 第 15 章 HQL: Hibernate查询语言 Hibernate配备了一种非常强大的查询语言,这种语言看上去很像SQL.但是不要被语法结构 上的相似所迷惑,HQL是非常有意识的被设计为完全面向对象的查询,它可以理解如继承.多态 和关联之类的概念. 15.