互联网服务load

如何定位load的错误行

操作系统:Windows Server 2003DB2 : db2exp v9.5 fp0

Load导入del文件后报错信息如下:
SQL3109N  实用程序正在开始从文件 "C:db2dartworkfixTS5T69.DEL" 装入数据。

SQL3500W  在时间 "2014-07-11 10:41:52.443150",实用程序在开始 "LOAD"。

SQL3519W  开始装入一致点。输入记录数 = "0"。

SQL3520W  “装入一致点”成功。

SQL3125W  因为数据比目标数据库列长,所以第 "F1-249" 行第 "80"
列中的字符数据被截断。

SQL0180N  日期时间值的字符串表示法的语法不正确。  SQLSTATE=22007

SQL3185W  处理输入文件的第 "F1-249" 行中的数据时,发生前一个错误。

SQL3227W  记录标记 "F1-249" 指的是用户记录号 "502"。

SQL3125W  因为数据比目标数据库列长,所以第 "F0-385" 行第 "80"
列中的字符数据被截断。

SQL0180N  日期时间值的字符串表示法的语法不正确。  SQLSTATE=22007

SQL3185W  处理输入文件的第 "F0-385" 行中的数据时,发生前一个错误。

SQL3227W  记录标记 "F0-385" 指的是用户记录号 "771"。

SQL3110N  实用程序已完成处理。从输入文件读了 "816" 行。

SQL3519W  开始装入一致点。输入记录数 = "816"。

SQL3520W  “装入一致点”成功。

SQL3515W  在时间 "2014-07-11 10:41:52.529438",实用程序已经完成了 "LOAD"。

SQL3500W  在时间 "2014-07-11 10:41:52.530817",实用程序在开始 "BUILD"。

SQL3213I  建立索引方式为 "REBUILD"。

SQL3515W  在时间 "2014-07-11 10:41:52.563892",实用程序已经完成了 "BUILD"。

SQL3107W  消息文件中至少有一条警告消息。


读取行数         = 816
跳过行数         = 0
装入行数         = 814
拒绝行数         = 2
删除行数         = 0
落实行数         = 816


通过以上信息,发现有两处警告信息如下:
SQL3125W 因为数据比目标数据库列长,所以第 "F1-249" 行第 "80"
列中的字符数据被截断。
SQL3125W 因为数据比目标数据库列长,所以第 "F0-385" 行第 "80"
列中的字符数据被截断。


由于LOAD自动采用多CPU加载,无法定位F1-249与F0-385是数据文件中的哪两行,这种情况下如何定位错误?请各专家支招,谢谢!
参与6

4同行回答

ppjava2009ppjava2009系统工程师用友汽车信息科技(上海)有限公司
如果DB2 V8.1,V9.1是:   将 load 工具的 CPU_PARALLELISM 选项设置为 1,保证 load 在加载数据的过程中 ...jeffbeck 发表于 2014-7-11 14:30 谢谢您给出非常详细的分析方法。显示全部
如果DB2 V8.1,V9.1是:
   将 load 工具的 CPU_PARALLELISM 选项设置为 1,保证 load 在加载数据的过程中 ...
jeffbeck 发表于 2014-7-11 14:30

谢谢您给出非常详细的分析方法。收起
互联网服务 · 2014-07-11
浏览3136
ppjava2009ppjava2009系统工程师用友汽车信息科技(上海)有限公司
感谢wangzk0206,这点细节没有注意到。显示全部
感谢wangzk0206,这点细节没有注意到。收起
互联网服务 · 2014-07-11
浏览3080
jeffbeckjeffbeck数据库管理员某银行
如果DB2 V8.1,V9.1是:   将 load 工具的 CPU_PARALLELISM 选项设置为 1,保证 load 在加载数据的过程中始终只适用一颗 CPU,那么此时行标识中 CPU 部分始终会是“ F0 ”,而行部分则就是总的行数了DB2V9.5 以后,2楼方法就可以了 SQL3227W  记录标记 "F1-249"...显示全部
如果DB2 V8.1,V9.1是:
   将 load 工具的 CPU_PARALLELISM 选项设置为 1,保证 load 在加载数据的过程中始终只适用一颗 CPU,那么此时行标识中 CPU 部分始终会是“ F0 ”,而行部分则就是总的行数了

DB2V9.5 以后,2楼方法就可以了
SQL3227W  记录标记 "F1-249" 指的是用户记录号 "502"。  --------502
SQL3227W  记录标记 "F0-385" 指的是用户记录号 "771"。  --------771

参考:
  http://www.ibm.com/developerwork ... cles/dm-0902yuancg/收起
银行 · 2014-07-11
浏览3279
wangzk0206wangzk0206联盟成员数据库管理员scrcu
SQL3227W  记录标记 "F1-249" 指的是用户记录号 "502"。  --------502SQL3227W  记录标记 "F0-385" 指的是用户记录号 "771"。  --------771显示全部
SQL3227W  记录标记 "F1-249" 指的是用户记录号 "502"。  --------502
SQL3227W  记录标记 "F0-385" 指的是用户记录号 "771"。  --------771收起
银行 · 2014-07-11
浏览3277

提问者

ppjava2009
系统工程师用友汽车信息科技(上海)有限公司
擅长领域: 中间件数据库java

相关问题

问题状态

  • 发布时间:2014-07-11
  • 关注会员:2 人
  • 问题浏览:9761
  • 最近回答:2014-07-11
  • X社区推广