在使用db2过程中经常需要从一个库里拿数据到自己库里来,通常需要将源表的数据导为数据文件,通过数据文件load到自己库里。

这个过程如果两个库的字符编码不一致,常规导入导出就会出现中文乱码。

以下是两个库的字符编码不一致时的处理方法:

分别有两个库:GDZQ,ZHSJPT

db2 load乱码问题-LMLPHP

通过命令分别查看两个库的字符编码:

GDZQ:

db2 load乱码问题-LMLPHP

ZHSJPT字符集:

db2 load乱码问题-LMLPHP

此时将ZHSJPT库(GBK)中的表HRMRESOURCE数据迁入到GDZQ的库(UTF-8)中有两种方式:

1、导出数据文件时设置字符集位UTF-8:

  db2 "export to HRMRESOURCE.del of del modified by codepage=1208 select * from HRMRESOURCE"

  正常导入:

  db2 "load from HRMRESOURCE.del of del replace into HRMRESOURCE nonrecoverable"

2、正常导出,导入时设置字符集为GBK:

  db2 "export to HRMRESOURCE.del of del select * from HRMRESOURCE"

  设置字符集导入

  db2 "load from HRMRESOURCE.del of del modified by codepage=1386 replace into HRMRESOURCE nonrecoverable"

04-27 02:32