更新数据库极慢,大概分别更新和插入两万条记录,半天没有返回

ZXJ518 2004-01-07 11:33:11
更新数据库极慢,大概分别更新和插入两万条记录,半天没有返回。
用的数据库版本为Oracel 8.17
请大家分析一下原因。高份酬谢
...全文
84 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenamo9651 2004-01-08
  • 打赏
  • 举报
回复
用存储过程实现看!
yangguang1219 2004-01-08
  • 打赏
  • 举报
回复
去掉过多的索引,看一下执行计划表,要执行几个脚本(我这里没有数据库环境)
ZXJ518 2004-01-08
  • 打赏
  • 举报
回复
insert into table1(SERIAL_NUM,BATCH_ID,REGION_ID,OFFICE_ID,
ISSUE_CODE,START_DATE,END_DATE,ORDER_PRICE,ORDER_QUANTIFYORDER_AMOUNTORDER_RETAIL,ORDER_RETAIL_AMOUNT,ORDER_TIME,ORDER_TYPE,ORDER_FLAG,TOTAL_TIME,IS_CHECK,SUBS_ID,ADDR_SN,batch_time)
values(SEQUENCES_ISSUE_TOTAL_1.nextval,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)

update table2 set ORDER_RULE=? where ORDER_NUM=? and LINE_NUM=?"
snowy_howe 2004-01-08
  • 打赏
  • 举报
回复
能否贴出SQL语句参研一下
bzszp 2004-01-08
  • 打赏
  • 举报
回复
分段提交啊
比如1000条commit一次。
ZXJ518 2004-01-08
  • 打赏
  • 举报
回复
千真万确我是最后提交的,而且是批更新JDBC的executeBactch().
至于回滚段我正在想办法,各位有没有遇到类似问题,有时如何解决的?
qiyousyc 2004-01-08
  • 打赏
  • 举报
回复
更新数据库极慢,建立了索引可能会更慢。
增加回滚段试试
LGQDUCKY 2004-01-08
  • 打赏
  • 举报
回复
更新数据库极慢,::?
在你更新数据库的时候,数据库性能怎么样,再操作其他表试下。
beckhambobo 2004-01-08
  • 打赏
  • 举报
回复
是否大容量表,索引太多,倒而影响更新的速度,经常更新、插入的表索引就不必要了
刘颖博 2004-01-08
  • 打赏
  • 举报
回复
楼上的每次操作就commit一次,势必会造成更常的实践,如Tom所说,每次commit用的时间几乎一致
………………………………………………………………………………………………
建议楼主看sql的执行计划,看时候应用到索引,
如果没有索引,建议加索引,

但如果表仅仅是两万条记录,也不会慢的惊人的!
chanet 2004-01-08
  • 打赏
  • 举报
回复
为字段加 索引

更新or插入时
如果要到最后(少数据时效率高)才提交(commit;)的话,就要加大回退段.
如果想数据安全更新的话,每执行一次操作就 commit 一次. :)
--------------------------------------------------------
如上是软件上优化.
硬件的话,只好加内存,升级 cpu 了.

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧