gpt4 book ai didi

Oracle 和 i18n 支持

转载 作者:行者123 更新时间:2023-12-02 06:26:03 25 4
gpt4 key购买 nike

我们需要将不同语言的字符数据存储在同一个数据库模式中。 Oracle 10g 是我们的数据库。我希望已经完成此操作的人能给我关于如何 i18n 启用 oracle 10g db 的更具体说明。我们只需要存储来自多个语言环境的数据以及数据库级别的排序规则(希望所有主要数据库都支持这一点)支持。我们不需要日期、日期时间、数字、货币等的格式。

我阅读了一些有关 Oracle i18n 支持的文档,但对它们的许多 nls_* 属性有些困惑。我应该使用 nls_lang 或 nls_language 或 NLS_CHARACTERSET...

最佳答案

假设您从头开始构建数据库,而不是尝试改造现有数据库,这会带来其他问题。

在数据库中,需要确保数据库字符集支持所有要存储的字符。据推测,这意味着将数据库的 NLS_CHARACTERSET 设置为 AL32UTF8。就我个人而言,我更喜欢将 NLS_LENGTH_SEMANTICS 设置为 CHAR。这改变了 VARCHAR2(n) 的默认行为,分配 n 个字符的存储而不是 n 个字节。由于 AL32UTF8 是可变长度字符集,因此使用字节语义通常会出现问题,因为您要么必须声明 3 倍长的字段,最终导致不同的用户能够在同一字段中输入不同数量的字符。

NLS_LANG 是客户端设置。它标识客户端将请求将数据转换成的字符集。这通常取决于操作系统的代码页。

关于Oracle 和 i18n 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4020254/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com