在进行ORACLE 数据备份时,遇到导出错误:
EXP-00091
后看到是字符集问题,
结合以下文章,把字符集全部修改为UTF8.
原字符集:
SELECT DISTINCT (NLS_CHARSET_NAME(CHARSETID)) CHARACTERSET,
DECODE(TYPE#,
1,
DECODE(CHARSETFORM,
1,
'VARCHAR2',
2,
'NVARCHAR2',
'UNKOWN'),
9,
DECODE(CHARSETFORM,
1,
'VARCHAR',
2,
'NCHAR VARYING',
'UNKOWN'),
96,
DECODE(CHARSETFORM, 1, 'CHAR', 2, 'NCHAR', 'UNKOWN'),
112,
DECODE(CHARSETFORM, 1, 'CLOB', 2, 'NCLOB', 'UNKOWN')) TYPES_USED_IN
FROM SYS.COL$
WHERE CHARSETFORM IN (1, 2)
AND TYPE# IN (1, 9, 96, 112);
使用上面查询得到
1 AL16UTF16 NVARCHAR2
2 AL32UTF8s CHAR
3 AL32UTF8s CLOB
4 AL32UTF8s NCHAR
5 UTF8 NCLOB
6 UTF8 NVARCHAR2
7 UTF8 VARCHAR2
1.http://blog.csdn.net/andyxie407/archive/2007/12/05/1918674.aspx
2.http://www.dbform.com/html/2007/309.html
EXP-00091
后看到是字符集问题,
结合以下文章,把字符集全部修改为UTF8.
原字符集:
SELECT DISTINCT (NLS_CHARSET_NAME(CHARSETID)) CHARACTERSET,
DECODE(TYPE#,
1,
DECODE(CHARSETFORM,
1,
'VARCHAR2',
2,
'NVARCHAR2',
'UNKOWN'),
9,
DECODE(CHARSETFORM,
1,
'VARCHAR',
2,
'NCHAR VARYING',
'UNKOWN'),
96,
DECODE(CHARSETFORM, 1, 'CHAR', 2, 'NCHAR', 'UNKOWN'),
112,
DECODE(CHARSETFORM, 1, 'CLOB', 2, 'NCLOB', 'UNKOWN')) TYPES_USED_IN
FROM SYS.COL$
WHERE CHARSETFORM IN (1, 2)
AND TYPE# IN (1, 9, 96, 112);
使用上面查询得到
1 AL16UTF16 NVARCHAR2
2 AL32UTF8s CHAR
3 AL32UTF8s CLOB
4 AL32UTF8s NCHAR
5 UTF8 NCLOB
6 UTF8 NVARCHAR2
7 UTF8 VARCHAR2
1.http://blog.csdn.net/andyxie407/archive/2007/12/05/1918674.aspx
2.http://www.dbform.com/html/2007/309.html