2011-11-07 35 views
2

我正在使用oracle 10g。数据库的字符集如下:NLS_NCHAR_CHARACTERSET AL16UTF16 NLS_CHARACTERSET AL32UTF8。如何从oracle表中的外部表中加载®(圆圈“R”)?

我在一个字段中有一个.txt文件,并且当一个外部表格中加载了相同的文件时,符号被转换为'?'。

请建议。

+0

你能提供外部表的定义吗? – Chandu

+1

该列的数据类型为nvarchar2(500字节)。 'CREATE TABLE “APP_XXX_XX_XXXX”( “PRODUCT_NAME” NVARCHAR2(500字节) “XXX_XXX_XXXXX” VARCHAR2(1个字节), “XXX_XXX_XXXXX” NUMBER(9), “XXX_XXX_XXXXX” NUMBER(4), “XXX_XXX_XXXXX” NUMBER( 2), “XXX_XXX_XXXXX” NUMBER(3)) ORGANIZATION EXTERNAL (TYPE ORACLE_LOADER 默认目录 “DIR” 接入参数DELIMITED BY '〜^' CHARACTERSET 'AL32UTF8' LOGFILE APP_XXX_XX_XXXX_%A_%P (记录。 LOG' BADFILE'APP_XXX_XX_XXXX_%A_%P.BAD' DISCARDFILE'APP_XXX_XX_XXXX_%A_%P.DSC' LOCATION('FILE1.TXT') ) REJECT LIMIT UNLIMITED' – antimago

+0

User NVARCHAR而不是VARCHAR2并使用CHAR而不是字节例如:'VARCHAR2(1 BYTE)'变成'NVARCHAR2(1 CHAR)' – Chandu

回答

0

你在哪里看到®被转换为问号?在编码查看表格而不是表格时,可能会出现问题。我也会检查你正在使用什么来加载数据库。 UTF8应该支持这个角色。

+0

我看到了?在Toad.It不是编码的问题,因为我已经将蟾蜍的编码设置为UTF-8,而.txt也编码为utf-8。我正在使用外部表来读取带有符号的.txt文件。现在,当我通过外部表格看到它时,在桌子里。 – antimago

相关问题