DB2当中的Import命令:

  1)批量提交:
         保证插入的数据在commitcount以后进行一次commit
         示例:
         import from filename of del commitcount 10000 insert into tabname;
      2)批量插入:
         modified by compound把文件中的compound行记录作为一组一起导入,
         这个操作可以和上边的批量提交一起使用,比较理想。
         示例:
         import from filename of del modified by compound=50 insert into tabname;
      3)导入记录限制rowcount:
         只导入rowcount条数据,有时候,业务逻辑需要只导入部分数据,那么rowcount是一个不错的选择
         示例:
         import from filename of del rowcount 1000 insert into tabname;
      4)导入起点restartcount:
         从导入文件的第restartcount条记录开始导入
         示例:
         import from filename of del restartcount 20 rowcount 20 insert into tabname;
         说明:从20条开始导入20条数据
      5)有警告数据的条数限制warningcount:
         当导入的数据中,有警告或错误(例如类型不匹配,列不对应等造成的)并且条数超过
         warningcount时就会停止import。
         示例:
         import from filename of del warningcount 10 insert into tabname;
      6)禁止发出行警告modified by norowwarnings:
         示例:
         import from filename of del modified by norowwarnings warningcount 10 insert into tabname;
      7)LOB文件LOBS FROM:
         指出LOB的路径列:
         import from filename of del LOBS FORM '/home' modified by norowwarnings warningcount 10
         insert into tabname;
      8)对于自增序列(Generated always)建议不要对自增序列的表进行import操作,因为import对于自增序列,
         只有modified by identityignore和modified by identitymissing 2中操作,这2中操作都会改变自增序
         列的原值,这样如果导出表和表之间有基于自增序列的关联关系的话,就失去了数据本身的意义,所以
         建议尽量少用基于import的自增表的操作,可以用Load来代替Import。
         示例:
         import from filename of del modified by identityignore insert into tabname;
      9)MODIFIED BY DELPRIORITYCHAR  Db2默认load优先级策略为,record delimiter, character delimiter, 
         column delimiter,这样record delimiter得优先级最高,所以原始文件如果有换行的话load就认为是新的record,
         如果用户在某些情况下行里面包含了换行符(比如论坛里面的一条帖子,不可能把换行符删掉的),
         就必须用delprioritychar改变默认的优先级别,确保""之间的数据不管有没有换行符都被认为是同一条记录
         示例:LOAD CLIENT FROM 'F:\s1.del' OF DEL MODIFIED BY DELPRIORITYCHAR INSERT INTO DB2ADMIN.ZXTABLES 
     10)Load后表空间暂挂的处理:
         Copy YES/ NONRECOVERABLE 对于DMS表空间,load默认为copy NO 模式,此模式下,load完成后,
         表空间会处于暂挂状态,这时候只能查表中的数据,需要对表空间进行一次备份,才可以对表进行update、
         insert等操作,那么我们可以使用如上2个命令,对于Copy YES,load完成以后会自动进行一次备份操作;
         NONRECOVERABLE 指出load不可恢复,此命令符不会产生表空间暂挂,也不会自动进行表空间备份,
         但是他有一个缺点就是,不能恢复,当数据库进行回滚的时候,不能还原,危险等级还是比较高一点,
         不过个人觉得NONRECOVERABLE也比较实用。 
         例:
         LOAD CLIENT FROM 'F:\s1.del' OF DEL INSERT INTO DB2ADMIN.ZXTABLES NONRECOVERABLE 
         LOAD CLIENT FROM 'F:\s1.del' OF DEL INSERT INTO DB2ADMIN.ZXTABLES COPY YES 

猜你喜欢

转载自blog.csdn.net/m0_37604866/article/details/83684727