postgresql/doc
Bruce Momjian 0b0f9c62e8 Remove items completed in 7.4:
< * -Allow elog() to return error codes, module name, file name, line
<   number, not just messages (Tom)
< * -Add error codes (Tom)
< * -Make error messages more consistent
40d35
< * -Add GUC log_statement_and_duration to print statement and >= min duration
51d45
< * -Allow easy display of usernames in a group
53d46
< * -Add start time to pg_stat_activity
55d47
< * -Have standalone backend read postgresql.conf (Tom)
59d50
< * -Allow CIDR format to be used in pg_hba.conf
74d64
< * -Add IPv6 capability to INET/CIDR types
77d66
< * -Change NUMERIC data type to use base 10,000 internally
82d70
< * -Add GUC variables to control floating number output digits (Pedro Ferreira)
90,92d77
< * -Allow current datestyle to restrict dates;  prevent month/day swapping
<   from making invalid dates valid
< * -Prevent month/day swapping of ISO dates to make invalid dates valid
102d86
< 	o -Allow arrays to be ORDER'ed
104d87
< 	o -Support construction of array result values in expressions (Joe)
128d110
< * -Remove Cyrillic recode support
146,147d127
< * -Allow CREATE INDEX zman_index ON test (date_trunc( 'day', zman ) datetime_ops)
<   fails index can't store constant parameters
155d134
< * -Add btree index support for reltime, tinterval, regproc (Tom)
157d135
< * -Certain indexes will not shrink, e.g. indexes on ever-increasing
161d138
< * -Allow LIKE indexing optimization for non-ASCII locales using special index
173d149
< * -Improve concurrency of hash indexes (Tom)
181d156
< * -Allow LIMIT/OFFSET to use expressions (Tom)
187d161
< * -Return proper effected tuple count from complex commands [return]
191d164
< * -Make a transaction-safe TRUNCATE (Rod)
196,197d168
< * -Allow UPDATE to use SET col = DEFAULT
< * -Add config variable to prevent auto-adding missing FROM-clause tables
199d169
< * -Have SELECT '13 minutes'::interval display zero seconds in ISO datestyle
224,225d193
< 	o -Add ALTER TABLE tab SET WITHOUT OIDS (Rod)
< 	o -Add ALTER SEQUENCE to modify min/max/increment/cache/cycle values
237d204
< 	o -Allow CLUSTER to cluster all tables (Alvaro Herrera)
248d214
< 	o -MOVE 0 should not move to end of cursor (Bruce)
252d217
< 	o -Allow cursors outside transactions
264,265d228
< 	o -Allow EXPLAIN EXECUTE to see prepared plans
<  	o -Allow SHOW of some non-modifiable variables, like pg_controldata
280d242
< 	o -Allow array declarations and other data types in PL/PgSQL DECLARE
282,283d243
< 	o -Make PL/PgSQL %TYPE schema-aware
< 	o -Allow PL/PgSQL to support array element assignment (Joe)
294,298d253
< * -Allow psql to show transaction status if backend protocol changes made
< * -Add schema, cast, and conversion backslash commands to psql (Christopher)
< * -Allow pg_dump to dump a specific schema (Neil Conway)
< * -Allow psql to do table completion for SELECT * FROM schema_part and
<   table completion for SELECT * FROM schema_name.
300,302d254
< * -Allow SSL-enabled clients to turn off SSL transfers
< * -Modify pg_get_triggerdef() to take a boolean to pretty-print,
<   and use that as part of pg_dump along with psql
327d278
< 	o -Add SQLSTATE
330d280
< 	o -Make casts work in variable initializations
334,336d283
< 	o -Allow multi-threaded use of SQLCA
< 	o -Understand structure definitions outside a declare section
< 	o -Allow :var[:index] or :var[<integer>] as cvariable for an array var
356d302
< * -Support statement-level triggers (Neil)
460,461d405
< * -Add checkpoint_min_warning postgresql.conf option to warn about checkpoints
<   that are too frequent (Bruce)
472,476d415
< * -Improve Subplan list handling
< * -Allow Subplans to use efficient joins(hash, merge) with upper variable
< * -Add hash for evaluating GROUP BY aggregates (Tom)
< * -Allow merge and hash joins on expressions not just simple variables (Tom)
< * -Make IN/NOT IN have similar performance to EXISTS/NOT EXISTS (Tom)
480d418
< * -Inline simple SQL functions to avoid overhead (Tom)
495d432
< * -Get faster regex() code from Henry Spencer <henry@zoo.utoronto.ca>
511,512d447
< * -Modify regression tests to prevent failures do to minor numeric rounding
< * -Add OpenBSD's getpeereid() call for local socket authentication
537,542d471
< 	o -Show transaction status in psql
< 	o -Allow binding of query parameters, support for prepared queries
< 	o -Remove hard-coded limits on user/db/password names
< 	o -Remove unused elements of startup packet (unused, tty, passlength)
< 	o -Fix COPY/fastpath protocol
< 	o -Error codes
544d472
< 	o -Special passing of binary values in platform-neutral format (bytea?)
547d474
< 	o -Report server version number, database encoding, client encoding
2003-11-19 17:34:01 +00:00
..
src SERIAL no longer creates an index by default, as of 7.3. 2003-11-19 16:50:48 +00:00
TODO.detail Add to Win32 discussion. 2003-11-13 03:45:33 +00:00
bug.template Update bug template to 7.4 --- that was the only one missing. 2003-11-14 03:30:54 +00:00
FAQ SERIAL no longer creates an index by default, as of 7.3. 2003-11-19 16:50:48 +00:00
FAQ_AIX Update AIX resultmap for horology tests, per Andreas. 2002-11-12 20:02:32 +00:00
FAQ_DEV Update FAQ_DEV: elog => ereport. 2003-10-30 02:40:29 +00:00
FAQ_german Update German FAQ. 2003-09-03 20:28:14 +00:00
FAQ_HPUX Revise platform FAQs. 2002-11-11 20:04:05 +00:00
FAQ_hungarian Hungarian FAQ is text, not HTML, so remove it. 2003-02-18 17:20:37 +00:00
FAQ_IRIX Revise platform FAQs. 2002-11-11 20:04:05 +00:00
FAQ_japanese Update Japanese FAQ, from Jun Kuwamura 2003-09-25 02:27:54 +00:00
FAQ_MSWIN Update MSWIN FAQ 2003-11-13 03:53:00 +00:00
FAQ_polish Add Polish FAQ from Marcin Mazurek. 2002-04-29 02:57:18 +00:00
FAQ_QNX4 Fix typo mentioned by Rich Morin. 2002-07-09 04:47:07 +00:00
FAQ_russian Update Russian FAQ. 2003-10-10 02:52:12 +00:00
FAQ_SCO Update FAQ_SCO from Larry Rosenman, correction from Tom Lane. 2002-11-08 16:49:15 +00:00
FAQ_Solaris Update Solaris FAQ to mention -fast. 2003-10-09 17:11:13 +00:00
FAQ_turkish Update Turkish FAQ, Devrim GUNDUZ 2003-07-31 04:41:56 +00:00
KNOWN_BUGS Add files to point to TODO list. 1999-07-01 05:31:22 +00:00
Makefile Fix erroneous direct reference to postgres.tar.gz, per bug report 2003-08-04 20:52:48 +00:00
MISSING_FEATURES Add files to point to TODO list. 1999-07-01 05:31:22 +00:00
README.mb.big5 Add a README file for multi-byte. This file is contributed by 2001-01-09 09:54:11 +00:00
README.mb.jp Update multibyte Japanese document 2002-10-21 05:14:06 +00:00
TODO Remove items completed in 7.4: 2003-11-19 17:34:01 +00:00

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

PostgreSQL 7.3 multi-byte (MB) support README	       2002/10/21 $B:n@.(B

							$B@P0fC#IW(B
						ishii@postgresql.org

$B"#$O$8$a$K(B

  PostgreSQL $B$K$*$1$k%^%k%A%P%$%H%5%]!<%H$O0J2<$N$h$&$JFCD'$r;}$C$F$$$^$9!%(B

    1. $B%^%k%A%P%$%HJ8;z$H$7$F!$F|K\8l!$Cf9q8l$J$I$N3F9q$N(B EUC$B!$(BUnicode$B!$(B
       mule internal code, ISO-8859-* $B$,%G!<%?%Y!<%9:n@.;~$KA*Br2DG=!%(B
       $B%G!<%?%Y!<%9$K$O$3$N%(%s%3!<%G%#%s%0$N$^$^3JG<$5$l$^$9!%(B
    2. $B%F!<%V%kL>$K%^%k%A%P%$%HJ8;z$,;HMQ2DG=(B
    3. $B%+%i%`L>$K%^%k%A%P%$%HJ8;z$,;HMQ2DG=(B
    4. $B%G!<%?$=$N$b$N$K$b%^%k%A%P%$%HJ8;z$,;HMQ2DG=(B
    5. $B%^%k%A%P%$%HJ8;z$N@55,I=8=8!:w$,;HMQ2DG=(B
    6. $B%^%k%A%P%$%HJ8;z$N(B LIKE $B8!:w$,;HMQ2DG=(B
    7. character_length(), position(), substring() $B$J$I$NJ8;zNs4X?t$G(B
       $B$N%^%k%A%P%$%H%5%]!<%H(B
    8. $B%U%m%s%H%(%s%IB&$N%(%s%3!<%G%#%s%0$,%P%C%/%(%s%IB&$H0[$k>l9g$K!$(B
       $B<+F0E*$K%(%s%3!<%G%#%s%0JQ49$r9T$J$$$^$9!%(B
    9. $B%f!<%6Dj5A$N%(%s%3!<%G%#%s%0JQ49$r:n@.2DG=!%(B

  $B%^%k%A%P%$%H%5%]!<%H$,07$&$3$H$N$G$-$k%(%s%3!<%G%#%s%0$O0J2<$K$J$j$^(B
  $B$9!%(B

	SQL_ASCII	ASCII
	EUC_JP		$BF|K\8l(B EUC
	EUC_CN		GB $B$r%Y!<%9$K$7$?CfJ8(BEUC$B!%(Bcode set 2 $B$O(B
			SS2+2$B%P%$%H%3!<%I(B = 3$B%P%$%HI=8=$G$9!%(B
	EUC_KR		$B4Z9q8l(B EUC$B!%(B
	JOHAB		$B%O%s%0%k%Y!<%9$N4Z9q8l(BEUC.
	EUC_TW		$BBfOQ$N(B EUC$B!%(Bcode set 2 $B$O(B
			SS2+$BLLHV9f(B+2$B%P%$%H%3!<%I(B = 4$B%P%$%HI=8=$G$9!%(B
	UNICODE		UTF-8$B!%$?$@$7%5%]!<%H$9$k$N$O(B UCS-2 $B$NHO0O!$(B
			$B$9$J$o$A(B 0xffff $B$^$G$G$9!%(B
	MULE_INTERNAL	mule $B$NFbIt%3!<%I!%$?$@$7!$(BType N $B$NITDjD9J8;z$O(B
			$B%5%]!<%H$7$F$$$^$;$s!%(B
	LATIN1 $B$+$i(B LATIN10$B$^$G(B
	ISO_8859_1 $B$+$i(B 16$B$^$G(B
	$B%-%j%kJ8;z(B	KOI8(KOI8-R), WIN(CP1251), ALT(CP866)$B$r%5%]!<%H(B
			$B$7$F$$$^$9!%$b$A$m$s(B ISO 8859-5 $B$b;HMQ2DG=$G$9!%(B
			$B$3$N>l9g!$(B"LATIN5" $B$H$7$F;XDj$7$F2<$5$$!%(B
	WIN1256		$B%"%i%V=t9q8l(BWindows$BMQ%(%s%3!<%G%#%s%0(B.
	TCVN		$B%Y%H%J%`8l(B."ABC"$B$d(B"VSCII"$B$b;HMQ2DG=(B.
	WIN874		$B%?%$8l(B.

  $B%U%m%s%H%(%s%IB&$G$O$5$i$K0J2<$N%(%s%3!<%G%#%s%0$,;HMQ$G$-$^$9!%(B

	SJIS		$B%7%U%H(BJIS(MS932$B$H$[$\8_49(B)
	BIG5		$BBfOQ$d9a9A$G;HMQ$5$l$F$$$kCf9q8l!%(BEUC_TW$B$H8_49(B
			$B@-$,$"$j$^$9!%(B
	GBK		Windows-936
	UHC		Windows-949
	WIN1250		Windows-1250
	GB18030		GB18030

$B"#F|K\8l$r;HMQ$9$k$3$H$N$G$-$k%(%s%3!<%G%#%s%0(B

  $BA*Br$NL\0B$H$7$F$O!$1Q8l$HF|K\8l$7$+;H$o$J$$>l9g$O(B EUC_JP($BF1MM$K!$Cf(B
  $B9q8l$7$+;H$o$J$$>l9g$O(B EUC_CN... $B$J$I$H$J$j$^$9(B)$B!$$=$NB>$N8@8l$b;H$$$?(B
  $B$$>l9g$O(B UNICODE $B$b$7$/$O(B MULE_INTERNAL $B$H$J$k$G$7$g$&!%(B

  $BCm0U!'(BMULE_INTERNAL $B$rA*$V$H!$$?$/$5$s$NJ8;z=89g$KBP1~$G$-$FJXMx$G$9(B
  $B$,!$@55,I=8=$GJ#?t$NJ8;z=89g$K$^$?$,$k$h$&$JHO0O;XDj(B($B$?$H$($P!$(B[a-$BHO(B]
  $B$H$+!$(B[abc$BHO0O(B]$B$N$h$&$J(B)$B$O;H$($^$;$s!%J#?t$NHO0O;XDj$G0[$J$kJ8;z=89g(B
  $B$r;H$&$N$O9=$$$^$;$s(B($B$?$H$($P(B [abc][$BHO(B-$B0O(B])$B!%$^$?!$(B[^a] $B$N$h$&$JI=8=(B
  $B$O!$(B"a" $B$NB0$9$kJ8;z=89g(B($B$3$N>l9g!$(BUS-ASCII)$B$K$*$$$F(B "a" $B0J30$G$"$k(B
  $B$3$H$rI=$7$^$9!%7h$7$F4A;z$dJ?2>L>$J$I(B "a" $B0J30$r$9$Y$FI=$9$o$1$G$O(B
  $B$J$$$3$H$KCm0U$7$F2<$5$$!%(B

$B"#%$%s%9%H!<%k(B

  PostgreSQL 7.3$B$+$i$O(Bconfigure$B$N%*%W%7%g%s;XDj$NM-L5$K4X$o$i$:!$%^%k(B
  $B%A%P%$%H%5%]!<%H$,M-8z$K$J$C$F$$$^$9$N$G!$FC$K(Bconifgure$B;~$K%^%k%A%P(B
  $B%$%HMQ$NFCJL$J%*%W%7%g%s$r;XDj$9$kI,MW$O$"$j$^$;$s!%(B

$B"#(Binitdb/createdb/create database $B$K$*$1$k%(%s%3!<%G%#%s%0$N;XDj$K$D$$$F(B

  initdb $B$G$O0J2<$N%*%W%7%g%s$G%(%s%3!<%G%#%s%0$,;XDj$G$-$^$9!%(B

	-E $B%(%s%3!<%G%#%s%0(B
	--encoding=$B%(%s%3!<%G%#%s%0(B

  $B$3$3$G;XDj$7$?%(%s%3!<%G%#%s%0$O!$0J8e(B createdb/create database $B$G%((B
  $B%s%3!<%G%#%s%0$r>JN,$7$?>l9g$K@_Dj$5$l$k%(%s%3!<%G%#%s%0$K$J$j$^$9!%(B
  -E $B$^$?$O(B --encoding $B%*%W%7%g%s$r>JN,$7$?>l9g$O!$%(%s%3!<%G%#%s%0$H(B
  $B$7$F(BSQL_ASCII$B$,:NMQ$5$l$F$7$^$&$N$G!$F|K\8l$r%G%U%)%k%H$G;HMQ$9$k>l(B
  $B9g$O!$(B

	-E EUC_JP

   $B$"$k$$$O(B

	--encoding=EUC_JP

  $B$H$7$FI,$:L@<(E*$K%(%s%3!<%G%#%s%0$r;XDj$7$F$/$@$5$$!%(B

  $B$J$*!$(BPostgreSQL 7.3$B0J9_%m%1!<%k%5%]!<%H$,I,$:M-8z$K$J$C$F$$$^$9$,!$(B
  $B$3$l$OF|K\8l$J$I$r;HMQ$9$k:]$K$O2?$N%a%C%j%H$b$J$$$P$+$j$G$J$/!$>c32(B
  $B$N860x$K$J$C$?$j!$(BLIKE$B8!:w$d@55,I=8=8!:w$G%$%s%G%C%/%9$,M-8z$K$J$i$J(B
  $B$$$J$I$NLdBj$r0z$-5/$3$9$N$G!$L58z$K$7$F$*$/$3$H$r$*$9$9$a$7$^$9!%%m(B
  $B%1!<%k%5%]!<%H$rL58z$K$9$k$?$a$K$O!$(B

	--no-locale

  $B%*%W%7%g%s$r;XDj$7$^$9!%(B

  createdb $B$G$O0J2<$N%*%W%7%g%s$G%(%s%3!<%G%#%s%0$,;XDj$G$-$^$9!%(B

	-E $B%(%s%3!<%G%#%s%0(B
	--encoding=$B%(%s%3!<%G%#%s%0(B

  create database $B$G$O0J2<$N%*%W%7%g%s$G%(%s%3!<%G%#%s%0$,;XDj$G$-$^$9!%(B

	CREATE DATABASE dbanme WITH ENCODING = '$B%(%s%3!<%G%#%s%0(B';

  LOCATION $B$rF1;~$K;XDj$9$k>l9g$O0J2<$N$h$&$K$J$j$^$9!%(B

	CREATE DATABASE dbanme WITH LOCATION = 'path' ENCODING = '$B%(%s%3!<%G%#%s%0(B';

  createdb/create database $B$G$O!$%(%s%3!<%G%#%s%0;XDj$r>JN,$7$?>l9g$O!$(Binitdb 
  $B$G;XDj$7$?%(%s%3!<%G%#%s%0$,:NMQ$5$l$^$9!%$3$l$O!$(Binitdb $B$,:n@.$9$k(B
  $B%F%s%W%l!<%H%G!<%?%Y!<%9(B(template1)$B$N(B encoding $B%"%H%j%S%e!<%H$r7Q>5(B
  $B$9$k$+$i$G$9!%(B

  $B%G!<%?%Y!<%9$N%(%s%3!<%G%#%s%0$O!$(Bpsql -l$B!$(Bpsql $B$N(B \l $B$G;2>H$G$-$^$9!%(B

$ 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
 regression    | t-ishii | SQL_ASCII
 template1     | t-ishii | EUC_JP
 test          | t-ishii | EUC_JP
 unicode       | t-ishii | UNICODE
(9 rows)

$B"#J8;z7?$N%G!<%?7?$K$D$$$F(B

  7.2$B$G$O!$(BCHAR(n)$B$H(BVARCHAR(n)$B$N(B n $B$OJ8;z?t$r0UL#$7$^$9!%(Bn $B$,%P%$%H?t$r(B
  $B0UL#$9$k(B 7.1 $B0JA0$H$O0[$J$j$^$9$N$G$4Cm0U2<$5$$!%(B

  $BNc$r<($7$^$9!%(B

  7.2$B$G$O!$(BCHAR(1)$B$K(B"$B$"(B"$B$r3JG<$G$-$^$9$,!$(B7.1$B0JA0$G$O3JG<$G$-$^$;$s$3(B
  $B$l$O!$(B"$B$"(B"$B$r3JG<$9$k$?$a$K>/$J$/$H$b(B2$B%P%$%H0J>e$rMW$9$k$+$i$G$9!%(B
  $B5U$K!$(B"a" $B$O(B1$B%P%$%H$7$+>CHq$7$J$$$?$a!$(B7.1$B$G$b(B CHAR(1) $B$K3JG<$G$-$^(B
  $B$9!%(B

  $B$J$*!$(B7.2$B$G$O!$(B7.1$B$^$G$H0[$J$j!$(BCHAR(n)$B$K3JG<$G$-$J$$(B n $BJ8;z$h$jBg$-(B
  $B$$J8;zNs$O(B n $BJ8;z$G@Z$j<N$F$i$l$k$N$G$O$J$/!$%(%i!<$K$J$k$3$H$K$4Cm(B
  $B0U2<$5$$!%$3$l$O!$%^%k%A%P%$%HBP1~$NM-L5$K4X$o$i$:!$J8;zNs$N07$$$,(B
  SQL$BI8=`$K1h$&$h$&$KJQ$C$?$+$i$G$9!%(B

$B"#%U%m%s%H%(%s%I$H%P%C%/%(%s%I$N<+F0%(%s%3!<%G%#%s%0JQ49$K$D$$$F(B

  $B%P%C%/%(%s%I(B($B%G!<%?%Y!<%9(B)$B$H(B psql $B$J$I$N%U%m%s%H%(%s%I$N%(%s%3!<%G%#(B
  $B%s%0$O0lCW$7$F$$$k$N$,86B'$G$9$,!$$$$/$D$+$N%(%s%3!<%G%#%s%0$K$D$$$F(B
  $B$O%P%C%/%(%s%I$H%U%m%s%H%(%s%I$N4V$G0[$J$k$b$N$r;HMQ$9$k$3$H$,$G$-$^(B
  $B$9!%$3$N>l9g!$<+F0E*$K%P%C%/%(%s%I$G%(%s%3!<%G%#%s%0JQ49$,9T$o$l$^$9!%(B

  $B%P%C%/%(%s%I$N%(%s%3!<%G%#%s%0(B	$B5vMF$5$l$k%U%m%s%H%(%s%I$N(B
					$B%(%s%3!<%G%#%s%0(B
  ----------------------------------------------------------------
	EUC_JP				EUC_JP, SJIS, UNICODE

	EUC_TW				EUC_TW, BIG5, UNICODE

	EUC_CN				EUC_CN, UNICODE

	EUC_KR				EUC_KR, UNICODE

	JOHAB				JOHAB, UNICODE

	LATIN1,3,4			LATIN1,3,4, UNICODE

  	LATIN2				LATIN2, WIN1250, UNICODE

	LATIN5				LATIN5, WIN, ALT, UNICODE

	LATIN6,7,8,9,10			LATIN6,7,8,9,10, UNICODE

	ISO_8859_5,6,7,8		ISO_8859_5,6,7,8, UNICODE

	WIN1256				WIN1256, UNICODE

	TCVN				TCVN, UNICODE

	WIN874				WIN874, UNICODE

	MULE_INTERNAL			EUC_JP, SJIS, EUC_KR, EUC_CN, 
					EUC_TW, BIG5, LATIN1$B$+$i(B5, 
					WIN, ALT, WIN1250

	UNICODE				EUC_JP, SJIS, EUC_KR, UHC,
					EUC_CN, GBK, EUC_TW, BIG5,
					LATIN1$B$+$i(B10, ISO_8859_5$B$+$i(B8,
					WIN, ALT, WIN1250, WIN1256,
					TCVN, WIN874, JOHAB
  ----------------------------------------------------------------

  $B%P%C%/%(%s%I$H%U%m%s%H%(%s%I$N%(%s%3!<%G%#%s%0$,0[$J$k>l9g!$$=$N$3$H(B
  $B$r%P%C%/%(%s%I$KEA$($kI,MW$,$"$j$^$9!%$=$N$?$a$NJ}K!$,$$$/$D$+$"$j$^(B
  $B$9!%(B

o psql $B$N(B \encoding $B%3%^%s%I$r;H$&J}K!(B

  psql$B$G$O!$(B\encoding$B%3%^%s%I$r;H$C$FF0E*$K%U%m%s%H%(%s%IB&$NJ8;z%3!<(B
  $B%I$r@ZBX$($k$3$H$,$G$-$^$9!%Nc(B:

	\encoding SJIS

o libpq $B$N4X?t(B PQsetClientEncoding $B$r;H$&J}K!(B

  7.0 $B$+$i?7$7$$(B libpq $B4X?t(B PQsetClientEncoding $B$,DI2C$5$l$F$$$^$9!%(B

  PQsetClientEncoding(PGconn *conn, const char *encoding)

  $B$3$N4X?t$r;H$($P!$%3%M%/%7%g%sKh$K%(%s%3!<%G%#%s%0$r@ZBX$($k$3$H$,$G(B
  $B$-$^$9!%8=:_$N%(%s%3!<%G%#%s%0$NLd$$9g$o$;$O(B

  int PQclientEncoding(const PGconn *conn)

  $B$G$9!%(B

o postgresql.conf $B$G@_Dj$9$kJ}K!(B

  $B%U%m%s%H%(%s%I$N%G%U%)%k%H%(%s%3!<%G%#%s%0$r;XDj$9$k$K$O!$(B
  postgresql.conf $B$N(B client_encoding $B$r;XDj$7$^$9!%;XDjNc(B:

  client_encoding = SJIS

o $B4D6-JQ?t(B PGCLIENTENCODING $B$r;H$&J}K!(B

  (1) postmaster $B5/F0;~$K4D6-JQ?t$r@_Dj$9$kJ}K!(B

  $B4D6-JQ?t(B PGCLIENTENCODING $B$r@_Dj$9$k$3$H$K$h$j!$(B postgresql.conf $B$G(B
  $B%(%s%3!<%G%#%s%0$r;XDj$9$k$N$HF1$88z2L$,F@$i$l$^$9!%$?$@$7!$$3$l$ONr(B
  $B;KE*7P0^$+$i;D$5$l$F$$$k5!G=$G!$:#8e$O$3$N5!G=$rMxMQ$7$J$$$3$H$r$*$9(B
  $B$9$a$7$^$9!%@_DjNc(B:

  export PGCLIENTENCODING=SJIS postmaster -S

  (2) $B%/%i%$%"%s%H!$%U%m%s%H%(%s%IKh$K%(%s%3!<%G%#%s%0$r@_Dj$7$?$$>l9g(B

  $B$=$N%U%m%s%H%(%s%I(B($B$?$H$($P(B psql)$B$r5/F0$9$kA0$K4D6-JQ?t(B 
  PGCLIENTENCODING $B$r@_Dj$7$^$9!%(B

o set client_encoding $B%3%^%s%I$r;H$&J}K!(B

  SET CLIENT_ENCODING SQL$B%3%^%s%I$r;H$C$FF0E*$K%U%m%s%H%(%s%I$N%(%s%3!<(B
  $B%G%#%s%0$rJQ99$G$-$^$9!%Nc(B:

	SET CLIENT_ENCODING TO SJIS;

$B"#8=:_@_Dj$5$l$F$$$k%U%m%s%H%(%s%IB&$N%(%s%3!<%G%#%s%0$rD4$Y$k(B

 $B8=:_@_Dj$5$l$F$$$k%U%m%s%H%(%s%IB&$N%(%s%3!<%G%#%s%0$O(B

	show client_encoding;

 $B$G;2>H$G$-$^$9(B($B>.J8;z$GI=<($5$l$^$9(B)$B!%(B

$B"#%G%U%)%k%H$N%(%s%3!<%G%#%s%0$X$NI|5"(B

  SQL$B%3%^%s%I(B:

	RESET CLIENT_ENCODING;

  $B$O!$%G%U%)%k%H$N%U%m%s%H%(%s%I%(%s%3!<%G%#%s%0@_Dj$KI|5"$5$;$^$9!%(B
  postmaster$B$rN)$A>e$2$k$H$-$K(B postgresql.conf $B$N(B client_encoding $B$d4D(B
  $B6-JQ?t(B PGCLIENTENCODING $B$,@_Dj$5$l$F$$$k$H$=$N%(%s%3!<%G%#%s%0$K!$$=(B
  $B$&$G$J$1$l$P%G!<%?%Y!<%9$N%(%s%3!<%G%#%s%0$HF1$8$K$J$j$^$9!%(B
  
$B"#L@<(E*$J%(%s%3!<%G%#%s%0JQ49(B

  7.2$B$G$O!$(Bconvert$B$H$$$&4X?t$r;H$$!$L@<(E*$J%(%s%3!<%G%#%s%0JQ49$,$G$-(B
  $B$^$9!%(B

  convert(string text, [src_encoding name,] dest_encoding name) 

  $B$3$3$G(Bsrc_encoding$B$O(Btext$B$N%(%s%3!<%G%#%s%0L>$G$9!%>JN,$9$k$H!$%G!<%?(B
  $B%Y!<%9%(%s%3!<%G%#%s%0L>$HF1$8$G$"$k$H8+$J$5$l$^$9!%(Bdest_encoding$B$O!$(B
  $BJQ498e$N%(%s%3!<%G%#%s%0L>$G$9!%(B

  $BNc$r<($7$^$9!%(B

  SELECT convert(text, EUC_JP) FROM unicode_tbl;

  $B$O!$(BUnicode$B$N%F!<%V%k(Bunicode_tbl$B$N(Btext$BNs$r(BEUC_JP$B$KJQ49$7$FJV$7$^$9!%(B

  7.3$B$G$O$5$i$K(BSQL$BI8=`$N(BCONVERT$B4X?t$,;H$($^$9!%(BSQL$BI8=`$N(BCONVERT$B$O(B
  PostgreSQL$B$N(BCONVERT$B$H5!G=$O$[$H$s$IF1$8$G$9$,!$8F$S=P$77A<0$,0[$j$^(B
  $B$9!%(B

  SELECT convert(text using euc_jp_to_utf_8) FROM unicode_tbl;

  "using" $B$N8e$N0z?t$O!V%3%s%P!<%8%g%sL>!W$G$9!%$3$NNc$G$O!$(BEUC_JP $B$+(B
  $B$i(B UTF-8 $B$KJQ49$9$k%3%s%P!<%8%g%s$r;XDj$7$F$$$^$9!%Dj5A:Q$N%3%s%P!<(B
  $B%8%g%s$K$D$$$F$O!$%f!<%6!<%:%,%$%I$N(B "String Functions and
  Operators" $B$NI=(B"Built-in Conversions" $B$r8+$F$/$@$5$$!%(B

$B"#%(%s%3!<%G%#%s%0JQ49ITG=$N>l9g$N=hM}(B

  $B%P%C%/%(%s%IB&$N%(%s%3!<%G%#%s%0$H%U%m%s%H%(%s%IB&$N%(%s%3!<%G%#%s%0(B
  $B$,$$$D$bAj8_JQ49$G$-$k$H$O8B$j$^$;$s!%6KC<$JOC!$%P%C%/%(%s%IB&$,(B 
  EUC_JP $B$J$N$K!$%U%m%s%H%(%s%IB&$,(B EUC_KR $B$@$C$?$i$I$&$J$k$G$7$g$&!%(B
  $B$3$N>l9g(B PostgreSQL $B$OJQ49$G$-$J$$%3!<%I$r(B 16$B?JI=8=$KJQ49$7$^$9!%(B
  $B$?$H$($P!$(B"(bdae)" $B$N$h$&$K!%$J$*!$$3$N(B 16$B?JI=8=$O(B mule
  internal code $B$N%3!<%I$G$"$k$3$H$KCm0U$7$F2<$5$$!%$3$l$O!$D>@\%U%m%s(B
  $B%H%(%s%I(B <--> $B%P%C%/%(%s%I$N%(%s%3!<%G%#%s%0$rJQ49$9$k$N$G$O$J$/!$0l(B
  $BEYFbItI=8=$G$"$k(B mule internal code $B$r7PM3$7$F$$$k$?$a$G$9!%(B

  $B$J$*!$(BUnicode$B$H$=$l0J30$N%(%s%3!<%G%#%s%0$NJQ49$@$1$ONc30$G!$(BNOTICE
  $B%a%C%;!<%8$,I=<($5$l!$JQ49ITG=$NJ8;z$OL5;k$5$l$^$9!%(B

$B"#%G%U%)%k%H%3%s%P!<%8%g%s(B

  $B%G%U%)%k%H%3%s%P!<%8%g%s$O!$%P%C%/%(%s%I$H%U%m%s%H%(%s%I$H$N4V$N%(%s(B
  $B%3!<%G%#%s%0$N<+F0JQ49$K;H$o$l$kFCJL$J%3%s%P!<%8%g%s$G$9!%%G%U%)%k%H(B
  $B%3%s%P!<%8%g%s$O3F!9$N(B{$B%9%-!<%^!$%=!<%9%(%s%3!<%G%#%s%0!$%G%9%F%#%M!<(B
  $B%7%g%s%(%s%3!<%G%#%s%0(B}$B$NAH$_9g$o$;$K$*$$$F!$$?$@0l8D$@$1B8:_$7$^$9!%(B
  $B>e5-$G@bL@$7$?AH$_9~$_:Q$N%3%s%P!<%8%g%s$O!$(Bpg_catalog$B%9%-!<%^$K$*$$(B
  $B$FDj5A$5$l$F$*$j!$%9%-!<%^%5!<%A%Q%9$N@_Dj$K4X$o$i$:I,$:MxMQ$G$-$k%3(B
  $B%s%P!<%8%g%s$K$J$C$F$$$^$9!%(B

  $B5U$K8@$&$H!$(B pg_catalog $B0J30$N%9%-!<%^$K%G%U%)%k%H%3%s%P!<%8%g%s$r:n(B
  $B@.$9$k$3$H$K$h$j!$%G%U%)%k%H%3%s%P!<%8%g%s$r<+M3$KA*Br$9$k$3$H$b$G$-(B
  $B$k$o$1$G$9!%$?$H$($P(B SJIS $B$H$NJQ49$K$*$$$F!$(BPostgreSQL $B$,MQ0U$7$F$$(B
  $B$k(B MS932$B8_49(B $B$NJQ49$G$O$J$/!$(BJIS $B5,3J$N%7%U%H%8%9$KAjEv$9$kJQ49$r9T(B
  $B$&$h$&$J%3%s%P!<%8%g%s$r:n@.$9$k$3$H$b2DG=$G$9!%(B

$B"#%f!<%6Dj5A%3%s%P!<%8%g%s$N:n@.(B

  PostgreSQL 7.3$B0J9_!$%f!<%6Dj5A$N%3%s%P!<%8%g%s$r:n@.$G$-$k$h$&$K$J$C(B
  $B$F$$$^$9!%%3%s%P!<%8%g%s$NDj5A$O(B CREATE CONVERSION $B$H$$$&(B SQL $B%3%^%s(B
  $B%I$r;H$C$F9T$$$^$9!%(B

    CREATE [DEFAULT] CONVERSION conversion_name
        FOR source_encoding
        TO dest_encoding FROM funcname

  $B>\:Y$O%j%U%!%l%s%9%^%K%e%"%k$r$4Mw2<$5$$!%(B

$B"#(BSJIS$B%f!<%6Dj5AJ8;z$X$NBP1~(B

  7.0 $B$+$i(B SJIS$B%f!<%6Dj5AJ8;z(B (UDC) $B$KBP1~$7$F$$$^$9!%(BUDC $B$r$I$&07$&$+(B
  $B$H8@$&$3$H$K$D$$$FCf>r$5$s(B(nak@email.com)$B$+$iLdBjDs5/$H>\:Y$J2r@b$r(B
  $BD:$-$^$7$?$N$G!$;29M$N$?$a$K$3$N%I%-%e%a%s%H$N:G8e$KIU$1$F$*$-$^$9!%(B
  $B$^$?!$$3$NLdBj$K$D$$$F$O!$(BPostgreSQL$BF|K\8l%a!<%j%s%0%j%9%H$N(B 
  [pgsql-jp 12288] (1999/12/17$BIU(B)$B$H(B [pgsql-jp 12486] (2000/1/5$BIU(B) $B$+$i(B
  $B;O$^$k%9%l%C%I$G5DO@$r8+$k$3$H$,$G$-$^$9(B($B%a!<%k$N%"!<%+%$%V$O(B
  http://www.sra.co.jp/people/t-ishii/PostgreSQL/ $B$G;2>H$G$-$^$9(B)$B!%(B

  $B$3$3$G$O!$$=$l$i$N5DO@$r$U$^$(!$4JC1$K2r@b$7$^$9!%(B

  PostgreSQL$B$G$O!$F|K\8l$r;HMQ$9$k:]$K%P%C%/%(%s%IB&$N%(%s%3!<%G%#%s%0(B
  $B$r(B EUC_JP $B$^$?$O(B MULE_INTERNAL or Unicode $B$K$9$kI,MW$,$"$j$^$9!%(B
  MULE_INTERNAL $B$O(B EUC_JP $B$KJ8;z=89g$rI=$9%3!<%I$rIU$1$?$b$N$J$N$G!$K\(B
  $B<AE*$KF1$8$G$9!%$^$?!$(BUnicode <---> SJIS $BJQ49$O8=:_$N$H$3$m%5%]!<%H(B
  $B$5$l$F$$$^$;$s$N$GL5;k$7$^$9!%$7$?$,$C$F!$$3$3$G$O(B EUC_JP $B$H(B SJIS $B$N(B
  $BAj8_JQ49$N$_$r9M$($^$9!%(B

  $BM=HwCN<1(B

  $B0l8}$K(B EUC_JP $B$H$$$C$F$b!$<B:]$K$OCf?H$OJ#?t$NJ8;z=89g$+$i@.$jN)$C$F(B
  $B$$$^$9!%(B

	G0: JIS ROMAN (ASCII $B$H$[$\F1$8(B)
	G1: JIS X 0208 (JIS $B4A;z(B)
	G2: JIS X 0201 (1$B%P%$%H%+%J(B)
	G3: JIS X 0212 (JIS $BJd=u4A;z(B)

  $B0lJ}(B SJIS $B$O$3$N$&$A4pK\E*$K(B G0, G1, G2 $B$r%5%]!<%H$7$F$*$j!$(BG3 $B$O%5(B
  $B%]!<%H$7$F$$$^$;$s!%$7$?$,$C$F!$(BSJIS $B$O(B EUC_JP $B$NItJ,=89g$H$_$J$9$3(B
  $B$H$,$G$-!$<B:](B PostgreSQL 6.5 $B$^$G$O$3$N9M$($G<BAu$5$l$F$$$^$7$?!%(B

  $B$H$3$m$,!$(BWindows PC $B$N(B SJIS $B$N@$3&$G$O!$>e5-(B JIS $B5,3J$GDj5A$5$l$F$$(B
  $B$J$$J8;z%3!<%I$,0lItMxMQ$5$l$F$*$j!$$3$NItJ,(B (UDC) $B$O=>Mh(B PostgreSQL 
  $B$G$OA4$/9MN8$5$l$F$$$^$;$s$G$7$?!%<B:](B UDC $B$r4^$`(B SJIS $B$r(B EUC_JP $B$K(B
  $BJQ49$9$k$H$-$KIT@5$JJQ49$,9T$o$l$F$$$^$7$?!%$=$3$G(B PostgreSQL 7.0 $B$G(B
  $B$O!$$^$:$3$NLdBj$r2r7h$9$k$3$H$K$7$^$7$?!%(B

  $B$^$?!$(BUDC $B$NMxMQJ}$K$D$$$F$OI8=`5,3J$N$h$&$J$b$N$O$"$j$^$;$s$,!$<B$O(B
  $B6H3&CDBN$G$N<h$j7h$a$,$"$j!$$$$o$f$k%G%U%!%/%H%9%?%s%@!<%I$J$i$PB8:_(B
  $B$9$k$3$H$,J,$+$j$^$7$?!%$=$3$G$3$l$K$D$$$F$b$G$-$k$@$1%5%]!<%H$9$k$3(B
  $B$H$K$7$^$7$?!%(B

  PostgreSQL 7.0 $B$G$N(B UDC $BBP1~$N<BAu(B

  (1) $B%f!<%6Dj5AJ8;zNN0h$O(B JIS $B$N%f!<%6Dj5AJ8;zNN0h$K%^%C%T%s%0$9$k!%(B
  SJIS $B$H(B EUC_JP $B$G(B1$BBP(B1$B$NBP1~$K$J$j$^$9!%(B

    - SJIS $B%f!<%6Dj5AJ8;zNN0h(B A ($B2>>N(B)
          95$B!A(B104 $B6h(B  $B"+"*(B $BF|K\8l(B EUC / G1 (JIS X 0208) 85$B!A(B95 $B6h(B

    - SJIS $B%f!<%6Dj5AJ8;zNN0h(B B ($B2>>N(B)
         105$B!A(B114 $B6h(B  $B"+"*(B $BF|K\8l(B EUC / G3 (JIS X 0212) 85$B!A(B95 $B6h(B

  (2) IBM $B3HD%J8;zNN0h(B (SJIS 115$B!A(B120 $B6h(B)

  $BJQ49%F!<%V%k$K$h$C$F(B G1 (JIS X 0208)$B$H!$(BG3 (JIS X 0212)$B$KJQ49$5$l$^(B
  $B$9!%$J$*!$$3$NJQ49$K$*$$$F$O!$(BSJIS --> EUC_JP $B$GJQ49$7!$:F$S(B EUC_JP --
  > SJIS $B$KJQ49$9$k$H85$N(B SJIS $B$KLa$i$J$$$3$H$,$"$j$^$9!%$^$?!$(BEUC_JP --
  > SJIS $B$NJQ49$G$O!$$9$Y$F$NJ8;z$rJQ49$G$-$k$o$1$G$O$J$$$N$G!$$=$N>l(B
  $B9g$OJQ49ITG=J8;z$H$7$F!V".!W$KCV$-49$($^$9!%(B

  *$B6H3&CDBN$N<h$j7h$a$G$O!$JQ49ITG=J8;z$O!V<BAu0MB8!W$H$J$C$F$$$^$9$,!$(B
  Solaris $B$r$O$8$a!$B?$/$N%7%9%F%`$,!V".!W$rJQ49ITG=J8;z$K:NMQ$7$F$$$^(B
  $B$9!%(BPostgreSQL$B$b$3$l$K9g$o$;$^$7$?!%(B

  (3) NEC $BA*Dj(B IBM $B3HD%J8;zNN0h(B (SJIS 89$B!A(B92 $B6h(B)
  
  PostgreSQL 7.0$B$G$O$9$Y$FJQ49ITG=J8;z!V".!W$KCV$-49$($i$l$^$9!%(B

  PostgreSQL 7.0.1$B0J9_$G$O!$0lC6(B IBM $B3HD%J8;zNN0h$KJQ49$5$l$?8e!$(BG1
  (JIS X 0208)$B$H!$(BG3 (JIS X 0212)$B$KJQ49$5$l$^$9!%(B

$B<U<-!'(B

  o $BFA2H(B@$B;06(1?M"%5!<%S%9$5$s$+$i!$(BNEC $BA*Dj(B IBM $B4A;zBP1~%Q%C%A$rDs6!$7(B
    $B$F$$$?$@$-$^$7$?!%(B

  o $B3F<oJ8;z%;%C%H!$%3!<%I7O$K$D$$$F!$F|K\8l(B PostgreSQL $B%a!<%j%s%0%j%9%H(B
    $B$N%a%s%P$NJ}$+$i%"%I%P%$%9$rD:$-$^$7$?!%$3$3$K46<U$7$^$9!%(B
    $B$^$?!$(BSJIS $BBP1~$K$D$$$F$O!$;T@n(B@$B$*CcBg$5$s$N%Q%C%A$r;29M$K$5$;$F$$(B
    $B$?$@$-$^$7$?!%(B

  o SJIS$B%f!<%6Dj5AJ8;z(B (UDC) $B$r$I$&07$&$+$H8@$&$3$H$K$D$$$FCf>r$5$s(B
    (nak@email.com)$B$+$iLdBjDs5/$H>\:Y$J2r@b$rD:$-$^$7$?!%(B

$B"#(BUnicode$B$H$=$l0J30$N%(%s%3!<%G%#%s%0$H$NAj8_JQ49$K$D$$$F(B

  PostgreSQL 7.1$B$+$i(BUnicode$B$H$=$l0J30$N%(%s%3!<%G%#%s%0$H$NAj8_JQ49$,(B
  $B2DG=$K$J$j$^$7$?!%$3$NJQ49$O$4$/0lIt$NJ8;z%3!<%I(B(ISO 8859-1)$B$r$N$>$-!$(B
  $B%m%8%C%/$K$h$kJQ49$,$G$-$J$$$?$a!$JQ49$N:]$K$O%F!<%V%k$,I,MW$K$J$j$^(B
  $B$9!%(BPostgreSQL$B$N<BAu$G$O!$(BUnicode$BJQ49%F!<%V%k$O(B Unicode organization 
  $B$,Ds6!$9$k$b$N$r;HMQ!$$3$l$r(BPerl$B%W%m%0%i%`$G(BC$B8@8l$N%F!<%V%k$KJQ49$7(B
  $B$F:n@.$7$F$$$^$9(B(Perl$B%W%m%0%i%`$O(BNARITA Tomio$B;a:n@.$N(Blv$B%P!<%8%g%s(B
  4.3.6 $B$KIUB0$9$k$b$N$r2~B$$N>e!$MxMQ$7$F$$$^$9(B)$B!%(BUnicode
  organization$B$NDs6!$9$kJQ49%F!<%V%k$O:FG[I[$,5v2D$5$l$F$$$J$$$?$a!$(B
  PostgreSQL$B$N%=!<%9%3!<%I$K$O4^$^$l$F$$$^$;$s!%0J2<!$;HMQ$7$?JQ49%F!<(B
  $B%V%k$rNs5s$7$^$9!%(B

  $B%(%s%3!<%G%#%s%0(B	$BJQ49%F!<%V%k(B
  ============================================================
  ISO 8859-1		$B$J$7(B
  ISO 8859-2		8859-2.TXT
  ISO 8859-3		8859-3.TXT
  ISO 8859-4		8859-4.TXT
  ISO 8859-5		8859-5.TXT
  ISO 8859-6		8859-6.TXT
  ISO 8859-7		8859-7.TXT
  ISO 8859-8		8859-8.TXT
  ISO 8859-9		8859-9.TXT
  ISO 8859-10		8859-10.TXT
  ISO 8859-13		8859-13.TXT
  ISO 8859-14		8859-14.TXT
  ISO 8859-15		8859-15.TXT
  ISO 8859-16		8859-16.TXT
  EUC_JP		JIS0201.TXT, JIS0208.TXT, JIS0212.TXT,
			CP932.TXT, sjis.map
  SJIS			CP932.TXT
  EUC_CN		GB2312.TXT
  GBK			CP936.TXT
  EUC_KR		KSX1001.TXT
  UHC			CP949.TXT
  JOHAB			JOHAB.TXT
  EUC_TW		CNS11643.TXT
  Big5			BIG5.TXT
  WIN1256		CP1256.TXT
  TCVN			CP1258.TXT
  WIN874		CP874.TXT
  ============================================================

$B<U<-!'(B

  o $BFA2H(B@$B;06(1?M"%5!<%S%9$5$s$+$i!$(BCP932.TXT$B$h$j@8@.$7$?(BSJIS$BMQ$NJQ49%F!<(B
    $B%V%k$rDs6!$7$F$$$?$@$-$^$7$?!%$3$l$K$h$j!$(BIBM $B3HD%J8;zNN0h(B (SJIS
    115$B!A(B120 $B6h(B), NEC $BA*Dj(B IBM $B3HD%J8;zNN0h(B (SJIS 89$B!A(B92 $B6h(B)$B$KBP1~$9$k(B
    $B$3$H$,$G$-$k$h$&$K$J$j$^$7$?!%(B


$B;29M(B1$B!'(B

  Pavel Behal$B;a$K$h$jDs6!$5$l$?(BWIN1250$B%5%]!<%H$G$9$,!$(BWindows$B4D6-$G$N(B
  $BMxMQ$N;EJ}$K$D$$$F;29M$K$J$k%I%-%e%a%s%H$,IUB0$7$F$$$k$N$G!$$3$3$KE:(B
  $BIU$7$F$*$-$^$9!%(B

  -------------------------------------------------------------------
Version: 0.91 for PgSQL 6.5
Author: Pavel Behal
Revised by: Tatsuo Ishii
Email: behal@opf.slu.cz
Licence: The Same as PostgreSQL

Sorry for my Eglish and C code, I'm not native :-)

!!!!!!!!!!!!!!!!!!!!!!!!! NO WARRANTY !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Instalation:
------------
1) Change three affected files in source directories 
    (I don't have time to create proper patch diffs, I don't know how)
	[PostgreSQL 6.5.1$B$G$O$3$N%9%F%C%W$OI,MW$"$j$^$;$s!%(B-- $B@P0f(B]
2) Compile with enabled locale and multibyte set to LATIN2
3) Setup properly your instalation, do not forget to create locale
   variables in your profile (environment). Ex. (may not be exactly true):
	LC_ALL=cs_CZ.ISO8859-2
	LC_COLLATE=cs_CZ.ISO8859-2
	LC_CTYPE=cs_CZ.ISO8859-2
	LC_MONETARY=cs_CZ.ISO8859-2
	LC_NUMERIC=cs_CZ.ISO8859-2
	LC_TIME=cs_CZ.ISO8859-2
4) You have to start the postmaster with locales set!
5) Try it with Czech language, it have to sort
5) Install ODBC driver for PgSQL into your M$ Windows
6) Setup properly your data source. Include this line in your ODBC
   configuration dialog in field "Connect Settings:" :
	SET CLIENT_ENCODING = 'WIN1250';
7) Now try it again, but in Windows with ODBC.

Description:
------------
- Depends on proper system locales, tested with RH6.0 and Slackware 3.6,
  with cs_CZ.iso8859-2 loacle
- Never try to set-up server multibyte database encoding to WIN1250,
  always use LATIN2 instead. There is not WIN1250 locale in Unix
- WIN1250 encoding is useable only for M$W ODBC clients. The characters are
  on thy fly re-coded, to be displayed and stored back properly
 
Important:
----------
- it reorders your sort order depending on your LC_... setting, so don't be
  confused with regression tests, they don't use locale
- "ch" is corectly sorted only in some newer locales (Ex. RH6.0)
- you have to insert money as '162,50' (with comma in aphostrophes!)
- not tested properly
  -------------------------------------------------------------------

$B;29M(B2$B!'(BSJIS$B%f!<%6Dj5AJ8;z(B (UDC) $B$r$I$&07$&$+$H8@$&$3$H$K$D$$$FCf>r$5$s(B
    (nak@email.com)$B$+$i$$$?$@$$$?LdBjDs5/$H2r@b$G$9!%(B

-------------------------- $B0zMQ3+;O(B ----------------------------------
---
1. SJIS $B%3!<%I$NHO0O(B

    1 $B%P%$%HL\(B 0x81 - 0x9F$B!$(B0xE0 - 0xFC
    2 $B%P%$%HL\(B 0x40 - 0x7E$B!$(B0x80 - 0xFC

    $B$$$o$f$k!V30;zNN0h!W$NHO0O(B:

    - X0208 $B6&DL<+M3NN0h(B

    |--------------------
    | 85 $B6h(B  0xEB40 $B!A(B
    |...
    |--------------------
    | 89 $B6h(B  0xED40 $B!A(B    ; 89$B!A(B92 $B6h$O(B
    |...                  ; $B!V(BNEC $BA*Dj(B IBM $B3HD%J8;zNN0h!W(B
    |-------------------- ; $B$H8F$P$l$k(B
    | 93 $B6h(B  0xEF40 $B!A(B
    | 94 $B6h(B  0xEF9F $B!A(B 0xEFFC

    - $B%f!<%6Dj5AJ8;zNN0h(B
    
    |--------------------
    | 95 $B6h(B  0xF040 $B!A(B    ; 95$B!A(B104 $B6h(B
    |...                  ; $B!V%f!<%6Dj5AJ8;zNN0h(B A$B!W(B($B2>>N(B)
    |--------------------
    |105 $B6h(B  0xF540 $B!A(B    ; 105$B!A(B114 $B6h(B
    |...                  ; $B!V%f!<%6Dj5AJ8;zNN0h(B B$B!W(B($B2>>N(B)
    |--------------------
    |115 $B6h(B  0xFA40 $B!A(B    ; 115$B!A(B120 $B6h$O0lHL$K(B
    |...                  ; $B!V(BIBM $B3HD%J8;zNN0h!W(B
    |120 $B6h(B  ...          ; $B$H8F$P$l$k(B
    |--------------------

---
2. i-mode $BC<Kv$,;H$C$F$$$k?^7AJ8;z%3!<%I$NHO0O(B

    0xF89F - 0xF8FC  (112 $B6h(B)
    0xF940 - 0xF949  (113 $B6h(B)
    0xF972 - 0xF97E  (113 $B6h(B)
    0xF980 - 0xF990  (113 $B6h(B)
    0xF9B0           (114 $B6h(B)

---
3. $B0lHLE*$J(B EUC $BF|K\8l%3!<%I$NDj5A(B

    G0 : [0x21-0x7E]                  ; $B$$$o$f$k(B JIS ROMAN
    G1 : [0xA1-0xFE] [0xA1-0xFE]      ; JIS X 0208 
    G2 : 0x8E [0xA1-0xDF]             ; JIS X 0201 $B%+%J(B
    G3 : 0x8F [0xA1-0xFE] [0x21-0x7E] ; JIS X 0212 $BJd=u4A;z(B

---
[$BLdBjE@(B]

SJIS 95$B!A(B120 $B6h$O(B JIS X0208 $B$K3:Ev$9$kNN0h$,B8:_$7$J$$(B
$B$?$a!$$3$NNN0h$N(B EUC - SJIS $BJ8;z%3!<%IJQ49$O3F%Y%s%@$K(B
$B$h$C$F0[$J$k$N$G$O$J$$$+!$$H$$$&$N$,@P0fMM$+$i$N$4;XE&(B
$B$G$7$?!%(B

---
[$B5DO@(B]

$BD4::$N7k2L!$(BSJIS 95$B!A(B120 $B6h$r(B EUC $B$KJQ49$9$k$?$a$NI8=`E*$J(B
$B%k!<%k$,$J$$$o$1$G$O$J$$!$$H$$$&$3$H$,$o$+$j$^$7$?!%>\:Y$O(B
$B8e=R$N;29M;qNA$r$4Mw$$$?$@$/$H$7$F!$$3$3$G$O$=$N%k!<%k$r(B
$B4JC1$K$4@bL@$$$?$7$^$9!%(B

   - SJIS $B%f!<%6Dj5AJ8;zNN0h(B A ($B2>>N(B)
          95$B!A(B104 $B6h(B  $B"+"*(B $BF|K\8l(B EUC / G1 85$B!A(B95 $B6h(B

         $B$?$H$($P(B SJIS $B$N(B (95, 1) = 0xF040 $B$O(B
         EUC $B$N(B 0xF5A1 $B$K$J$j$^$9!%(B

   - SJIS $B%f!<%6Dj5AJ8;zNN0h(B B ($B2>>N(B)
         105$B!A(B114 $B6h(B  $B"+"*(B $BF|K\8l(B EUC / G3 85$B!A(B95 $B6h(B

         $B$?$H$($P(B SJIS $B$N(B (105, 1) = 0xF540 $B$O(B
         EUC $B$N(B 0x8FF5A1 $B$K$J$j$^$9!%(B

   - IBM $B3HD%J8;zNN0h(B
         115$B!A(B120 $B6h(B

         JIS X 0208 ($BF|K\8l(B EUC / G1)$B!$(BJIS X 0212 
         ($BF|K\8l(B EUC / G3) $B$K3:Ev$9$kJ8;z$,$"$k>l9g(B
         $B$O$=$NJ8;z$K%^%C%T%s%0!%$=$&$G$J$$>l9g$O(B
         $BF|K\8l(B EUC / G3 83$B!A(B84 $B6h$r!$6hE@%3!<%I$N>e0L(B
         $B$+$i=g$K3d$jEv$F$F$$$/(B ($BJQ49%F!<%V%kJ}<0(B)

$B$3$N;EMM$O!$9-$/;H$o$l$F$$$k(B SJIS $B$H(B EUC $B$N%^%C%T%s%0$,%Y%s%@$K(B
$B$h$C$F0[$J$k$?$a!$Aj8_1?MQ$N:]$KLdBj$K$J$C$F$$$k$3$H$+$i!$(B1996 
$BG/$K(B OSF $BF|K\%Y%s%@6(5D2q$,8!F$:n@.$7$?Js9p=q$,%Y!<%9$K$J$C$F$$(B
$B$k$h$&$G$9!%(B

Solaris $B$N%I%-%e%a%s%H$K$O!V(BTOG $BF|K\%Y%s%@6(5D2q?d>)(B EUC$B!&%7%U%H(B 
JIS $B%3!<%IJQ49;EMM!W$K$b$H$E$/$H=q$$$F$"$j!$(BSolaris 2.6 $B$+$iF3F~(B
$B$7$F$$$k$N$@$=$&$G!$;d$+$i8+$l$P;v<B>e$NI8=`$H9M$($F$bIT<+A3$G$O(B
$B$J$$$H46$8$^$9!%(B

$B$J$*!$>/$J$/$H$b(B 1996 $BG/Ev;~$K$*$$$F$O!$(BOracle $B$d(B Sybase $B$O(B 
SJIS $B$N%f!<%6Dj5A(B/$B%Y%s%@Dj5AJ8;zNN0h$r(B EUC $B$KJQ49$9$k:]!$H=JLIT(B
$B2DG=J8;z$H$7$F07$C$F$$$k$i$7$$$H$$$&$3$H$bJdB-$7$F$*$-$^$9!%(B

---
[$B;29M;qNA(B]

// URL $B$,D9$$$N$G!$ESCf$G@Z$l$J$$$H$$$$$N$G$9$,(B...

-$B!VF|K\8l(B EUC$B!&%7%U%H(B JIS $B%3!<%IJQ49;EMM$H%3!<%I7O<BBVD4::!W(B
    1966, OSF $BF|K\%Y%s%@6(5D2q(B
    http://www.opengroup.or.jp/jvc/cde/sjis-euc.html

-$B!VJ8;z%3!<%IJQ495,B'!W(B
    Solaris 7$B!$(BJFP $B%f!<%6!<%:%,%$%I(B
    http://docs.sun.com/ab2/coll.139.3/JFPUG/@Ab2PageView/11683?Ab2Lang=ja&Ab2Enc=euc-jp

-$B!VF|K\8lJ8;z%3!<%I!W(B
    Solaris 7$B!$(BJFP $B%f!<%6!<%:%,%$%I(B
    http://docs.sun.com/ab2/coll.139.3/JFPUG/@Ab2PageView/879;td=5?Ab2Lang=ja&Ab2Enc=euc-jp

    // $BFf$N!V(B1$B!A(B20 $B6h!W$N5-=R$O$3$3$+$i$-$F$$$^$9!%(B

---
-------------------------- $B0zMQ$3$3$^$G(B ---------------------------------

$B2~DjMzNr!'(B

  2002/10/21
	* $B%^%k%A%P%$%HBP1~$,%*%W%7%g%s$G$O$J$/!$8GDj$GI,$:AH$_9~$^$l$k(B
	  $B$h$&$K$J$j$^$7$?!%(B

	* CREATE CONVERSION/DROP CONVERSION$B$NDI2C!%$3$l$K$H$b$J$$!$%((B
	  $B%s%3!<%G%#%s%0JQ494X?t$,%m!<%@%V%k4X?t$K$J$j!$%P%C%/%(%s%I$N(B
	  $B%m!<%I%b%8%e!<%k%5%$%:$,(B7.2$B$h$j$b>.$5$/$J$C$F$$$^$9!%$^$?!$(B
	  SQL$BI8=`$N(BCONVERT$B4X?t$rDI2C$7$^$7$?!%(B
	* $B$$$/$D$+%(%s%3!<%G%#%s%0$,DI2C$5$l$F$$$^$9!%(B
	* $B0J>e!$(B7.3$B$KH?1G$5$l$^$9!%(B

  2001/10/01
	* CONVERT$B$NDI2C!%(Blpad/rpad/trim/btrim/ltrim/rtrim/translate$B$N(B
	  $B%^%k%A%P%$%HBP1~DI2C!%(Bchar/varchar$B$G%P%$%H?t$G$O$J$/!$J8;z?t(B
	  $B$G%5%$%:$rDj5A$9$k$h$&$KJQ99!%0J>e!$(B7.2$B$KH?1G$5$l$^$9!%(B

  2001/2/15
	* $BFA2H(B@$B;06(1?M"%5!<%S%9$5$s$+$i!$(BCP932.TXT$B$h$j@8@.$7$?(BSJIS$BMQ$N(B
	  $BJQ49%F!<%V%k$rDs6!$7$F$$$?$@$-$^$7$?!%(B7.1$B$KH?1G$5$l$^$9!%(B

  2001/1/6
	* UNICODE$B$HB>$N%(%s%3!<%G%#%s%0$H$NAj8_JQ495!G=$rDI2C!%(B
	* 7.1$B$KH?1G$5$l$^$9!%(B

  2000/5/20
	* NEC $BA*Dj(B IBM $B4A;zBP1~$rDI2C$7$^$7$?!%$3$l$O(B $BFA2H(B@$B;06(1?M"%5!<%S%9(B
	  $B$5$s$+$i$N(B contribute $B$G$9!%(B
	* $B$3$l$i$O!$(B7.0.1 $B$KH?1G$5$l$^$9!%(B

  2000/3/22
	* PQsetClientEncoding, PQclientEncoding $B$r(Blibpq $B4X?t$KDI2C!$(B
	  $B%3%M%/%7%g%sKh$K%(%s%3!<%G%#%s%0$rJQ992DG=$K!%(B
	* SJIS $B%f!<%6Dj5AJ8;z(B (UDC) $B$X$NBP1~(B
  	* ./configure --with-mb=EUC_JP $B$+$i(B
	  ./configure --enable-multibyte=EUC_JP $B$KJQ99(B
  	* SQL_ASCII $B$N(B regression test $BDI2C(B
	* $B$3$l$i$O(B 7.0 $B$KH?1G$5$l$^$9!%(B

  1999/7/11 WIN1250(Windows$BMQ$N%A%'%38l(B)$B%5%]!<%H$rDI2C$7$^$7$?!%(B
	* WIN1250 $B$,%U%m%s%H%(%s%IB&$N%(%s%3!<%G%#%s%0$H$7$FMxMQ$G$-$k$h(B
	  $B$&$K$J$j$^$7$?!%$3$N>l9g!$%P%C%/%(%s%IB&$N%(%s%3!<%G%#%s%0$O(B
	  LATIN2 $B$^$?$O(B MULE_INTERNAL $B$H$7$^$9!%(B
	  (contributed by Pavel Behal)
	* backend/utils/mb/conv.c$B$K$*$1$k7?$NIT@09g$r=$@5$7$^$7$?!%(B
	  (contributed by Tomoaki Nishiyama)
	* $B$3$l$i$O(B6.5.1$B$KH?1G$5$l$^$9!%(B

  1999/3/23 $B%-%j%kJ8;z%5%]!<%HDI2CB>(B(6.5 $B$KH?1G:Q(B)
	* $B%(%s%3!<%G%#%s%0$H$7$F(B KOI8(KOI8-R), WIN(CP1251), ALT(CP866) $B$r(B
	  $B%5%]!<%H$7$F$$$^$9!%$3$l$i$O!$%U%m%s%H%(%s%I!$%P%C%/%(%s%I!$(B
	  $B$I$A$i$N%(%s%3!<%G%#%s%0$H$7$F$b;HMQ2DG=$G$"$j!$%(%s%3!<%G%#%s%0$N(B
	  $BAj8_JQ49$,2DG=$G$9!%$^$?!$=>Mh$+$i%5%]!<%H$7$F$$$k(B ISO 8859-5 $B$b(B
	  $BF1MM$K;HMQ2DG=$G$9!%(B
	  $B%-%j%kJ8;z%5%]!<%H$O!$(BOleg Broytmann <phd@sun.med.ru> $B;a$N(B
	  $B%j%/%(%9%H5Z$S6(NO$K$h$j<B8=$7$^$7$?!%$3$l$O!$=>Mh$+$i$"$k(B
	  RCODE $B%5%]!<%H$N5!G=$r<h$j9~$`$b$N$G$b$"$j$^$9!%(B
	* MB $B$H(B locale $B$rF1;~$K;XDj$7$?>l9g$KBgJ8;z!?>.J8;z$rL5;k$7$?(B
	  $B@55,I=8=8!:w$,@5>o$KF0:n$7$J$$%P%0$r=$@5(B

  1999/1/26 Big5 $B%5%]!<%HDI2C(B(6.4.2-patched/6.5 $B$KH?1G:Q(B)
	* Big5 $B$,%U%m%s%H%(%s%IB&$N%(%s%3!<%G%#%s%0$H$7$FMxMQ$G$-$k$h(B
	  $B$&$K$J$j$^$7$?!%$3$N>l9g!$%P%C%/%(%s%IB&$N%(%s%3!<%G%#%s%0$O(B
	  EUC_TW $B$^$?$O(B MULE_INTERNAL $B$H$7$^$9!%(B
	* EUC_TW $B$N(B regression test $B%1!<%9$rDI2C(B
	  (contributed by Jonah Kuo <jonahkuo@mail.ttn.com.tw>)

  1998/12/16 $BK\%I%-%e%a%s%H=$@5(B(6.4.2 $B$KH?1G:Q(B)$B!%(B
	* Makefile.custom $B$G(B MB=EUC_JP $B$J$I$H@_Dj$9$kJ}K!$O(B 6.4 $B0J9_(B
	  $B%5%]!<%H$5$l$F$$$J$$$N$G:o=|$7$?!%(B
	* $BJ8;z%3!<%I(B $B"*(B $B%(%s%3!<%G%#%s%0!$%/%i%$%"%s%H"*%U%m%s%H%(%s%I(B
	  $B%5!<%P"*%P%C%/%(%s%I(B $B$K$=$l$>$l8l6g$r=$@5!%(B

  1998/12/15 6.4 $B8~$1%P%0=$@5%Q%C%A%j%j!<%9(B(6.4.2 $B$KH?1G:Q(B)$B!%(B
	* SQL_ASCII $B%5%]!<%H$N%P%0=$@5(B

  1998/11/21 6.4 $B8~$1%P%0=$@5%Q%C%A%j%j!<%9(B(6.4.2 $B$KH?1G:Q(B)$B!%(B
	* BINARY CURSOR $B$NLdBj$r=$@5(B
	* pg_dumpall $B$N%P%0=$@5(B

  1998/11/5 6.4 $B%j%j!<%9!%(B
	* pg_database $B$N(B encoding $B%+%i%`$,(B MB $B$,M-8z$G$J$$$H$-$K$b(B
	  $BDI2C$5$l$k$h$&$K$J$C$?!%$=$N$?$a!$(BMB $B$,M-8z$G$J$$$H$-$K$O!$(B
	  ASCII $B$N%(%s%3!<%G%#%s%0$rI=$9(B SQL_ASCII $B$r?7$7$$%(%s%3!<%G%#%s%0(B
	  $B$H$7$FDI2C$7$?!%$3$l$K$H$b$J$$!$%(%s%3!<%G%#%s%0L>$KBP1~$9$k(B
	  $B%(%s%3!<%G%#%s%0(BID$B$,(B SQL_ASCII $B$r(B 0 $B$H$9$kHV9f$KJQ99$K$J$C$?!%(B

  1998/7/22 6.4 $B&A8~$1$K%Q%C%A$r%j%j!<%9!%(B
	* initdb/createdb/create database $B$G%P%C%/%(%s%IB&$N(B
	  $B%(%s%3!<%G%#%s%0$r@_Dj$-$k5!G=<BAu!%$3$N$?$a!$%7%9%F%`%+%?%m(B
	  $B%0$N(B pg_database $B$K?7$7$$%+%i%`(B encoding $B$rDI2C(B(MB$B$,M-8z$J;~$@$1(B)
	* copy $B$,(B PGCLIENTENCODING $B$KBP1~(B
	* SQL92 $B$N(B "SET NAMES" $B$r%5%]!<%H(B(MB$B$,M-8z$J;~$@$1(B)
	* LATIN2-5 $B$r%5%]!<%H(B
	* regression test $B$K(B unicode $B$N%F%9%H%1!<%9$rDI2C(B
	* MB $B@lMQ$N(B regression $B%F%9%H%G%#%l%/%H%j(B test/mb $B$rDI2C(B
	* $B%=!<%9%U%!%$%k$NCV$->l=j$rBgI}8+D>$7!%(BMB $B4X78$O(B
	  include/mb, backend/utils/mb $B$KCV$/$h$&$K$7$?(B

  1998/5/25 $B%P%0=$@5(B(mb_b3.patch $B$H$7$F(B pgsql-jp ML $B$K%j%j!<%9!$(B
	$BK\2H$G$O(B 6.4 snapshot $B$K<h$j9~$^$l$kM=Dj(B)	

  1998/5/18 $B5!G=DI2C!?%P%0=$@5(B(mb_b2.patch $B$H$7$F(B pgsql-jp ML $B$K%j%j!<%9!$(B
	$BK\2H$G$O(B 6.4 snapshot $B$K<h$j9~$^$l$kM=Dj(B)
	* $B4D6-JQ?t(B PGCLIENTENCODING $B$N%5%]!<%H!%%U%m%s%H%(%s%IB&$N(B
	  $B%(%s%3!<%G%#%s%0$r;XDj$9$k!%8=:_!$(BSJIS, EUC_*, MULE_INTERNAL, 
	  LATIN1 $B$,;XDj$G$-$k!%$^$?!$(B
	  set client_encoding to 'sjis';
	  $B$G$b2DG=(B
	* 8bit $BJ8;z$,EO$k$HLdBj$,5/$-$k2U=j$K$G$-$k$@$1BP1~(B

  1998/4/21 $B5!G=DI2C!?%P%0=$@5(B(mb_b1.patch $B$H$7$F(B pgsql-jp ML $B$K%j%j!<%9!$(B
	$BK\2H$G$O(B 6.4 snapshot $B$K<h$j9~$^$l$F$$$k(B)
	* character_length(), position(), substring() $B$N%^%k%A%P%$%H(B
	  $BBP1~(B
	* octet_length() $BDI2C(B $B"*(B initdb $B$N$d$jD>$7I,MW(B
	* configure $B$N%*%W%7%g%s$K(B MB $B%5%]!<%HDI2C(B
	  (ex. configure --with-mb=EUC_JP)
	* EUC_KR $B$N(B regression test $BDI2C(B
	  ("Soonmyung. Hong" <hong@lunaris.hanmesoft.co.kr> $B$5$sDs6!(B)
	* EUC_JP $B$N(B regression test $B$K(B character_length(), position(),
	  substring(), octet_length() $BDI2C(B
	* regress.sh $B$N(B SystemV $B$K$*$1$kHs8_49@-=$@5(B
	* toupper(), tolower() $B$K(B 8bit $BJ8;z$,EO$k$HMn$A$k$3$H$,(B
	  $B$"$k$N$r=$@5(B

  1998/3/25 PostgreSQL 6.3.1 $B%j%j!<%9!$(BMB PL2 $B$,<h$j9~$^$l$k(B

  1998/3/10 PL2 $B$r%j%j!<%9(B
	* EUC_JP, EUC_CN, MULE_INTERNAL $B$N(B regression test $B$rDI2C(B
	  (EUC_CN $B$N%G!<%?$O(B he@sra.co.jp $B$5$sDs6!(B)
	* regexp $B$K$*$$$F!$(Bisalpha $B$J$I$K(B unsigend char $B0J30$NCM$,(B
          $BEO$i$J$$$h$&$K%,!<%I$r$+$1$k(B
	* $B1Q8l$N%I%-%e%a%s%H$rDI2C(B
	* MB $B$rDj5A$7$J$$>l9g$KH/@8$9$k%P%0$r=$@5(B

  1998/3/1 PL1 $B$r%j%j!<%9(B

$B0J>e!%(B