【问题标题】:How to configure UTF8 character set in Oracle?如何在 Oracle 中配置 UTF8 字符集?
【发布时间】:2011-11-23 16:59:34
【问题描述】:

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

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

但是错误显示是这样的

ERROR at line 1:
ORA-01031: insufficient privileges

【问题讨论】:

  • 你应该很高兴你得到了权限错误,如下面的 Mark 解释,它比简单的更新更复杂

标签: oracle


【解决方案1】:

是的,好东西也失败了……这不是一个好主意……:-)

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

这是一个全新的数据库吗?还是现有数据库中已有数据?

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

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

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

有关完整故事,您应该查看 MOS 上的以下文档:

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

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 2018-01-15
    • 2020-02-06
    • 1970-01-01
    • 1970-01-01
    • 2015-12-12
    • 1970-01-01
    • 1970-01-01
    • 2013-08-17
    • 1970-01-01
    相关资源
    最近更新 更多