Postgres上C和Posix语言环境有什么区别?

时间:2010-03-01 10:12:47

标签: sql database postgresql internationalization locale

我知道Postgres上的数据库区域设置负责正确的国家字符顺序,正确的下/上层等。

但为什么有两种与语言无关的语言环境:posixc?它们之间是否有任何区别,或者它只是一个具有两个不同名称的中性区域设置?

更新正如Magnus Hagander在他的回答中所述,POSIX和C语言环境是具有不同名称的相同语言环境(无论Postgres是安装在POSIX还是Windows系统上)。我不知道如何确认这些信息 - 在哪里查找适当的文档部分?

Magnus的解释似乎是明智的,但同时奇怪的是同一个语言环境有两个名称可供选择。 这样做的目的是什么 - 只是为了混淆?

2 个答案:

答案 0 :(得分:8)

请注意,PostgreSQL只使用操作系统区域设置,并且没有自己的locales定义。如果您的系统符合POSIX,则C和POSIX将完全相同:http://www.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap07.html(参见7.2下的第一句)。

答案 1 :(得分:1)

根据The Single UNIX ® Specification POSIX和C语言环境是别名:

  

字符串" C"和" POSIX"保留为POSIX语言环境的标识符

所以它们在POSIX系统上保证是相同的。我不知道Windows Vista或7与POSIX兼容的程度,但可能在Microsoft文档中找到类似的定义。

相关问题