캐릭터 설정 지원윈 토토텍스트를 a에 저장할 수 있습니다EUC(확장 유닉스 코드),윈 토토데이터베이스 클러스터 사용initdb. a를 만들 때 무시할 수 있습니다createb또는 사용하여데이터베이스 생성. 그래서 당신은 할 수 있습니다
표 20-1. 서버 문자 세트
이름 | 설명 |
---|---|
SQL_ASCII | ASCII |
euc_jp | 일본어EUC |
EUC_CN | 중국어EUC |
euc_kr | 한국어EUC |
Johab | 한국어EUC(Hangle Base) |
euc_tw | 대만EUC |
유니 코드 | 유니 코드 (UTF-8) |
mule_internal | 뮬 내부 코드 |
latin1 | ISO 8859-1/ecma94 (라틴 알파벳 No.1) |
latin2 | ISO 8859-2/ecma94 (라틴 알파벳 No.2) |
latin3 | ISO 8859-3/ecma94 (라틴 알파벳 No.3) |
latin4 | ISO 8859-4/ecma94 (라틴 알파벳 No.4) |
latin5 | ISO 8859-9/ecma128 (라틴 알파벳 No.5) |
latin6 | ISO 8859-10/ecma144 (라틴 알파벳 No.6) |
latin7 | ISO 8859-13 (라틴 알파벳 No.7) |
latin8 | ISO 8859-14 (라틴 알파벳 No.8) |
latin9 | ISO 8859-15 (라틴 알파벳 No.9) |
latin10 | ISO 8859-16/asroSR 14111 (라틴 알파벳 No.10) |
ISO_8859_5 | ISO 8859-5/ecma113 (라틴/키릴) |
ISO_8859_6 | ISO 8859-6/ecma114 (라틴/아랍어) |
ISO_8859_7 | ISO 8859-7/ecma118 (라틴/그리스어) |
ISO_8859_8 | ISO 8859-8/ecma121 (라틴/히브리어) |
KOI8 | Koi8-r (u) |
WIN | Windows CP1251 |
alt | Windows CP866 |
Win1256 | Windows CP1256 (아랍어) |
TCVN | TCVN-5712/Windows CP1258 |
Win874 | Windows CP874 (Thai) |
중요 :전윈 토토 7.2, latin5실수로 ISO 8859-5를 의미했습니다. 7.2에서latin5ISO 8859-9를 의미합니다. 만약에latin5데이터베이스 생성
전부는 아닙니다API모두 지원합니다윈 토토JDBC 드라이버는 지원하지 않습니다mule_internal, latin6, latin8및latin10.
initdb기본값을 정의합니다윈 토토클러스터. 예를 들어,
initdb -e euc_jp
기본 문자 세트 (인코딩)를 설정합니다euc_jp(일본어의 확장 유닉스 코드). 너-encoding대신-e더 긴 옵션을 입력하는 것을 선호하는 경우-e또는-encoding옵션이 제공됩니다,SQL_ASCII사용됩니다.
다른 문자가있는 데이터베이스를 만들 수 있습니다
createb -e euc_kr Korean
이것은 이름이 지정된 데이터베이스를 생성합니다한국어문자 세트를 사용하는euc_kr. 이것을 달성하는 또 다른 방법은 사용하는 것입니다
'EUC_KR'인코딩으로 데이터베이스 한국어 생성;
데이터베이스의 인코딩은 시스템 카탈로그에 저장됩니다pg_database. 사용하여 볼 수 있습니다-l옵션 또는\ l명령PSQL.
$ PSQL -L소유자 | 목록
윈 토토지원pg_conversion시스템변환 생성. 윈 토토일부와 함께 제공됩니다테이블.
표 20-2. 클라이언트/서버 문자 세트
서버 문자 세트 | 사용 가능한 클라이언트 문자 세트 |
---|---|
SQL_ASCII | SQL_ASCII, 유니 코드, mule_internal |
euc_jp | euc_jp, SJIS, 유니 코드, mule_internal |
EUC_CN | EUC_CN, 유니 코드, mule_internal |
euc_kr | euc_kr, 유니 코드, mule_internal |
Johab | Johab, 유니 코드 |
euc_tw | euc_tw, big5, 유니 코드, mule_internal |
latin1 | latin1, 유니 코드 mule_internal |
latin2 | latin2, Win1250, 유니 코드, mule_internal |
latin3 | latin3, 유니 코드, mule_internal |
latin4 | latin4, 유니 코드, mule_internal |
latin5 | latin5, 유니 코드 |
latin6 | latin6, 유니 코드, mule_internal |
latin7 | latin7, 유니 코드, mule_internal |
latin8 | latin8, 유니 코드, mule_internal |
latin9 | latin9, 유니 코드, mule_internal |
latin10 | latin10, 유니 코드, mule_internal |
ISO_8859_5 | ISO_8859_5, 유니 코드, mule_internal, WIN, alt, KOI8 |
ISO_8859_6 | ISO_8859_6, 유니 코드 |
ISO_8859_7 | ISO_8859_7, 유니 코드 |
ISO_8859_8 | ISO_8859_8, 유니 코드 |
유니 코드 | euc_jp, SJIS, euc_kr, UHC, Johab, EUC_CN, GBK, euc_tw, big5, latin1tolatin10, ISO_8859_5, ISO_8859_6, ISO_8859_7, ISO_8859_8, WIN, alt, KOI8, Win1256, TCVN, Win874, GB18030, Win1250 |
mule_internal | euc_jp, SJIS, euc_kr, EUC_CN, euc_tw, big5, latin1tolatin5, WIN, alt, Win1250, big5, ISO_8859_5, KOI8 |
KOI8 | ISO_8859_5, WIN, alt, KOI8, 유니 코드, mule_internal |
WIN | ISO_8859_5, WIN, alt, KOI8, 유니 코드, mule_internal |
alt | ISO_8859_5, WIN, alt, KOI8, 유니 코드, mule_internal |
Win1256 | Win1256, 유니 코드 |
TCVN | TCVN, 유니 코드 |
Win874 | Win874, 유니 코드 |
자동 문자 세트 변환을 활성화하려면윈 토토
사용\ encoding명령PSQL. \ encoding클라이언트를 변경할 수 있습니다SJIS, 유형 :
\ SJIS 인코딩
사용libpq기능.\ encoding실제로 호출pqsetClientEncoding ()
그 용
int pqsetclientencoding (pgconn *conn, const char *인코딩);
여기서connis인코딩원하는 인코딩입니다
int pqclientencoding (const pgconn *conn);
기호가 아닌 인코딩 ID를 반환합니다.euc_jp. 변환합니다
char *pg_encoding_to_char (intencoding_id);
사용set client_encoding to.
client_encoding set client_encoding to 'value';
또한 표준 SQL 구문을 사용할 수 있습니다이름 설정이 목적은 :
이름 설정 'value';
현재 클라이언트 인코딩을 쿼리하려면 :
show client_encoding;
기본 인코딩으로 돌아 가기 :
reset client_encoding;
사용pgclientencoding. 만약에pgclientencoding는 클라이언트에 정의되어 있습니다
구성 변수 사용client_encoding. 인 경우client_encoding변수윈 토토.conf해당 클라이언트가 설정되어 있습니다
특정 문자의 변환이 불가능한 경우euc_jplatin1클라이언트의 경우latin1- 그것은 16 진수로 변환됩니다(826C).