如何在Oracle中配置UTF8字符集?

时间:2011-11-23 08:42:50

标签: oracle

如何在Oracle中配置UTF8字符集?我尝试更新如下:

UPDATE NLS_DATABASE_PARAMETERS SET VALUE = 'UTF8' WHERE PARAMETER='NLS_CHARACTERSET';

但错误表明那样

ERROR at line 1:
ORA-01031: insufficient privileges

1 个答案:

答案 0 :(得分:10)

是的,那件事也失败了...这不是一个好主意......: - )

首先,对于Oracle中的UTF-8支持,您将要使用' AL32UTF8'字符集。

这是一个全新的数据库吗?或者已有数据的现有数据库?

如果我们正在谈论新数据库,您应该删除数据库,然后再创建它,在创建数据库时在DBCA中指定AL32UTF8字符集。

如果它是现有数据库,其中已有数据,那就有点复杂了。它目前使用什么字符集? AL32UTF8是该字符集的直接超集吗?

这真的是一个非平凡的主题。简而言之,您需要知道当前的字符集以及您要移动到的字符集,并且您需要运行“CSSCAN”'用于检查兼容性和数据转换问题的实用程序。

完整的故事,你应该查看关于MOS的以下文件:

  

将NLS_CHARACTERSET更改为AL32UTF8 / UTF8(Unicode)[ID   260192.1]

希望有所帮助。