포스트그레SQL지원 세 가지 접근 방식을 사용한 현지화:
운영 체제의 로캘 기능을 사용하여 다음 작업을 수행합니다. 로케일별 조합 순서, 숫자 형식 지정, 번역된 메시지 및 기타 측면.
다음에 정의된 명시적 다중 바이트 문자 집합 사용포스트그레SQL지원할 서버 언어에 맞는 것보다 더 많은 문자가 필요한 언어 단일 바이트 사이에 문자 세트 기록을 제공합니다. 클라이언트와 서버. 지원되는 문자 세트 수는 다음과 같습니다. 서버가 컴파일될 때 고정되며 내부적으로는 문자열 비교와 같은 작업에는 확장이 필요합니다. 각 문자를 32비트 단어로 변환합니다.
단일 바이트 문자 인코딩은 더 많은 정보를 제공합니다. 다중이지만 단일 바이트 사용자를 위한 경량 솔루션 문자 집합.
로케일지원은 문화적 선호를 존중하는 응용 프로그램 알파벳, 정렬, 숫자 서식 등포스트그레SQL표준 ISO C를 사용하며POSIX-유사 로케일 시설 서버 운영 체제에서 제공합니다. 추가로 자세한 내용은 시스템 설명서를 참조하세요.
로케일 지원이 내장되어 있지 않습니다.토토 사이트 추천기본적으로; 활성화하려면
공급하다--활성화-로케일옵션
에구성스크립트:
사용자가 선호하는 언어로 번역된 메시지를 활성화하려면
언어,--enable-nls옵션
사용해야 합니다. 이 옵션은 다른 로케일과 독립적입니다.
지원하다.
특정 문화적 규칙에 관한 정보 사용 여부는 표준 환경 변수에 따라 결정됩니다. 당신이 다른 프로그램에서 현지화된 동작을 받고 있습니다. 아마도 이미 설정되어 있을 것입니다. 가장 간단한 설정 방법 현지화 정보는 다음과 같습니다.랭변수, 예:
내보내기 LANG=sv_SE
로케일을 스웨덴어로 설정합니다(sv) 스웨덴에서 사용됨(SE). 다른 가능성은 다음과 같습니다.en_US(미국 영어) 및fr_CA(캐나다, 프랑스어). 1개 이상인 경우 문자 집합은 로케일에 유용할 수 있습니다. 사양은 다음과 같습니다.cs_CZ.ISO8859-2. 사용 가능한 로케일 시스템의 이름은 제공된 내용에 따라 다릅니다. 운영 체제 공급업체 및 설치된 항목에 따라 결정됩니다.
때때로 여러 규칙을 혼합하는 것이 유용합니다. 예를 들어 로케일은 미국 대조 규칙을 사용하지만 스페인어 메시지를 사용합니다. 이를 위해 재정의되는 환경 변수 세트가 존재합니다. 기본값은랭특정에 대한 범주:
| LC_COLLATE | 문자열 정렬 순서 |
| LC_CTYPE | 문자 분류(문자란 무엇입니까? 대문자에 해당합니까?) |
| LC_MESSAGES | 메시지 언어 |
| LC_MONETARY | 통화 금액 형식 |
| LC_NUMERIC | 숫자 형식 지정 |
| LC_TIME | 날짜 및 시간 형식 |
참고:일부 메시지 토토 사이트 추천 라이브러리도 환경 변수를 살펴보세요언어다른 모든 로케일보다 우선 적용됨 언어 설정을 위한 설정 메시지. 의심스러운 경우 설명서를 참조하세요. 귀하의 운영 체제, 특히gettext매뉴얼 페이지, 자세한 내용은.
시스템이 로케일이 없는 것처럼 작동하도록 하려면 지원하려면 특수 로케일을 사용하세요.C또는POSIX또는 간단히 모두 설정 해제 로케일 관련 변수.
서버의 로케일 동작이 결정된다는 점에 유의하세요 서버가 아닌 서버가 보는 환경 변수에 의해 어떤 클라이언트의 환경. 그러므로 다음 사항을 주의해서 설정하세요. 서버를 시작하기 전에 변수. 이것의 결과 클라이언트와 서버가 서로 다른 로케일로 설정된 경우 메시지는 위치에 따라 다른 언어로 나타날 수 있습니다. 그들은 유래했다.
그LC_COLLATE그리고LC_CTYPE변수는 정렬 순서에 영향을 미칩니다. 인덱스. 따라서 이러한 값은 모든 경우에 대해 고정된 상태로 유지되어야 합니다. 특정 데이터베이스 클러스터 또는 텍스트 열의 인덱스는 부패하다.포스트그레SQL값을 기록하여 이를 시행합니다.LC_COLLATE그리고LC_CTYPE다음이 보는 것initdb. 그만큼 서버는 자동으로 이 두 값을 채택합니다. 시작했다; 다른 쪽만LC_카테고리 서버 시작 시 환경에서 설정할 수 있습니다. 즉, 데이터베이스 클러스터에서는 하나의 조합 순서만 사용할 수 있습니다. 그리고 그것은에서 선택됩니다initdb시간.
로캘 지원은 특히 다음에 영향을 미칩니다. 특징:
로케일 지원 사용의 유일한 심각한 단점포스트그레SQL는 속도입니다. 그래서 실제로 필요한 경우에만 로케일을 사용하십시오. 주목해야 할 점 특히 C가 아닌 로케일을 선택하면 색인이 비활성화됩니다. 최적화좋아요그리고~연산자, 이는 거대한 이를 사용한 검색 속도의 차이 연산자.
설명에도 불구하고 로캘 지원이 작동하지 않는 경우 위에서 운영 체제의 로캘 지원을 확인하세요. 올바르게 구성되었습니다. 특정 로캘이 다음과 같은지 확인하려면 설치되어 있고 사용할 수 있습니다.펄20579_20662펄 -다섯다음과 같이 불평할 것입니다:
$ LC_CTYPE='not_exist' 내보내기
$ perl -v
perl: 경고: 로캘 설정에 실패했습니다.
perl: 경고: 로케일 설정을 확인하십시오:
LC_ALL = (설정되지 않음),
LC_CTYPE = "존재하지 않음",
LANG = (설정되지 않음)
지원되며 시스템에 설치됩니다.
perl: 경고: 표준 로케일("C")로 대체됩니다.
로케일 파일이 올바른 위치에 있는지 확인하세요. 가능한 위치는 다음과 같습니다:/usr/lib/locale (리눅스, 솔라리스), /usr/share/locale (리눅스), /usr/lib/nls/loc (DUX 4.0). 로케일 매뉴얼 페이지를 확인하십시오. 확실하지 않은 경우 시스템을 사용하세요.
확인해 보세요포스트그레SQL이다 실제로 당신이 생각하는 로케일을 사용합니다.LC_COLLATE그리고LC_CTYPE설정은 다음에서 결정됩니다.initdb시간이며 변경할 수 없습니다. 반복하지 않고initdb. 다음을 포함한 기타 로케일 설정LC_MESSAGES그리고LC_MONETARY환경에 따라 결정됩니다. 포스트마스터는 에서 시작되고 다음으로 변경될 수 있습니다. 간단한 포스트마스터 재시작. 를 확인할 수 있습니다.LC_COLLATE그리고LC_CTYPE다음을 사용한 데이터베이스 설정contrib/pg_controldata유틸리티 프로그램.
디렉토리src/테스트/로케일다음에 대한 테스트 모음을 포함합니다.포스트그레SQL의 로캘 지원.
다음을 통해 서버측 오류를 처리하는 클라이언트 응용프로그램 오류 메시지의 텍스트를 구문 분석하면 분명히 서버의 메시지가 다른 위치에 있을 때 발생하는 문제 언어. 그러한 응용 프로그램을 만들려면 다음을 수행해야 합니다. 이 상황에 대처할 계획을 세우십시오. 임베디드 SQL 인터페이스(ecpg)도 이 문제의 영향을 받습니다. 현재 권장되는 사항은 다음과 같습니다. 서버와 인터페이스함ecpg응용 프로그램을 보내도록 구성되었습니다. 영어로 된 메시지입니다.
메시지 번역 카탈로그를 유지하려면 다음이 필요합니다. 보고 싶어하는 많은 자원봉사자들의 지속적인 노력토토 사이트 추천말해 보세요 선호하는 언어는 글쎄요. 귀하의 언어로 된 메시지가 현재 사용할 수 없거나 완전히 번역되지 않았습니다. 귀하의 도움 감사하겠습니다. 도움을 원하시면 다음을 참조하세요.개발자 가이드또는 다음 주소로 편지를 보내세요. 개발자 메일링 리스트입니다.