¾�ΥС�������ʸ�� �� 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

22.2. ʸ�����åȥ��ݡ���

PostgreSQL��ʸ�����åȡʥ��󥳡��ǥ��󥰤Ȥ�ƤФ�ޤ��˥��ݡ��Ȥˤ�ꡢISO 8859���꡼���ʤɤΥ��󥰥�Х���ʸ����EUC�ʳ�ĥUnix�����ɡˡ�UTF-8��Mule���������ɤʤɤΥޥ���Х���ʸ����ޤࡢ�Ƽ�ʸ�����åȤǥƥ����Ȥ���¸���뤳�Ȥ��Ǥ��ޤ��� ���Ƥ�ʸ�����åȤϥ��饤����Ȥˤ��Ʃ��Ū�˻��Ѥ��뤳�Ȥ��Ǥ��ޤ����������Ĥ��ϡ���������ǤΡʤĤޤꥵ���Х����ɥ��󥳡��ǥ��󥰤Ȥ��ơ˻��Ѥϥ��ݡ��Ȥ���Ƥ��ޤ��󡣥ǥե���Ȥ�ʸ�����åȤϡ�initdb����Ѥ���PostgreSQL�ǡ����١������饹���ν�������˷��ꤵ��ޤ��� ����ϡ��ǡ����١��������������˾�񤭤��뤳�Ȥ��Ǥ���Τǡ��ۤʤ�ʸ�����åȤ���Ѥ���ʣ���Υǡ����١�������Ĥ��Ȥ��Ǥ��ޤ���

���������פ����¤ϡ����줾��Υǡ����١�����ʸ�����åȤ������Ф�LC_CTYPE����ȸߴ�����̵���ƤϤ����ޤ��� LC_CTYPE��C�⤷����POSIX�ΤȤ��ϡ��ɤΤ褦��ʸ�����åȤ���Ĥ���Ƥ��ޤ��� ��������¾��LC_CTYPE������ΤȤ��ϡ�������ư���ʸ�����åȤϤҤȤĤ����Ȥʤ�ޤ��� LC_CTYPE���꤬initdb�ˤ����뤵��Ƥ��뤿�ᡢ�ʼºݤΥ�������ǧ����̵�����������C or POSIX������������򤷤��Ȥ�������Ƥϡ����饹���ΰۤʤ�ǡ����١������Ѥ�����ۤʤ륨�󥳡��ǥ��󥰤���Ѥ��뤳�Ȥν������ϡ�����Ū�Ȥ�������ष������Ū�Ǥ��뤫�Τ褦�˻פ��ޤ��������λ��ȤߤϺ����PostgreSQL�ΥС������ǻ��Ѥ����褦�ˤʤ�Ǥ��礦��

22.2.1. ���ݡ��Ȥ����ʸ�����å�

PostgreSQL�ǻ��ѤǤ���ʸ�����åȤ�表22-1�˼����ޤ���

表 22-1. PostgreSQLʸ�����å�

̾���������������С��Х��ȿ�/ʸ����̾
BIG5Big Five���������1-2������WIN950��Windows950
EUC_CNExtended UNIX Code-CN�ʰ������Ϥ�1-3 
EUC_JPExtended UNIX Code-JP���ܸ��Ϥ�1-3 
EUC_JIS_2004Extended UNIX Code-JP, JIS X 0213���ܸ��Ϥ�1-3 
EUC_KRExtended UNIX Code-KR�ڹ���Ϥ�1-3 
EUC_TWExtended UNIX Code-TW��������졢���Ѹ��Ϥ�1-3 
GB18030National Standard����������1-2 
GBKExtended National Standard�ʰ�����������1-2WIN936��Windows936
ISO_8859_5ISO 8859-5��ECMA 113��ƥ�/������Ϥ�1 
ISO_8859_6ISO 8859-6��ECMA 114��ƥ�/����ӥ����Ϥ�1 
ISO_8859_7ISO 8859-7��ECMA 118��ƥ�/���ꥷ����Ϥ�1 
ISO_8859_8ISO 8859-8��ECMA 121��ƥ�/�إ֥饤���Ϥ�1 
JOHABJOHAB�ڹ��ʥϥ󥰥���������1-3 
KOI8KOI8-R(U)�������Ϥ�1KOI8R
LATIN1ISO 8859-1��ECMA 94���衼���å��Ϥ�1ISO88591
LATIN2ISO 8859-2��ECMA 94����衼���å��Ϥ�1ISO88592
LATIN3ISO 8859-3��ECMA 94��衼���å��Ϥ�1ISO88593
LATIN4ISO 8859-4��ECMA 94�̥衼���å��Ϥ�1ISO88594
LATIN5ISO 8859-9��ECMA 128�ȥ륳�Ϥ�1ISO88599
LATIN6ISO 8859-10��ECMA 144�̲��Ϥ�1ISO885910
LATIN7ISO 8859-13�Х�Ƚ����Ϥ�1ISO885913
LATIN8ISO 8859-14������Ϥ�1ISO885914
LATIN9ISO 8859-15LATIN1�ǥ衼���åѤ��¤��ޤ��Ϥ�1ISO885915
LATIN10ISO 8859-16��ASRO SR 14111�롼�ޥ˥��Ϥ�1ISO885916
MULE_INTERNALMule����������¿����Emacs�Ϥ�1-4 
SJISShift JIS���ܸ�������1-2Mskanji��ShiftJIS��WIN932��Windows932
SQL_ASCII̤����ʥƥ����Ȥ򻲾ȡ����Ǥ��Ϥ�1 
SHIFT_JIS_2004Shift JIS, JIS X 0213���ܸ�������1-2 
SQL_ASCII̤����ʥƥ����Ȥ򻲾ȡ����Ǥ��Ϥ�1 
UHC����ϥ󥰥륳�����ڹ��������1-2WIN949��Windows949
UTF8Unicode��8�ӥå����٤��Ϥ�1-4Unicode
WIN866Windows CP866�������Ϥ�1ALT
WIN874Windows CP874�������Ϥ�1 
WIN1250Windows CP1250����衼���å��Ϥ�1 
WIN1251Windows CP1251�������Ϥ�1WIN
WIN1252Windows CP1252���衼���å��Ϥ�1 
WIN1253Windows CP1253���ꥷ���Ϥ�1 
WIN1254Windows CP1254�ȥ륳�Ϥ�1 
WIN1255Windows CP1255�إ֥饤�Ϥ�1 
WIN1256Windows CP1256����ӥ����Ϥ�1 
WIN1257Windows CP1257�Х�ƥ��å��Ϥ�1 
WIN1258Windows CP1258�٥ȥʥ���Ϥ�1ABC��TCVN��TCVN5712��VSCII

���Ƥ�API����ΰ���ɽ�˼�����ʸ�����åȤ򥵥ݡ��Ȥ��Ƥ���櫓�ǤϤ���ޤ��� �㤨��PostgreSQL JDBC�ɥ饤�Ф�MULE_INTERNAL��LATIN6��LATIN8��������LATIN10�򥵥ݡ��Ȥ��ޤ���

SQL_ASCII������ϡ�¾������Ȥ��ʤ�ۤʤ�ޤ��������ФΥ���饯�����åȤ�SQL_ASCII�ΤȤ��������Ф�0����127�ΥХ����ͤ�ASCII���Ѵ����ޤ���������128����255�ޤǤ��Ѵ�����ޤ��� ���꤬SQL_ASCII�ξ��ϡ���沽�ϼ¹Ԥ���ޤ��󡣤�äơ�����������������沽����Ѥ��Ƥ�����ˤϡ�������沽��̵�뤹��褦�ˤʤäƤ��ޤ��ޤ��� ¿���ξ�硢ASCII�ǤϤʤ��Ķ��Ǻ�Ȥ������SQL_ASCII���������Ѥ���Τϡ��������ȤǤϤ���ޤ��󡣤ʤ��ʤ�PostgreSQL��ASCII�ǤϤʤ�ʸ�����Ѵ������긡�������ꤹ�뤳�ȤϽ���ʤ�����Ǥ���

22.2.2. ʸ�����åȤ�����

initdb��PostgreSQL���饹���Υǥե����ʸ�����åȤ�������ޤ��� �ʲ�����򼨤��ޤ���

initdb -E EUC_JP

����ϥǥե���Ȥ�ʸ�����åȡ���沽�����ˤ�EUC_JP�����ܸ��ĥUnix�����ɡˤ����ꤷ�ޤ��� ���Ĺ�����ץ�����ʸ��������Ϥ���Τ������ߤʤ�-E�������--encoding�Ƚ񤯤��Ȥ�Ǥ��ޤ��� -E���ץ�����--encoding���ץ�����Ϳ�����ʤ���硢initdb�ϡ�����⤷���ϥǥե���ȤΥ�������˴�Ť���Ŭ������沽��������ꤷ�褦�Ȥ��ޤ���

�⤷C�ޤ���POSIX������������򤷤����ϡ��ۤʤ�ʸ�����åȤΥǡ����١�����������뤳�Ȥ��Ǥ��ޤ���

createdb -E EUC_KR korean

�����EUC_KRʸ�����åȤ�korean�Ȥ���̾���Υǡ����١�����������ޤ��� SQL���ޥ�ɤ�Ʊ�����Ȥ�Ԥ��ˤϼ��Τ褦�ˤ��ޤ���

CREATE DATABASE korean WITH ENCODING 'EUC_KR';

�ǡ����١�������沽������pg_database�����ƥ५�������˳�Ǽ����ޤ��� psql��-l���ץ����\l���ޥ�ɤ���沽�������ǧ���뤳�Ȥ��Ǥ��ޤ���

$ psql -l
            List of databases
   Database    |  Owner  |   Encoding    
---------------+---------+---------------
 euc_cn        | t-ishii | EUC_CN
 euc_jp        | t-ishii | EUC_JP
 euc_kr        | t-ishii | EUC_KR
 euc_tw        | t-ishii | EUC_TW
 mule_internal | t-ishii | MULE_INTERNAL
 postgres      | t-ishii | EUC_JP
 regression    | t-ishii | SQL_ASCII
 template1     | t-ishii | EUC_JP
 test          | t-ishii | EUC_JP
 utf8          | t-ishii | UTF8
(9 rows)

重要項目: On most modern operating systems, PostgreSQL can determine which character set is implied by an LC_CTYPE setting, and it will enforce that only the correct database encoding is used. On older systems it is your responsibility to ensure that you use the encoding expected by the locale you have selected. A mistake in this area is likely to lead to strange misbehavior of locale-dependent operations such as sorting.

�Ƕ�Υ��ڥ졼�ƥ��󥰥����ƥ�Ǥϡ�PostgreSQL�ϡ�LC_CTYPE������ˤ��ɤ�ʸ�����åȤ����ꤵ��Ƥ��뤫����Ǥ��ޤ����ޤ�������1�Ĥ��������ǡ����١������󥳡��ǥ��󥰤����Ѥ����褦�ˤǤ��ޤ����Ť����ڥ졼�ƥ��󥰥����ƥ�Ǥϡ���ʬ�����򤷤���������ˤ�äƴ��Ԥ���Ƥ��륨�󥳡��ǥ��󥰤���Ѥ��Ƥ��뤫���ǧ����ΤϳƼ�����Ǥ�ˤʤ�ޤ��������Ǥδְ㤤�ϡ������ȤȤ��ä��褦�ʥ�������˰�¸����������̯�Ǥ�������ư���Ȥ��ä����ȤˤĤʤ���ޤ���

PostgreSQL will allow superusers to create databases with SQL_ASCII encoding even when LC_CTYPE is not C or POSIX. As noted above, SQL_ASCII does not enforce that the data stored in the database has any particular encoding, and so this choice poses risks of locale-dependent misbehavior. Using this combination of settings is deprecated and may someday be forbidden altogether.

PostgreSQL�ϡ�LC_CTYPE��C�⤷����POSIX�Ǥ�ʤ����ˤ⡢�����ѥ桼����SQL_ASCII���󥳡��ǥ��󥰤ǥǡ����١�����������뤳�Ȥ���Ĥ��ޤ����嵭�Τ褦�ˡ�SQL_ASCII�ϡ��ǡ����١�������¸����Ƥ���ǡ���������Υ��󥳡��ǥ��󥰤���Ĥ��Ȥ������ޤ��󡣤���ˡ���������ϥ�������˰�¸������������ư�������������ꥹ������ޤ�������������Ȥ߹�碌����Ѥ��뤳�Ȥϡ�������Ǥ��ޤ��󤷡����Ĥ����������˶ػߤ���뤫�⤷��ޤ���

22.2.3. �����С����饤����ȴ֤μ�ưʸ�����å��Ѵ�

PostgreSQL�ϡ�����ʸ�����åȤ��Ȥ߹�碌���Ф��ƥ����Фȥ��饤����Ȥδ֤Ǽ�ưŪ��ʸ�����åȤ��Ѵ����뵡ǽ���󶡤��Ƥ��ޤ��� �Ѵ������pg_conversion�����ƥ५�������˳�Ǽ����Ƥ��ޤ���PostgreSQL�ˤϡ�表22-2�Ǽ�����Ƥ���褦�ˡ�������������줿�Ѵ�����°���ޤ��� �������Ѵ����������ˤ�SQL���ޥ�ɤ�CREATE CONVERSION����Ѥ��ޤ���

表 22-2. ���饤����ȡ�������ʸ�����å��Ѵ�

������ʸ�����å����Ѳ�ǽ�ʥ��饤�����ʸ�����å�
BIG5�����Ф���沽�����Ȥ��Ƥϥ��ݡ��Ȥ��Ƥ��ޤ���
EUC_CNEUC_CN�� MULE_INTERNAL�� UTF8
EUC_JPEUC_JP�� MULE_INTERNAL�� SJIS�� UTF8
EUC_KREUC_KR�� MULE_INTERNAL�� UTF8
EUC_TWEUC_TW�� BIG5�� MULE_INTERNAL�� UTF8
GB18030�����Ф���沽�����Ȥ��Ƥϥ��ݡ��Ȥ��Ƥ��ޤ���
GBK�����Ф���沽�����Ȥ��Ƥϥ��ݡ��Ȥ��Ƥ��ޤ���
ISO_8859_5ISO_8859_5�� KOI8�� MULE_INTERNAL�� UTF8�� WIN866�� WIN1251
ISO_8859_6ISO_8859_6�� UTF8
ISO_8859_7ISO_8859_7�� UTF8
ISO_8859_8ISO_8859_8�� UTF8
JOHABJOHAB�� UTF8
KOI8KOI8�� ISO_8859_5�� MULE_INTERNAL�� UTF8�� WIN866�� WIN1251
LATIN1LATIN1�� MULE_INTERNAL�� UTF8
LATIN2LATIN2�� MULE_INTERNAL�� UTF8�� WIN1250
LATIN3LATIN3�� MULE_INTERNAL�� UTF8
LATIN4LATIN4�� MULE_INTERNAL�� UTF8
LATIN5LATIN5�� UTF8
LATIN6LATIN6�� UTF8
LATIN7LATIN7�� UTF8
LATIN8LATIN8�� UTF8
LATIN9LATIN9�� UTF8
LATIN10LATIN10�� UTF8
MULE_INTERNALMULE_INTERNAL�� BIG5�� EUC_CN�� EUC_JP�� EUC_KR�� EUC_TW�� ISO_8859_5�� KOI8�� LATIN1 to LATIN4�� SJIS�� WIN866�� WIN1250�� WIN1251
SJIS�����Ф���沽�����Ȥ��Ƥϥ��ݡ��Ȥ��Ƥ��ޤ���
SQL_ASCII�ɤ�Ǥ� ���Ѵ�����ޤ����
UHC�����Ф���沽�����Ȥ��Ƥϥ��ݡ��Ȥ��Ƥ��ޤ���
UTF8���٤ƥ��ݡ��Ȥ���Ƥ��ޤ���
WIN866WIN866�� ISO_8859_5�� KOI8�� MULE_INTERNAL�� UTF8�� WIN1251
WIN874WIN874�� UTF8
WIN1250WIN1250�� LATIN2�� MULE_INTERNAL�� UTF8
WIN1251WIN1251�� ISO_8859_5�� KOI8�� MULE_INTERNAL�� UTF8�� WIN866
WIN1252WIN1252�� UTF8
WIN1253WIN1253, UTF8
WIN1254WIN1254, UTF8
WIN1255WIN1255, UTF8
WIN1256WIN1256�� UTF8
WIN1257WIN1257, UTF8
WIN1258WIN1258�� UTF8

��ưʸ�����å��Ѵ���ͭ���ˤ��뤿��ˤϡ����饤����ȤǤɤΤ褦��ʸ�����åȡ���沽�����ˤ���Ѥ�����������PostgreSQL�������ʤ���Фʤ�ޤ��� �����Ԥ��ˤϤ����Ĥ�����ˡ������ޤ���

EUC_JP�򥵡��Фˡ�������LATIN1�򥯥饤����Ȥ���������Τ褦�ˡ������ʸ�����Ѵ����Ǥ��ʤ��������ܸ�ʸ����LATIN1�����äƤ��ʤ��Τǥ��顼����𤵤�ޤ���

���饤�����¦�Υ���饯�����åȤ�SQL_ASCII���������Ƥ�����ϡ���沽�Ѵ��ϥ�����¦�Υ���饯�����åȤ˴ط�̵��̵��������ޤ��� ������¦��Ʊ���褦�ˡ�SQL_ASCII����Ѥ��뤳�Ȥϡ����٤�ASCII�Υǡ����򰷤äƤ�����������������ˡ�ǤϤ���ޤ���

22.2.4. �侩ʸ��

�����˵�������Τ��͡�����沽���������ƥ��ؽ�����Τ��ɤ������Ǥ���

http://www.i18ngurus.com/docs/984813247.html

An extensive collection of documents about character sets, encodings, and code pages.

ftp://ftp.ora.com/pub/examples/nutshell/ujip/doc/cjk.inf

3.2���EUC_JP��EUC_CN��EUC_KR��EUC_TW�ξܤ�������������ޤ���

http://www.unicode.org/

Unicode�����Web�����ȤǤ���

RFC 3629

������UTF-8���������Ƥ��ޤ���