DB2中的数据移动——装入
2007-05-20 16:19:24 来源:WEB开发网打开D盘的dump.000文件,会看到造成异常的那一行数据:"abcf","aaa","sdfg"
通过这个例子,我们可以理解,如果一行数据的格式不正确,在装入的时候会遭到拒绝,该行记录会放到DUMP文件中;而如果数据格式正确,但是不满足表的约束条件,该行记录会放到异常表中。
例十五:限制装入行数
用ROWCOUNT选项可以指定从文件开始处装入的记录数
LOAD FROM D:STAFF.TXT OF DEL ROWCOUNT 3 INSERT INTO STAFF1
例十六:出现警告信息时强令装入操作失败
在某些情况下,文件中的数据必须全部成功输入到目标表中才算成功,即使有一条记录出错也不行。在这种情况下,可以使用WARNINGCOUNT选项。
到D盘上打开STAFF.TXT文件,把第一列等于320的行替换为:"abcf","aaa","sdfg"
LOAD FROM D:STAFF.TXT OF DEL WARNINGCOUNT 1 INSERT INTO STAFF1
运行结果包含下面的警告:
SQL3118W 在行 "32" 列 "1" 中的字段值不能转换为 SMALLINT值,但是目标列不可为空。未装入该行。
SQL3185W 当处理输入文件的第 "32" 行中的数据时发生先前的错误。
SQL3502N 实用程序遇到了 "1" 个警告,它超过了允许的最大警告数。
此时无法对表STAFF1进行操作,例如
SELECT * FROM STAFF1
会返回:
ID NAME DEPT JOB YEARS SALARY COMM
------ --------- ------ ----- ------ --------- ---------
SQL0668N 由于表 "USER.STAFF1" 上的原因代码 "3",所以不允许操作。
SQLSTATE=57016
更多精彩
赞助商链接