• GBase8s数据库对 SET COLLATION 的限制


    虽然 SET COLLATION 使得您能在会话内动态地更改数据库服务器的对照顺序,但您应了解对

    SET COLLATION 语句可发挥作用的范围的几个限制。

    仅数据库服务器执行的对照受影响。对数据排序的客户端进程不受 SET COLLATION 影

    响。

    仅当前会话受影响。其他会话不受您的 SET COLLATION 语句的直接影响,但数据库服

    务器会使用它们的创建时对照顺序来设置任何数据库对象,这些数据库对象是您在已成功

    地运行了 SET COLLATION 之后创建的那些。

    对对照顺序的更改不更改代码集。数据库服务器通常使用由 DB_LOCALE 指定的代码

    集。

    仅按照特定于语言环境的顺序对 NCHAR 和 NVARCHAR 值进行排序。

    处理来自不同的代码集的字符

    由于 SET COLLATION 仅更改对照顺序,而不是当前的语言环境或代码集,因此您通常不可使用此

    语句来将来自不同的语言环境的字符数据插入到同一数据库之内。如果数据库需要存储来自两种或

    多种语言的字符,这些语言内在地需要不同的代码集或代码页,则您必须改为使用支持 Unicode

    的语言环境。对于 GBase 8s ESQL/C 应用,以及对于使用 GBase 8s GLS 库的其他客户端应用,

    其语言环境支持 UTF-8 字符编码的数据库可存储相应于来自多种自然语言的不同的字符集的代码

    点的字符,但仅当下列条件全都满足时:

    当数据库服务器实例启动时,设置 GL_USEGLU 环境变量为 1。

    当创建数据库时,设置 DB_LOCALE 环境变量为有效的 Unicode 语言环境。

    设置 CLIENT_LOCALE 环境变量为数据库服务器的 DB_LOCALE 设置支持的有效的

    Unicode 语言环境。

    对于 GBase 8s 要使用“Unicode 的国际组件”(ICU)4.8.1 库来支持最高达 6.0 的 Unicode 的版

    本,在启动服务器之前,在服务器环境中必须将 GL_USEGLU 环境变量设置为值 1(一)。在使

    用 UTF-8 字符编码的数据库中,此设置初始化启用 Unicode 对照和 SQL 操作的那些转换规则,

    包括 Chinese GB18030-2000 代码集。此转换仅适用于以已设置的 GL_USEGLU=1 创建了的数据

    库。

    注意: 然而,GL_USEGLU 环境变量对 JDBC 客户端应用不起作用 ,包括 GBase 8s JSON 兼容性

    线协议 listener 的那些应用。要在 Unicode 语言环境中正确地支持 JDBC 应用,没有在客户端

    或在服务器环境中将 GL_USEGLU 设置为 1 的要求

  • 相关阅读:
    【Leetcode】1829. Maximum XOR for Each Query
    暑假基于springboot开发的工厂项目学习总结
    【NeurIPS && 图谱问答】知识图谱(KG) Mutil-Hop推理的锥形嵌入方法(中科院--含源码)
    大数据:Sqoop 简介与安装
    vue封装自己的组件库 01.封装button组件
    Linux内核之I2C协议
    02-ROS的工程结构
    QGraphicsView制作绘制图元工具资料整理(鼠标、平移、缩放)
    用anacnda创建虚拟环境用不用指定python版本
    mysql的配置文件(my.ini或者 my.cnf)所在位置
  • 原文地址:https://blog.csdn.net/weixin_48486849/article/details/125887725