regulares regexp_replace regexp_matches postgres expresiones example sql database postgresql internationalization locale

sql - regexp_replace - ¿Cuál es la diferencia entre las localidades C y Posix en Postgres?



select regex postgresql (2)

Sé que las bases de datos de la base de datos en Postgres son responsables del orden correcto de los caracteres nacionales, de las carcasas inferior / superior, etc.

Pero, ¿por qué hay dos configuraciones regionales neutrales en el lenguaje: posix y c ? ¿Hay alguna diferencia entre ellos o es solo una ubicación neutral con dos nombres diferentes?

ACTUALIZACIÓN Como indica Magnus Hagander en su respuesta, los locales POSIX y C son la misma configuración regional con nombres diferentes (no importa si Postgres está instalado en POSIX o en el sistema Windows). No sé cómo confirmar esta información: ¿ dónde buscar la sección de documentación adecuada?

La explicación de Magnus parece sensata, pero es extraño al mismo tiempo que hay dos nombres para la misma ubicación para elegir. ¿Cuál es el propósito de esto, solo para crear confusión?


De acuerdo con la especificación única UNIX ®, las configuraciones regionales POSIX y C son alias:

Las cadenas "C" y "POSIX" están reservadas como identificadores para la configuración regional POSIX

Por lo que se garantiza que sean los mismos en los sistemas POSIX. No sé hasta qué punto Windows Vista o 7 son compatibles con POSIX, pero probablemente se pueda encontrar una definición similar en la documentación de Microsoft.


Tenga en cuenta que PostgreSQL solo usa la configuración regional del sistema operativo y no tiene su propia definición de configuraciones regionales. Si su sistema es compatible con POSIX, C y POSIX serán exactamente la misma configuración regional: http://www.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap07.html (consulte la primera oración en 7.2).