【oracle大量数据删除】教程文章相关的互联网学习教程文章

oracle大量数据删除

oracle有个数据表现在已经有2500万条数据了,软件用到这个表的数据时就变的特别慢,所以准备把一个月以前的数据全部清除。 我的步骤是(下边操作都是在plsql中运行的) 1、首先 将这个月的数据导出到一个临时表中(这些数据是自己希望保留的) create table tempTable as select id,name from table1 where sj>to_date(‘2013-7-31 23:59:59‘,‘yyyy-mm-dd hh24:mi:ss‘);2、然后将2500万数据整个删除(这个是我在有备份情况下才...

oracle导入Excel数据文件(大量数据)处理方法

1.将要导入的Excel数据文件转为csv文件(不需要标题)2.新建ctl文件 内容如下:load datainfile ‘e:\sql\fsfp.csv‘ //csv文件位置into table "TMP_INVOICE_TEST" //表名(测试时,表名小写会报错)fields terminated by ‘,‘(NAME,TAX,ENO,CODE,TOTAL,TAXATION,URL,TIMES) //csv文件数据对应的数据表中的字段,一一对应3.cmd输入命令:sqlldr userid=ydfp/ydfp@192.168.1.1:1001/YDYW control=e:\sql\imp.ctl log=e:\sql\222.lo...

oracle更新大量数据太慢,可以通过游标实现的例子

declare cursor city_cur isselect t.new_customer_id,t.old_customer_id from citsonline.crm_customer_tmp6 t where t.new_customer_id!=t.old_customer_idorder by new_customer_id; beginfor my_cur in city_cur loop update platform.crm_service_customer_bak sset s.customer_id=my_cur.new_customer_idwhere s.customer_id=my_cur.old_customer_id; /** 此处也可以单条/分批次提交,避免锁表情况 **/ if mod(city_c...

Oracle insert大量数据经验之谈(转)

在很多时候,我们会需要对一个表进行插入大量的数据,并且希望在尽可能短的时间内完成该工作,这里,和大家分享下我平时在做大量数据insert的一些经验。前提:在做insert数据之前,如果是非生产环境,请将表的索引和约束去掉,待insert完成后再建索引和约束。1.insert into tab1 select * from tab2;   commit;这是最基础的insert语句,我们把tab2表中的数据insert到tab1表中。根据经验,千万级的数据可在1小时内完成。但是该方法...

使用Bulk Binding批量绑定的模式高效处理ORACLE大量数据

-- Local variables herel_date_f DATE;l_date_t DATE;TYPE t_event_id IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;l_event_id t_event_id;CURSOR c_data(p_date_f DATE, p_date_t DATE) ISSELECT xe.event_id,xe.event_date,xe.application_id,xe.process_status_codeFROM xla_events xeWHERE xe.application_id = 707AND xe.process_status_code <> ‘P‘AND xe.event_date > p_date_fAND xe.event_date <= p_date_t;TYPE t_ta...

oracle快速插入大量数据【代码】

第一种方法: declare-- Local variables herem integer; begin-- Test statements here--输出开始时间dbms_output.put_line('start:'||sysdate);m:=0;--循环插入的数据量for i in 1..1000000 loopm:=m+1; --插入语句,其中'admintest'||m, 为admintest后面加数字,以便标识每条记录都不一样insert into KF_SEC_USER (USER_ID, GROUP_ID, EXTSYS_USER_ID, USER_NAME, USER_CNAME, PWD, MOBILE, PHONE, EMAIL, DESCRIPTION, ENABLED...

Oracle表删除大量数据后查询变慢问题

Oracle 表删除大量数据后,即使表中只有几行记录,但用select count(*) from table 来查询发觉都不会马上出来,原因是该表的空间大了,查询起来很慢。解决的方法是把该表所占用的表空间缩小,或者说释放表空间。alter table XXXX move; 这样处理后就释放了表空间了。但是释放表空间后,表的行号rowid会发生变化,而基于rowid的索引则会变成无效。因此该操作后必须重建索引。否则会 提示“ORA-01502: 索引SMP.ITEMLOG_MID_IDX或这类...

oracle导入Excel数据文件(大量数据)处理方法

1.将要导入的Excel数据文件转为csv文件(不需要标题)2.新建ctl文件 内容如下:load data infile e:\sql\fsfp.csv //csv文件位置 into table "TMP_INVOICE_TEST" //表名(测试时,表名小写会报错) fields terminated by , (NAME,TAX,ENO,CODE,TOTAL,TAXATION,URL,TIMES) //csv文件数据对应的数据表中的字段,一一对应 3.cmd输入命令:sqlldr userid=ydfp/ydfp@192.168.1.1:1001/YDYW control=e:\sql\imp.ctl log=e:\sql\222.logsq...

什么是从Oracle数据库获取大量数据到Java对象的最快方法【代码】

从Oracle数据库获取大量数据到Java对象的最快方法是什么. 有关数据组织方式的Oracle技巧吗? 我在考虑使用普通的JDBC而不是任何Hibernate样式库? 让Oracle生成一个文件然后从文件中读取会不会更好 – 尽管这必须以编程方式完成. 所有的想法都赞赏解决方法:我不是Java或JDBC专家,但如果您计划从数据库中删除大量行,则可能会通过增加连接上的预取行来获益.Connection conn = DriverManager.getConnection ("jdbc:oracle:","user","p...