本文内容来自YashanDB官网,原文内容请见 https://doc.yashandb.com/yashandb/23.3/zh/%E6%95%B0%E6%8D%AE%...

YashanDB服务端和客户端支持GBK、UTF8、GB18030、ASCII和ISO88591字符集,并支持根据场景需要配置数据库字符集。

# 背景信息

默认安装下,YashanDB服务端、Linux客户端、JDBC客户端等均为UTF8字符集,Windows客户端字符集为GBK。

当服务端和客户端设置的字符集不同时,数据库操作产生的最终结果可能会与预期不一致,此时在客户端输入的字符串会以服务端字符集格式进行处理。

YashanDB中国家字符集仅支持为UTF16,建库时指定,后续无法更改。

# 字符集配置原则

字符集配置原则
GBK如数据库只需要支持中文,数据量很大,性能要求也很高,建议选择双字节定长编码的中文字符集GBK。
UTF8如应用程序需要处理各种各样的文字,或者需要将处理结果发布到不同语言的国家或地区,建议选择Unicode字符集,即UTF8。此项为YashanDB推荐和默认的字符集。
ASCII如数据库只需要支持ASCII收录的拉丁系字符,如英语和一些西欧语言,则可以选择ASCII字符集。
ISO88591此字符集为单字节编码,能表示的字符范围是0-255,仅应用于全英文场景。
GB18030此字符集达到GB18030-2022标准的实现级别三。如果数据库有大量使用中文的场景,且对生僻字的显示、处理、输出有比较严格的要求,可以选择此字符集。

Note

YashanDB的GB18030字符集不支持ASCII范围以外的字符进行大小写的转换。

# 配置方法

# 设置服务端字符集

服务端字符集的限制如下:

  • 若数据库已创建,不允许再修改其字符集配置。
  • 如需使用TAC表或LSC表,数据库服务端的字符集必须设置为UTF8。

服务端字符集设置方法:

  • 初始数据库:在安装部署过程中,可通过设置yashandb.toml配置文件中的建库参数CHARACTER\_SET指定初始数据库的字符集。
  • 非初始数据库:在安装完成后,如需删除初始数据库并自定义新建数据库,可以通过CREATE DATABASE语句中的CHARACTER SET字段指定新数据库的字符集。

# 修改客户端字符集

  1. 在YashanDB客户端文件夹中新建client文件夹,并于client文件夹中新建空文件yasc\_env.ini。
  2. 设置环境变量。

    Note

    YASDB\_HOME路径需要指向YashanDB客户端文件夹。

  3. 通过修改客户端环境变量文件yasc\_env.ini设置客户端字符集。

YashanDB
1 声望0 粉丝

崖山数据库系统YashanDB是深圳计算科学研究院自主设计研发的新型数据库管理系统,融入原创的有界计算、近似计算、并行可扩展和跨模融合计算理论,可满足金融、政企、能源等关键行业对高性能、高并发及高安全性的...