• Postgresql:本地化支持


    本地化:指有关字符、排序、数字格式、货币符号等等的文化偏好

    postgresql通过两个途径提供本地化支持:

    • 1。通过所使用的os获取本地化偏好
    • initdb.exe 或自动从操作系统的环境中获取本地化信息,如果获取失败,postgressql使用默认的通用的C设置
    • initdb.exe当然你可以使用--local=loacl_set来指定本地化规则;
    • initdb.exe也允许你指定下面将要提到的具体本地化细节参数进行详细的细节设置
    • 2。提供几个本地化设置参数定制每个细节方面
    • lc_collate:排序规则
    • lc_ctype:字符集
    • lc_numeric:数字格式
    • lc_time:日期时间格式
    • lc_monetary:货币格式
    • lc_messages:消息语言

    本地化设置影响以下方面:

    • 根据文本数据排序 order by
    • like 查找
    • upper、lower、initcap字符函数
    • to_char系列数据转换函数
    • 注意:本地化是有代价的。会影响性能,同时减慢字符数据处理,组织like 使用普通索引

    普通、普遍、难点、卖点的字符集支持问题

    任何一个应用程序想要在全球成功,支持不同的本地化的字符集是不可回避的问题。postgresql支持大量的字符集(编码),结构上分为三个层次:server、转换函数、client。

    • server端的默认字符集编码是在使用initdb.exe初始化时确定的  --注意euc_cn就是简体中文字符集。而gb18030 和 gbk=windows936 是仅仅可以用在客户端的字符集
    • 转换函数postgresql预制了很多,可以通过create conversion增加自己的转换函数  --需要注意server 和 client的可用性问题(字符集兼容问题)
    • client端的设置
    1. set client_encoding to character_set_name
    2. set names character_set_name
    3. psql.exe使用\encoding character_set_name
    4. 调用libpq的库的程序:调用客户端字符集编码设置函数
    5. 使用配置文件选项:client_encoding
    6. 使用os环境变量指定:PGCLENTENCODING
  • 相关阅读:
    国标ikecin插座资料
    LED平面管测试资料
    elementui使用MessageBox 弹框自定义内容$msgbox:实现一个textarea文本输入框
    ajax请求的时候后台有三个服务器地址
    前端用xshell向后端服务器部署项目
    vue+echarts 实现map3D地图tooltip弹框读取后台返回的数据,并显示弹框
    AWS网络架构及知识概述
    K8s控制器 StatefulSet
    pod的数据持久化2 NFS
    Pod的数据持久化1 hostPath 和emptyDir
  • 原文地址:https://www.cnblogs.com/jinzhenshui/p/1513802.html
Copyright © 2020-2023  润新知