免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: xfxy
打印 上一主题 下一主题

使用db2move load数据的问题 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2007-07-20 12:05 |只看该作者
原帖由 tony_hjy211 于 2007-7-19 17:37 发表
select  'SET INTEGRITY FOR IMMEDIATE CHECKED'||tabschema||'.'||tablename ||';' from syscat.tables
把结果执行就可以呀

这样也不行,如果依赖的表也处于完整性暂挂状态就得先对依赖的表进行检查
现在是用db2move import,然后使用db2look导出建立主外键和其它约束,对于大表就单独使用load

论坛徽章:
0
12 [报告]
发表于 2007-07-31 17:04 |只看该作者

回复 #11 xfxy 的帖子

那你就执行两遍set integrity好了。第一遍把依赖的表检查后,第二遍再进行被依赖的表的检查,应该可以解决问题。
如果数据库的数据很多的话,用import应该是比较麻烦的事情

论坛徽章:
0
13 [报告]
发表于 2007-07-31 17:48 |只看该作者
楼上的可能还不熟悉db2move import的用法,另外要是我有1000个表你就敲1000次键盘?

论坛徽章:
0
14 [报告]
发表于 2007-08-01 09:36 |只看该作者
因为你的表之间有约束关系,在用load方式倒入数据的时候,不进行约束检查。

论坛徽章:
0
15 [报告]
发表于 2007-08-01 10:44 |只看该作者
db2move尽量不要用

是个很麻烦的命令

论坛徽章:
0
16 [报告]
发表于 2007-08-02 11:21 |只看该作者
不是那个意思,import应该是记录日志的,还会在插入前检查约束,所以import速度会比较慢,而且大一点的表容易造成日志空间满。
我平时做都是用load,如果有约束存在,load完成后再用一次set。如果是导入的到新表的话,我一般是新建的表不会添加索引和约束,等load完了之后再建

论坛徽章:
0
17 [报告]
发表于 2007-08-07 11:31 |只看该作者
load方式记录一条日志,import方式数据insert的集合,所以每插入一条数据都记录日志,日志记录的效率比记录插入慢3倍,不过import对于每条数据都进行检查,会把所有错误信息返回来,并且即是有错,一般情况下数据也会被正常插入。而load方式一旦导入过程出错就会锁表。如果是手动操作数据库并且数据量很大,可以使用load操作,并且可以不做重建索引操作,如果是在应用程序中调用数据库操作,建议使用import,否则锁表后损失很大。也可以选择不记录日志的表
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP