社区
Oracle
帖子详情
求插入大量记录的高效方法?
qiujin
2005-09-27 03:16:55
我有一表CUSTOMER,拥有巨量记录,其中有一字段VALUE:NUMBER(8,4),现要求将原表中所有记录作为新记录插入,除VALUE增加1000外,其余字段值按原表字段值不变,原表中的旧记录保持不变。
望各位多多指教!力求高效!
...全文
225
18
打赏
收藏
求插入大量记录的高效方法?
我有一表CUSTOMER,拥有巨量记录,其中有一字段VALUE:NUMBER(8,4),现要求将原表中所有记录作为新记录插入,除VALUE增加1000外,其余字段值按原表字段值不变,原表中的旧记录保持不变。 望各位多多指教!力求高效!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Qqwwee_Com
2005-09-27
打赏
举报
回复
学习
===============================
CSDN小助手 是一款脱离浏览器也可以使用csdn论坛的
软件!
界面: http://qqwwee.com/
下载: http://qqwwee.com/csdn.rar 包含源代码
sasacat
2005-09-27
打赏
举报
回复
我写的本来就是这个意思啊,放心地用吧....
insert /*+ append */ into CUSTOMER nologging
select name,VALUE+1000,age from CUSTOMER;
或者
insert /*+ append */ into CUSTOMER(name,VALUE,age )
select name,VALUE+1000,age from CUSTOMER;
也是一样
laofang
2005-09-27
打赏
举报
回复
刚才漏了一点,重新写过:
insert /*+ append */ into CUSTOMER nologging
select /*+ parallel(old,8) */ * from CUSTOMER_OLD old;
insert /*+ append */ into CUSTOMER(a,b,c,...,VALUE) nologging
select /*+ parallel(old,8) */ a,b,c,...,VALUE+1000 from CUSTOMER_OLD old;
laofang
2005-09-27
打赏
举报
回复
我没什么高招,就插2次;在sasacat(傻傻猫) 的基础上再加上并行处理,速度会快一些:
insert /*+ append */ into CUSTOMER nologging
select /*+ parallel(a,8) */ * from CUSTOMER;
insert /*+ append */ into CUSTOMER(a,b,c,...,VALUE) nologging
select /*+ parallel(a,8) */ a,b,c,...,VALUE+1000 from CUSTOMER;
qiujin
2005-09-27
打赏
举报
回复
我的意思就是:
假设我表原来有三条记录:
NAME VALUE AGE
张三 2900 26
李四 3500.99 34
王五 8709 38
通过插入记录后,表中记录为:
NAME VALUE AGE
张三 2900 26
李四 3500.99 34
王五 8709 38
张三 3900 26
李四 4500.99 34
王五 9709 38
sasacat
2005-09-27
打赏
举报
回复
licsth() 你的并不算高效啊。还是要记录日志。
我的就是真正高效了,...加了 nologging 关键字,以保证不记录在日志里
然后提示了/*+ append */表示这是增加数据
小李木耳
2005-09-27
打赏
举报
回复
你说的不是要加1000行吧?那也得符合逻辑呀,按照你阐述的,真是不明白。
小李木耳
2005-09-27
打赏
举报
回复
“....,除VALUE增加1000外,其余字段值按原表字段值不变,原表中的旧记录保持不变。”
楼主什么意思吗?又说:“我的旧记录的VALUE字段不要加1000,保持不变。”明显矛盾啊!
小李木耳
2005-09-27
打赏
举报
回复
没法再明白了,按照我的sql执行一下就行了:
INSERT INTO CUSTOMER
(.., VALUE, ..,...)
(SELECT .., VALUE+1000, ..,...from CUSTOMER )
你不是要我说明...吧,是你要插入那张表的其他字段。
qiujin
2005-09-27
打赏
举报
回复
我的旧记录的VALUE字段不要加1000,保持不变。
qiujin
2005-09-27
打赏
举报
回复
licsth():我也不太明白你说的方法,能否解释一下?
qiujin
2005-09-27
打赏
举报
回复
sasacat(傻傻猫):我不太明白你说的方法,能否解释一下?
小李木耳
2005-09-27
打赏
举报
回复
好你个‘ sasacat(傻傻猫)’又碰到你了,我这几天没留意你加了一个角了。
我追...
qiujin
2005-09-27
打赏
举报
回复
望大家说的详细、清楚点。谢谢!
小李木耳
2005-09-27
打赏
举报
回复
但注意+1000之内不得有主key重复!!!
sasacat
2005-09-27
打赏
举报
回复
insert /*+ append */ into CUSTOMER(a,b,c,...,VALUE) nologging
select a,b,c,...,VALUE+1000 from CUSTOMER;
小李木耳
2005-09-27
打赏
举报
回复
INSERT INTO CUSTOMER
(.., VALUE, ..,...)
(SELECT .., VALUE+1000, ..,...from CUSTOMER )
jessica_zz
2005-09-27
打赏
举报
回复
select * from CUSTOMER for update;
c#向Access数据库中批量
插入
大量
记录
的
方法
本文介绍了一种在Access数据库中
高效
批量
插入
大量
数据的
方法
,通过使用Microsoft.Office.Interop.Access.Dao命名空间,实现了从原先耗时1.5分钟减少到仅5秒的显著性能提升。
oracle
高效
插入
数据,Oracle:
高效
插入
大量
数据经验之谈
本文分享了在Oracle数据库中
高效
插入
大量
数据的经验,包括禁用日志、使用APPEND hint、并行DML、分区并发
插入
以及批量绑定等
方法
,旨在减少归档产生、提高
插入
速度和并发性能。
大量
List数据批量
插入
数据库很
高效
的
方法
本文介绍一种
高效
的
方法
,用于将
大量
数据(百万级别)批量
插入
到Oracle数据库。通过将数据分割成小批次(每批800条
记录
)进行
插入
操作,提高了整体的执行效率。文章详细展示了如何使用Java和MyBatis实现这一过程。
MySQL 中快速
插入
大量
数据
博客介绍了在 MySQL 中快速
插入
大量
数据(如 20 万条
记录
)的
方法
,包括禁用索引和约束、使用批量
插入
、事务、禁用二进制日志、调整配置、使用 LOAD DATA INFILE 等,还给出示例脚本,并提醒备份数据、先在测试环境验证及监控性能。
SpringBoot
高效
批量
插入
百万数据
本文探讨了在SpringBoot中处理
大量
数据
插入
的性能问题,介绍了逐条
插入
、XML拼接、MyBatis-Plus批量
插入
、手动开启批处理、多线程和异步
插入
等
方法
,并提供了优化建议。,
Oracle
17,134
社区成员
55,258
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章