mirror of
https://github.com/postgres/postgres.git
synced 2025-07-27 12:41:57 +03:00
From: t-ishii@sra.co.jp
Included are patches intended for allowing PostgreSQL to handle multi-byte charachter sets such as EUC(Extende Unix Code), Unicode and Mule internal code. With the MB patch you can use multi-byte character sets in regexp and LIKE. The encoding system chosen is determined at the compile time. To enable the MB extension, you need to define a variable "MB" in Makefile.global or in Makefile.custom. For further information please take a look at README.mb under doc directory. (Note that unlike "jp patch" I do not use modified GNU regexp any more. I changed Henry Spencer's regexp coming with PostgreSQL.)
This commit is contained in:
@ -8,11 +8,11 @@
|
||||
#
|
||||
#
|
||||
# IDENTIFICATION
|
||||
# $Header: /cvsroot/pgsql/doc/Makefile,v 1.4 1998/03/01 20:37:44 thomas Exp $
|
||||
# $Header: /cvsroot/pgsql/doc/Makefile,v 1.5 1998/03/15 07:37:51 scrappy Exp $
|
||||
#
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
PGDOCS= .
|
||||
PGDOCS= /usr/local/cdrom/docs
|
||||
SRCDIR= ../src
|
||||
|
||||
TAR= tar
|
||||
|
67
doc/README.mb
Normal file
67
doc/README.mb
Normal file
@ -0,0 +1,67 @@
|
||||
postgresql 6.3 multi-byte(MB) patch PL2 README Mar 10 1998
|
||||
|
||||
Tatsuo Ishii
|
||||
t-ishii@sra.co.jp
|
||||
http://www.sra.co.jp/people/t-ishii/PostgreSQL/
|
||||
|
||||
Introduction
|
||||
|
||||
MB patch is intended for allowing PostgreSQL to handle multi-byte
|
||||
charachter sets such as EUC(Extende Unix Code), Unicode and Mule
|
||||
internal code. With the MB patch you can use multi-byte character sets
|
||||
in regexp and LIKE. The encoding system chosen is determined at the
|
||||
compile time.
|
||||
|
||||
The patch also fixes some problems concerning with 8-bit single byte
|
||||
character sets including ISO8859. (I would not say all of problems
|
||||
have been fixed. I just confirmed that the regression test ran fine
|
||||
and a few French characters could be used with the patch. Please let
|
||||
me know if you find any problem while using 8-bit characters)
|
||||
|
||||
How to use
|
||||
|
||||
After applying the MB patch, create src/Makefile.custom with a line
|
||||
including:
|
||||
|
||||
MB=encoding_system
|
||||
|
||||
where encoding_system is one of:
|
||||
|
||||
EUC_JP Japanese EUC
|
||||
EUC_CN Chinese EUC
|
||||
EUC_KR Korean EUC
|
||||
EUC_TW Taiwan EUC
|
||||
UNICODE Unicode(UTF-8)
|
||||
MULE_INTERNAL Mule internal
|
||||
|
||||
Example:
|
||||
|
||||
% cat Makefile.custom
|
||||
MB=EUC_JP
|
||||
|
||||
If MB is not defined, nothing is changed except better supporting for
|
||||
8-bit single byte character sets.
|
||||
|
||||
References
|
||||
|
||||
These are good sources to start learning various kind of encoding
|
||||
systems.
|
||||
|
||||
ftp://ftp.ora.com/pub/examples/nutshell/ujip/doc/cjk.inf
|
||||
Detailed explanations of EUC_JP, EUC_CN, EUC_KR, EUC_TW
|
||||
appear in section 3.2.
|
||||
|
||||
Unicode: http://www.unicode.org/
|
||||
The homepage of UNICODE.
|
||||
|
||||
RFC 2044
|
||||
UTF-8 is defined here.
|
||||
|
||||
History
|
||||
|
||||
Mar 10, 1998 PL2 released
|
||||
* add regression test for EUC_JP, EUC_CN and MULE_INTERNAL
|
||||
* add an English document (this file)
|
||||
* fix problems concerning 8-bit single byte characters
|
||||
|
||||
Mar 1, 1998 PL1 released
|
106
doc/README.mb.jp
Normal file
106
doc/README.mb.jp
Normal file
@ -0,0 +1,106 @@
|
||||
postgresql 6.3 multi-byte (MB) patch PL2 README 1998/3/10 $B:n@.(B
|
||||
|
||||
$B@P0fC#IW(B
|
||||
t-ishii@sra.co.jp
|
||||
http://www.sra.co.jp/people/t-ishii/PostgreSQL/
|
||||
|
||||
$B$O$8$a$K!'(B
|
||||
$B$3$N%Q%C%A$O!"%U%j!<$J(B RDBMS(Relational Database Management System)$B$N(B
|
||||
PostgreSQL (http://www.postgresql.org/)$B$N:G?7HG(B 6.3 $B$GF|K\8l(B EUC
|
||||
$B$J$I!"%^%k%A%P%$%HJ8;z$r07$&$3$H$r2DG=$K$9$k$?$a$N$b$N$G$9!#$3$N%Q%C(B
|
||||
$B%A$r$"$F$k$3$H$K$h$j!"0J2<$N$3$H$,2DG=$K$J$j$^$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 $B$,%3%s%Q%$%k;~$KA*Br2DG=!#%G!<%?%Y!<%9$K$O(B
|
||||
$B$3$N%3!<%I$N$^$^3JG<$5$l$^$9!#(B
|
||||
2.$B%F!<%V%kL>$K%^%k%A%P%$%HJ8;z$,;HMQ2DG=(B($B$?$@$7!"(BOS $B$,%^%k%A%P%$%H(B
|
||||
$B$N%U%!%$%kL>$r5v$7$F$$$k$3$H$,I,MW(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
|
||||
|
||||
($B$?$@$7!"(B2,3,4 $B$K$D$$$F$O%Q%C%A$r$"$F$J$/$F$b2DG=$G$9!#(B)
|
||||
|
||||
postgresql-6.3 $B$NF~<jJ}K!!'(B
|
||||
postgresql-6.3.tar.gz $B$O(B postgresql $B$NF|K\$G$N8x<0%_%i!<%5%$%H$G(B
|
||||
$B$"$k(B ftp://ftp.jaist.ac.jp/pub/dbms/PostgreSQL/ $B$+$iF~<j$G$-$^$9!#(B
|
||||
$B2?$i$+$NM}M3$G$3$3$+$iF~<j$G$-$J$$>l9g$O!"(B
|
||||
ftp://ftp.sra.co.jp/pub/cmd/postgres/6.3/ $B$bMxMQ$G$-$^$9!#(B
|
||||
$B$J$*!"(Bpostgresql $B$N%*%j%8%J%k(B ftp $B%5%$%H$O(B ftp://ftp.postgresql.org
|
||||
$B$G$9!#(B
|
||||
|
||||
$B$3$N%Q%C%A$NF~<jJ}K!!'(B
|
||||
|
||||
ftp://ftp.sra.co.jp/pub/cmd/postgres/6.3/patches/6.3mbPL2.patch.gz
|
||||
$B$rF~<j$7$F2<$5$$!#(B
|
||||
|
||||
$B%Q%C%A$N$"$F$+$?!'(B
|
||||
$BF~<j$7$?%Q%C%A%U%!%$%k$rE83+$7$^$9!#(B
|
||||
|
||||
% gunzip 6.3mbPL2.patch.gz
|
||||
|
||||
postgresql-6.3 $B$N%=!<%9$rE83+$7$^$9!#(B
|
||||
|
||||
% gtar xfz postgresql-6.3.tar.gz
|
||||
|
||||
$B$9$k$H!"(Bpostgresql-6.3 $B$H$$$&%G%#%l%/%H%j$,$G$-$k$N$G!"$=$3$K(B
|
||||
cd $B$7$^$9!#(B
|
||||
|
||||
% cd postgresql-6.3
|
||||
|
||||
$B%Q%C%A$rEv$F$^$9!#(B
|
||||
|
||||
% patch -p1 < 6.3mbPL2.patch
|
||||
|
||||
$B$H$7$F$"$F$F$/$@$5$$!#<!$K!"(Bsrc/Makefile.custom $B$H$$$&%U%!%$%k$r:n$j!"(B
|
||||
|
||||
MB=EUC_JP
|
||||
|
||||
$B$N(B 1 $B9T$rDI2C$7$^$9!#(BEUC_JP $B$r4^$a!"0J2<$N%3!<%I$,;XDj$G$-$^$9!#(B
|
||||
|
||||
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
|
||||
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
|
||||
|
||||
$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$OIaDL$K9T$J$$$^$9!#%$%s%9%H!<%k$N>\:Y$O(B INSTALL $B$H$$$&(B
|
||||
$B%F%-%9%H%U%!%$%k$r8fMw2<$5$$!#$^$?!"(B
|
||||
http://www.sra.co.jp/people/t-ishii/PostgreSQL/ $B$G$b4JC1$J%$%s%9%H!<(B
|
||||
$B%kJ}K!$r>R2p$7$F$$$^$9!#(B
|
||||
|
||||
$B<U<-!'(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
|
||||
|
||||
$B2~DjMzNr!'(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
|
Reference in New Issue
Block a user