环境:windows32位平台(win7)
     oracle11.2数据库数据库字符集为UTF8
应用项目:ERP项目,应为有泰文,所以使用了UTF8字符集。使用exp命令导出一个用户的所有数据,几乎每张表都提示exp-00091警告,部分日志:
连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
已导出 ZHS16GBK 字符集和 UTF8 NCHAR 字符集
服务器使用 AL32UTF8 字符集 (可能的字符集转换)即将导出指定的用户...
. 正在导出 pre-schema 过程对象和操作
. 正在导出用户 XXX 的外部函数库名
. 导出 PUBLIC 类型同义词
. 正在导出专用类型同义词
. 正在导出用户 XXX 的对象类型定义
即将导出 XXX 的对象...
. 正在导出数据库链接
. 正在导出序号
. 正在导出簇定义
. 即将导出 XXX 的表通过常规路径...
. . 正在导出表                  ARAP_BALQRYLOG导出了           4 行
EXP-00091: 正在导出有问题的统计信息。
EXP-00091: 正在导出有问题的统计信息。
. . 正在导出表                    ARAP_BILLMAP导出了           2 行
EXP-00091: 正在导出有问题的统计信息。
EXP-00091: 正在导出有问题的统计信息。
EXP-00091: 正在导出有问题的统计信息。
EXP-00091: 正在导出有问题的统计信息。
EXP-00091: 正在导出有问题的统计信息。
EXP-00091: 正在导出有问题的统计信息。
. . 正在导出表                 ARAP_BILLQRYMAP导出了           5 行很多人说这个警告不会影响数据,单事实是再次导入一个UTF8的数据库(另一台服务器,用户和数据库环境一致)时,也报错,如下:连接到: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options经由常规路径由 EXPORT:V11.02.00 创建的导出文件警告: 这些对象由 XXX 导出, 而不是当前用户已经完成 ZHS16GBK 字符集和 UTF8 NCHAR 字符集中的导入
导入服务器使用 AL32UTF8 字符集 (可能的字符集转换)
. 正在将 XXX 的对象导入到 XXX
. . 正在导入表                "ARAP_BALQRYLOG"导入了           4 行
. . 正在导入表                  "ARAP_BILLMAP"导入了           2 行
. . 正在导入表               "ARAP_BILLQRYMAP"导入了           5 行
. . 正在导入表             "ARAP_BILLTYPE_MAP"导入了         243 行
. . 正在导入表                    "ARAP_DJCLB"导入了           4 行
. . 正在导入表                     "ARAP_DJFB"导入了          16 行
. . 正在导入表                  "ARAP_DJFKXYB"导入了          16 行
IMP-00017: 由于 ORACLE 错误 942, 以下语句失败:
 "ALTER TABLE "BD_CALBODY" ADD CONSTRAINT "F_BD_CALBODY1" FOREIGN KEY ("PK_AD"
 "DRESS") REFERENCES "BD_ADDRESS" ("PK_ADDRESS") ENABLE NOVALIDATE"
IMP-00003: 遇到 ORACLE 错误 942
ORA-00942: 表或视图不存在
IMP-00017: 由于 ORACLE 错误 942, 以下语句失败:
 "ALTER TABLE "BD_INVBASDOC" ADD CONSTRAINT "F_BD_INVBASDOC_1" FOREIGN KEY (""
 "PK_PRODLINE") REFERENCES "BD_PRODLINE" ("PK_PRODLINE") ENABLE NOVALIDATE"
IMP-00003: 遇到 ORACLE 错误 942
ORA-00942: 表或视图不存在
IMP-00017: 由于 ORACLE 错误 942, 以下语句失败:
 "ALTER TABLE "BD_STORDOC" ADD CONSTRAINT "F_BD_STORDOC1" FOREIGN KEY ("PK_AD"
 "DRESS") REFERENCES "BD_ADDRESS" ("PK_ADDRESS") ENABLE NOVALIDATE"
IMP-00003: 遇到 ORACLE 错误 942
ORA-00942: 表或视图不存在
即将启用约束条件...
IMP-00017: 由于 ORACLE 错误 2430, 以下语句失败:
 "ALTER TABLE "BD_CALBODY" ENABLE CONSTRAINT "F_BD_CALBODY1""
IMP-00017: 由于 ORACLE 错误 2430, 以下语句失败:
 "ALTER TABLE "BD_INVBASDOC" ENABLE CONSTRAINT "F_BD_INVBASDOC_1""
IMP-00017: 由于 ORACLE 错误 2430, 以下语句失败:
 "ALTER TABLE "BD_STORDOC" ENABLE CONSTRAINT "F_BD_STORDOC1""
成功终止导入, 但出现警告导致导入的数据多处错误,希望高人解决!

解决方案 »

  1.   

    我也遇到这个问题,不是表或视图不存在的问题,应该是导出的文件有问题导致的。据说可以通过修改注册表键值永久设置HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMExx\NLS_LANG为UTF8就可解决,我设了AMERICAN_AMERICA.UTF8,貌似不报错了,不知道导进去行不行。网上说的字符集是AMERICAN_AMERICA.AL32UTF8,还是会报错的
      

  2.   

    泰语我就会一句你好 sawadikrab(男性用语)sawadika(女性用语)