我可能需要更改 Postgresql 配置中 lc_messages、lc_monetary、lc_numeric 和 lc_time 的区域设置。但是,在执行此操作之前,我需要了解它们具体会影响哪些内容。Postgresql 文档列出了受影响的内容,但仍然留下了很多问题。例如,文档中说upper
和lower
函数会受到影响。这是所有设置都受影响吗?还是只有部分设置受影响?文档中还说 to_char() 会受到影响。具体是如何影响的?
我想提前知道此更改是否需要更改应用程序代码,那么是否有好的资源可以帮助我生成要测试的功能/场景列表?
upper()
影响的设置lower()
是什么LC_CTYPE
?例如,如果我在 Linux 系统上创建以下数据库(其他操作系统上的排序规则名称可能不同):然后我得到以下信息:
但我得到了
IZMIR
不同的LC_CTYPE
设置。LC_CTYPE
还会影响字符的分类。例如,使用LC_CTYPE "C"
,阿拉伯数字将不会被归类为数字:LC_COLLATE
确定字符串的排序和比较方式。例如,查看以下英语和捷克语排序规则中的比较结果:LC_MESSAGES
确定服务器错误消息和服务器日志使用的语言。LC_TIME
确定如何to_char()
呈现本地化的日期时间格式字符串:LC_NUMERIC
to_char()
确定数字的本地化小数和组分隔符:LC_MONETARY
确定使用的货币符号to_char()
和数据类型money
: