本地化顺序是与自然语言相关的字符顺序。语言环境按本地化顺序定义字符的顺序。
例如:即使字符 À 可能具有代码点 133,本地化顺序也可能将此字符列在 A 之后和 B 之前(A=65,À=133,B=66)。在这种情况下,字符串 B 排在 AC 之后,但排在 BD 之前。
Mabin McDonald MacDonald Madden
Mabin Madden MacDonald McDonald
如果 GLS 语言环境定义了本地化顺序,那么数据库服务器将按此本地化顺序对 NCHAR 和 NVARCHAR 列中的数据进行排序。有关按本地化顺序排序的数据的示例,请参阅表 2。
GBase 8s 支持 SET COLLATION 语句,该语句可以指定与 DB_LOCALE 设置不同的本地化整理。非缺省整理顺序的作用域为当前会话,但执行整理的数据库对象(如索引或触发器)在对 NCHAR 或 NVARCHAR 值进行排序时使用自它们创建以来的整理顺序。
在 SET COLLATION 语句已指定本地化整理顺序,并且您已完成所有需要该本地化顺序的排序任务之后,您可以复原 DB_LOCALE 设置通过发出 SQL 的 SET NO COLLATION 语句指示的整理。
SET COLLATION 语句仅影响数据库服务器执行的本地化整理操作。由客户机进行的 NCHAR 或 NVARCHAR 数据值排序会始终遵循 CLIENT_LOCALE 设置的整理顺序,而忽略任何 SET COLLATION 规范。有关可以定义客户机语言环境或服务器语言环境的环境变量的更多信息,请参阅客户机/服务器环境中的语言环境。