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

Sql Postgres上的C语言环境和Posix语言环境有什么区别?,sql,database,postgresql,internationalization,locale,Sql,Database,Postgresql,Internationalization,Locale,我知道Postgres上的数据库区域设置负责正确的国家字符顺序、正确的下/上大小写等 但是为什么有两种语言无关的语言环境:posix和c?它们之间有什么区别吗?还是只有一个中性语言环境和两个不同的名称 更新正如Magnus Hagander在他的回答中所说,POSIX和C语言环境是相同的语言环境,但名称不同(无论Postgres是安装在POSIX还是Windows系统上)。我不知道如何确认此信息-在哪里可以找到适当的文档部分? 马格纳斯的解释似乎很合理,但奇怪的是,同一地区有两个名字可供选择这样

我知道Postgres上的数据库区域设置负责正确的国家字符顺序、正确的下/上大小写等

但是为什么有两种语言无关的语言环境:
posix
c
?它们之间有什么区别吗?还是只有一个中性语言环境和两个不同的名称

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


马格纳斯的解释似乎很合理,但奇怪的是,同一地区有两个名字可供选择这样做的目的是什么?只是为了制造混乱?

请注意,PostgreSQL只使用操作系统区域设置,没有自己的区域设置定义。如果您的系统符合POSIX,C和POSIX将是完全相同的语言环境:(参见7.2下的第一句)。

根据POSIX和C,语言环境是别名:

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


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

OK,如果Postgres安装在兼容POSIX的系统上,POSIX语言环境与C语言环境相同。但对于不符合要求的系统又如何呢?Windows Vista POSIX兼容吗?我在Postgres上安装了Vista box,我总是不确定该选择POSIX还是C,因为这两个选项都是可能的(在许多其他国家特定的地区中)。我应该在哪里找到有关POSIX和C语言环境的信息?这在Windows Vista上意味着什么(差异)?C语言环境在Windows上的工作方式应该相同。我不确定POSIX语言环境是否存在,但如果确实存在,我希望它能以同样的方式工作——他们实现一个名为POSIX的语言环境而不使其与POSIX兼容是愚蠢的。