~ubuntu-branches/ubuntu/hardy/postgresql-8.4/hardy-backports

« back to all changes in this revision

Viewing changes to doc/README.mb.jp

  • Committer: Bazaar Package Importer
  • Author(s): Martin Pitt
  • Date: 2009-03-20 12:00:13 UTC
  • Revision ID: james.westby@ubuntu.com-20090320120013-hogj7egc5mjncc5g
Tags: upstream-8.4~0cvs20090328
ImportĀ upstreamĀ versionĀ 8.4~0cvs20090328

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
PostgreSQL 7.3 multi-byte (MB) support README          2002/10/21 $B:n@.(B
 
2
 
 
3
                                                        $B@P0fC#IW(B
 
4
                                                ishii@postgresql.org
 
5
 
 
6
$B"#$O$8$a$K(B
 
7
 
 
8
  PostgreSQL $B$K$*$1$k%^%k%A%P%$%H%5%]!<%H$O0J2<$N$h$&$JFCD'$r;}$C$F$$$^$9!%(B
 
9
 
 
10
    1. $B%^%k%A%P%$%HJ8;z$H$7$F!$F|K\8l!$Cf9q8l$J$I$N3F9q$N(B EUC$B!$(BUnicode$B!$(B
 
11
       mule internal code, ISO-8859-* $B$,%G!<%?%Y!<%9:n@.;~$KA*Br2DG=!%(B
 
12
       $B%G!<%?%Y!<%9$K$O$3$N%(%s%3!<%G%#%s%0$N$^$^3JG<$5$l$^$9!%(B
 
13
    2. $B%F!<%V%kL>$K%^%k%A%P%$%HJ8;z$,;HMQ2DG=(B
 
14
    3. $B%+%i%`L>$K%^%k%A%P%$%HJ8;z$,;HMQ2DG=(B
 
15
    4. $B%G!<%?$=$N$b$N$K$b%^%k%A%P%$%HJ8;z$,;HMQ2DG=(B
 
16
    5. $B%^%k%A%P%$%HJ8;z$N@55,I=8=8!:w$,;HMQ2DG=(B
 
17
    6. $B%^%k%A%P%$%HJ8;z$N(B LIKE $B8!:w$,;HMQ2DG=(B
 
18
    7. character_length(), position(), substring() $B$J$I$NJ8;zNs4X?t$G(B
 
19
       $B$N%^%k%A%P%$%H%5%]!<%H(B
 
20
    8. $B%U%m%s%H%(%s%IB&$N%(%s%3!<%G%#%s%0$,%P%C%/%(%s%IB&$H0[$k>l9g$K!$(B
 
21
       $B<+F0E*$K%(%s%3!<%G%#%s%0JQ49$r9T$J$$$^$9!%(B
 
22
    9. $B%f!<%6Dj5A$N%(%s%3!<%G%#%s%0JQ49$r:n@.2DG=!%(B
 
23
 
 
24
  $B%^%k%A%P%$%H%5%]!<%H$,07$&$3$H$N$G$-$k%(%s%3!<%G%#%s%0$O0J2<$K$J$j$^(B
 
25
  $B$9!%(B
 
26
 
 
27
        SQL_ASCII       ASCII
 
28
        EUC_JP          $BF|K\8l(B EUC
 
29
        EUC_CN          GB $B$r%Y!<%9$K$7$?CfJ8(BEUC$B!%(Bcode set 2 $B$O(B
 
30
                        SS2+2$B%P%$%H%3!<%I(B = 3$B%P%$%HI=8=$G$9!%(B
 
31
        EUC_KR          $B4Z9q8l(B EUC$B!%(B
 
32
        JOHAB           $B%O%s%0%k%Y!<%9$N4Z9q8l(BEUC.
 
33
        EUC_TW          $BBfOQ$N(B EUC$B!%(Bcode set 2 $B$O(B
 
34
                        SS2+$BLLHV9f(B+2$B%P%$%H%3!<%I(B = 4$B%P%$%HI=8=$G$9!%(B
 
35
        UNICODE         UTF-8$B!%$?$@$7%5%]!<%H$9$k$N$O(B UCS-2 $B$NHO0O!$(B
 
36
                        $B$9$J$o$A(B 0xffff $B$^$G$G$9!%(B
 
37
        MULE_INTERNAL   mule $B$NFbIt%3!<%I!%$?$@$7!$(BType N $B$NITDjD9J8;z$O(B
 
38
                        $B%5%]!<%H$7$F$$$^$;$s!%(B
 
39
        LATIN1 $B$+$i(B LATIN10$B$^$G(B
 
40
        ISO_8859_1 $B$+$i(B 16$B$^$G(B
 
41
        $B%-%j%kJ8;z(B        KOI8(KOI8-R), WIN(CP1251), ALT(CP866)$B$r%5%]!<%H(B
 
42
                        $B$7$F$$$^$9!%$b$A$m$s(B ISO 8859-5 $B$b;HMQ2DG=$G$9!%(B
 
43
                        $B$3$N>l9g!$(B"LATIN5" $B$H$7$F;XDj$7$F2<$5$$!%(B
 
44
        WIN1256         $B%"%i%V=t9q8l(BWindows$BMQ%(%s%3!<%G%#%s%0(B.
 
45
        TCVN            $B%Y%H%J%`8l(B."ABC"$B$d(B"VSCII"$B$b;HMQ2DG=(B.
 
46
        WIN874          $B%?%$8l(B.
 
47
 
 
48
  $B%U%m%s%H%(%s%IB&$G$O$5$i$K0J2<$N%(%s%3!<%G%#%s%0$,;HMQ$G$-$^$9!%(B
 
49
 
 
50
        SJIS            $B%7%U%H(BJIS(MS932$B$H$[$\8_49(B)
 
51
        BIG5            $BBfOQ$d9a9A$G;HMQ$5$l$F$$$kCf9q8l!%(BEUC_TW$B$H8_49(B
 
52
                        $B@-$,$"$j$^$9!%(B
 
53
        GBK             Windows-936
 
54
        UHC             Windows-949
 
55
        WIN1250         Windows-1250
 
56
        GB18030         GB18030
 
57
 
 
58
$B"#F|K\8l$r;HMQ$9$k$3$H$N$G$-$k%(%s%3!<%G%#%s%0(B
 
59
 
 
60
  $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
 
61
  $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
 
62
  $B$$>l9g$O(B UNICODE $B$b$7$/$O(B MULE_INTERNAL $B$H$J$k$G$7$g$&!%(B
 
63
 
 
64
  $BCm0U!'(BMULE_INTERNAL $B$rA*$V$H!$$?$/$5$s$NJ8;z=89g$KBP1~$G$-$FJXMx$G$9(B
 
65
  $B$,!$@55,I=8=$GJ#?t$NJ8;z=89g$K$^$?$,$k$h$&$JHO0O;XDj(B($B$?$H$($P!$(B[a-$BHO(B]
 
66
  $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
 
67
  $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
 
68
  $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
 
69
  $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
 
70
  $B$J$$$3$H$KCm0U$7$F2<$5$$!%(B
 
71
 
 
72
$B"#%$%s%9%H!<%k(B
 
73
 
 
74
  PostgreSQL 7.3$B$+$i$O(Bconfigure$B$N%*%W%7%g%s;XDj$NM-L5$K4X$o$i$:!$%^%k(B
 
75
  $B%A%P%$%H%5%]!<%H$,M-8z$K$J$C$F$$$^$9$N$G!$FC$K(Bconifgure$B;~$K%^%k%A%P(B
 
76
  $B%$%HMQ$NFCJL$J%*%W%7%g%s$r;XDj$9$kI,MW$O$"$j$^$;$s!%(B
 
77
 
 
78
$B"#(Binitdb/createdb/create database $B$K$*$1$k%(%s%3!<%G%#%s%0$N;XDj$K$D$$$F(B
 
79
 
 
80
  initdb $B$G$O0J2<$N%*%W%7%g%s$G%(%s%3!<%G%#%s%0$,;XDj$G$-$^$9!%(B
 
81
 
 
82
        -E $B%(%s%3!<%G%#%s%0(B
 
83
        --encoding=$B%(%s%3!<%G%#%s%0(B
 
84
 
 
85
  $B$3$3$G;XDj$7$?%(%s%3!<%G%#%s%0$O!$0J8e(B createdb/create database $B$G%((B
 
86
  $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
 
87
  -E $B$^$?$O(B --encoding $B%*%W%7%g%s$r>JN,$7$?>l9g$O!$%(%s%3!<%G%#%s%0$H(B
 
88
  $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
 
89
  $B9g$O!$(B
 
90
 
 
91
        -E EUC_JP
 
92
 
 
93
   $B$"$k$$$O(B
 
94
 
 
95
        --encoding=EUC_JP
 
96
 
 
97
  $B$H$7$FI,$:L@<(E*$K%(%s%3!<%G%#%s%0$r;XDj$7$F$/$@$5$$!%(B
 
98
 
 
99
  $B$J$*!$(BPostgreSQL 7.3$B0J9_%m%1!<%k%5%]!<%H$,I,$:M-8z$K$J$C$F$$$^$9$,!$(B
 
100
  $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
 
101
  $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
 
102
  $B$$$J$I$NLdBj$r0z$-5/$3$9$N$G!$L58z$K$7$F$*$/$3$H$r$*$9$9$a$7$^$9!%%m(B
 
103
  $B%1!<%k%5%]!<%H$rL58z$K$9$k$?$a$K$O!$(B
 
104
 
 
105
        --no-locale
 
106
 
 
107
  $B%*%W%7%g%s$r;XDj$7$^$9!%(B
 
108
 
 
109
  createdb $B$G$O0J2<$N%*%W%7%g%s$G%(%s%3!<%G%#%s%0$,;XDj$G$-$^$9!%(B
 
110
 
 
111
        -E $B%(%s%3!<%G%#%s%0(B
 
112
        --encoding=$B%(%s%3!<%G%#%s%0(B
 
113
 
 
114
  create database $B$G$O0J2<$N%*%W%7%g%s$G%(%s%3!<%G%#%s%0$,;XDj$G$-$^$9!%(B
 
115
 
 
116
        CREATE DATABASE dbanme WITH ENCODING = '$B%(%s%3!<%G%#%s%0(B';
 
117
 
 
118
  LOCATION $B$rF1;~$K;XDj$9$k>l9g$O0J2<$N$h$&$K$J$j$^$9!%(B
 
119
 
 
120
        CREATE DATABASE dbanme WITH LOCATION = 'path' ENCODING = '$B%(%s%3!<%G%#%s%0(B';
 
121
 
 
122
  createdb/create database $B$G$O!$%(%s%3!<%G%#%s%0;XDj$r>JN,$7$?>l9g$O!$(Binitdb 
 
123
  $B$G;XDj$7$?%(%s%3!<%G%#%s%0$,:NMQ$5$l$^$9!%$3$l$O!$(Binitdb $B$,:n@.$9$k(B
 
124
  $B%F%s%W%l!<%H%G!<%?%Y!<%9(B(template1)$B$N(B encoding $B%"%H%j%S%e!<%H$r7Q>5(B
 
125
  $B$9$k$+$i$G$9!%(B
 
126
 
 
127
  $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
 
128
 
 
129
$ psql -l
 
130
            List of databases
 
131
   Database    |  Owner  |   Encoding    
 
132
---------------+---------+---------------
 
133
 euc_cn        | t-ishii | EUC_CN
 
134
 euc_jp        | t-ishii | EUC_JP
 
135
 euc_kr        | t-ishii | EUC_KR
 
136
 euc_tw        | t-ishii | EUC_TW
 
137
 mule_internal | t-ishii | MULE_INTERNAL
 
138
 regression    | t-ishii | SQL_ASCII
 
139
 template1     | t-ishii | EUC_JP
 
140
 test          | t-ishii | EUC_JP
 
141
 unicode       | t-ishii | UNICODE
 
142
(9 rows)
 
143
 
 
144
$B"#J8;z7?$N%G!<%?7?$K$D$$$F(B
 
145
 
 
146
  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
 
147
  $B0UL#$9$k(B 7.1 $B0JA0$H$O0[$J$j$^$9$N$G$4Cm0U2<$5$$!%(B
 
148
 
 
149
  $BNc$r<($7$^$9!%(B
 
150
 
 
151
  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
 
152
  $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
 
153
  $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
 
154
  $B$9!%(B
 
155
 
 
156
  $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
 
157
  $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
 
158
  $B0U2<$5$$!%$3$l$O!$%^%k%A%P%$%HBP1~$NM-L5$K4X$o$i$:!$J8;zNs$N07$$$,(B
 
159
  SQL$BI8=`$K1h$&$h$&$KJQ$C$?$+$i$G$9!%(B
 
160
 
 
161
$B"#%U%m%s%H%(%s%I$H%P%C%/%(%s%I$N<+F0%(%s%3!<%G%#%s%0JQ49$K$D$$$F(B
 
162
 
 
163
  $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
 
164
  $B%s%0$O0lCW$7$F$$$k$N$,86B'$G$9$,!$$$$/$D$+$N%(%s%3!<%G%#%s%0$K$D$$$F(B
 
165
  $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
 
166
  $B$9!%$3$N>l9g!$<+F0E*$K%P%C%/%(%s%I$G%(%s%3!<%G%#%s%0JQ49$,9T$o$l$^$9!%(B
 
167
 
 
168
  $B%P%C%/%(%s%I$N%(%s%3!<%G%#%s%0(B  $B5vMF$5$l$k%U%m%s%H%(%s%I$N(B
 
169
                                        $B%(%s%3!<%G%#%s%0(B
 
170
  ----------------------------------------------------------------
 
171
        EUC_JP                          EUC_JP, SJIS, UNICODE
 
172
 
 
173
        EUC_TW                          EUC_TW, BIG5, UNICODE
 
174
 
 
175
        EUC_CN                          EUC_CN, UNICODE
 
176
 
 
177
        EUC_KR                          EUC_KR, UNICODE
 
178
 
 
179
        JOHAB                           JOHAB, UNICODE
 
180
 
 
181
        LATIN1,3,4                      LATIN1,3,4, UNICODE
 
182
 
 
183
        LATIN2                          LATIN2, WIN1250, UNICODE
 
184
 
 
185
        LATIN5                          LATIN5, WIN, ALT, UNICODE
 
186
 
 
187
        LATIN6,7,8,9,10                 LATIN6,7,8,9,10, UNICODE
 
188
 
 
189
        ISO_8859_5,6,7,8                ISO_8859_5,6,7,8, UNICODE
 
190
 
 
191
        WIN1256                         WIN1256, UNICODE
 
192
 
 
193
        TCVN                            TCVN, UNICODE
 
194
 
 
195
        WIN874                          WIN874, UNICODE
 
196
 
 
197
        MULE_INTERNAL                   EUC_JP, SJIS, EUC_KR, EUC_CN, 
 
198
                                        EUC_TW, BIG5, LATIN1$B$+$i(B5, 
 
199
                                        WIN, ALT, WIN1250
 
200
 
 
201
        UNICODE                         EUC_JP, SJIS, EUC_KR, UHC,
 
202
                                        EUC_CN, GBK, EUC_TW, BIG5,
 
203
                                        LATIN1$B$+$i(B10, ISO_8859_5$B$+$i(B8,
 
204
                                        WIN, ALT, WIN1250, WIN1256,
 
205
                                        TCVN, WIN874, JOHAB
 
206
  ----------------------------------------------------------------
 
207
 
 
208
  $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
 
209
  $B$r%P%C%/%(%s%I$KEA$($kI,MW$,$"$j$^$9!%$=$N$?$a$NJ}K!$,$$$/$D$+$"$j$^(B
 
210
  $B$9!%(B
 
211
 
 
212
o psql $B$N(B \encoding $B%3%^%s%I$r;H$&J}K!(B
 
213
 
 
214
  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
 
215
  $B%I$r@ZBX$($k$3$H$,$G$-$^$9!%Nc(B:
 
216
 
 
217
        \encoding SJIS
 
218
 
 
219
o libpq $B$N4X?t(B PQsetClientEncoding $B$r;H$&J}K!(B
 
220
 
 
221
  7.0 $B$+$i?7$7$$(B libpq $B4X?t(B PQsetClientEncoding $B$,DI2C$5$l$F$$$^$9!%(B
 
222
 
 
223
  PQsetClientEncoding(PGconn *conn, const char *encoding)
 
224
 
 
225
  $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
 
226
  $B$-$^$9!%8=:_$N%(%s%3!<%G%#%s%0$NLd$$9g$o$;$O(B
 
227
 
 
228
  int PQclientEncoding(const PGconn *conn)
 
229
 
 
230
  $B$G$9!%(B
 
231
 
 
232
o postgresql.conf $B$G@_Dj$9$kJ}K!(B
 
233
 
 
234
  $B%U%m%s%H%(%s%I$N%G%U%)%k%H%(%s%3!<%G%#%s%0$r;XDj$9$k$K$O!$(B
 
235
  postgresql.conf $B$N(B client_encoding $B$r;XDj$7$^$9!%;XDjNc(B:
 
236
 
 
237
  client_encoding = SJIS
 
238
 
 
239
o $B4D6-JQ?t(B PGCLIENTENCODING $B$r;H$&J}K!(B
 
240
 
 
241
  (1) postmaster $B5/F0;~$K4D6-JQ?t$r@_Dj$9$kJ}K!(B
 
242
 
 
243
  $B4D6-JQ?t(B PGCLIENTENCODING $B$r@_Dj$9$k$3$H$K$h$j!$(B postgresql.conf $B$G(B
 
244
  $B%(%s%3!<%G%#%s%0$r;XDj$9$k$N$HF1$88z2L$,F@$i$l$^$9!%$?$@$7!$$3$l$ONr(B
 
245
  $B;KE*7P0^$+$i;D$5$l$F$$$k5!G=$G!$:#8e$O$3$N5!G=$rMxMQ$7$J$$$3$H$r$*$9(B
 
246
  $B$9$a$7$^$9!%@_DjNc(B:
 
247
 
 
248
  export PGCLIENTENCODING=SJIS postmaster -S
 
249
 
 
250
  (2) $B%/%i%$%"%s%H!$%U%m%s%H%(%s%IKh$K%(%s%3!<%G%#%s%0$r@_Dj$7$?$$>l9g(B
 
251
 
 
252
  $B$=$N%U%m%s%H%(%s%I(B($B$?$H$($P(B psql)$B$r5/F0$9$kA0$K4D6-JQ?t(B 
 
253
  PGCLIENTENCODING $B$r@_Dj$7$^$9!%(B
 
254
 
 
255
o set client_encoding $B%3%^%s%I$r;H$&J}K!(B
 
256
 
 
257
  SET CLIENT_ENCODING SQL$B%3%^%s%I$r;H$C$FF0E*$K%U%m%s%H%(%s%I$N%(%s%3!<(B
 
258
  $B%G%#%s%0$rJQ99$G$-$^$9!%Nc(B:
 
259
 
 
260
        SET CLIENT_ENCODING TO SJIS;
 
261
 
 
262
$B"#8=:_@_Dj$5$l$F$$$k%U%m%s%H%(%s%IB&$N%(%s%3!<%G%#%s%0$rD4$Y$k(B
 
263
 
 
264
 $B8=:_@_Dj$5$l$F$$$k%U%m%s%H%(%s%IB&$N%(%s%3!<%G%#%s%0$O(B
 
265
 
 
266
        show client_encoding;
 
267
 
 
268
 $B$G;2>H$G$-$^$9(B($B>.J8;z$GI=<($5$l$^$9(B)$B!%(B
 
269
 
 
270
$B"#%G%U%)%k%H$N%(%s%3!<%G%#%s%0$X$NI|5"(B
 
271
 
 
272
  SQL$B%3%^%s%I(B:
 
273
 
 
274
        RESET CLIENT_ENCODING;
 
275
 
 
276
  $B$O!$%G%U%)%k%H$N%U%m%s%H%(%s%I%(%s%3!<%G%#%s%0@_Dj$KI|5"$5$;$^$9!%(B
 
277
  postmaster$B$rN)$A>e$2$k$H$-$K(B postgresql.conf $B$N(B client_encoding $B$d4D(B
 
278
  $B6-JQ?t(B PGCLIENTENCODING $B$,@_Dj$5$l$F$$$k$H$=$N%(%s%3!<%G%#%s%0$K!$$=(B
 
279
  $B$&$G$J$1$l$P%G!<%?%Y!<%9$N%(%s%3!<%G%#%s%0$HF1$8$K$J$j$^$9!%(B
 
280
  
 
281
$B"#L@<(E*$J%(%s%3!<%G%#%s%0JQ49(B
 
282
 
 
283
  7.2$B$G$O!$(Bconvert$B$H$$$&4X?t$r;H$$!$L@<(E*$J%(%s%3!<%G%#%s%0JQ49$,$G$-(B
 
284
  $B$^$9!%(B
 
285
 
 
286
  convert(string text, [src_encoding name,] dest_encoding name) 
 
287
 
 
288
  $B$3$3$G(Bsrc_encoding$B$O(Btext$B$N%(%s%3!<%G%#%s%0L>$G$9!%>JN,$9$k$H!$%G!<%?(B
 
289
  $B%Y!<%9%(%s%3!<%G%#%s%0L>$HF1$8$G$"$k$H8+$J$5$l$^$9!%(Bdest_encoding$B$O!$(B
 
290
  $BJQ498e$N%(%s%3!<%G%#%s%0L>$G$9!%(B
 
291
 
 
292
  $BNc$r<($7$^$9!%(B
 
293
 
 
294
  SELECT convert(text, EUC_JP) FROM unicode_tbl;
 
295
 
 
296
  $B$O!$(BUnicode$B$N%F!<%V%k(Bunicode_tbl$B$N(Btext$BNs$r(BEUC_JP$B$KJQ49$7$FJV$7$^$9!%(B
 
297
 
 
298
  7.3$B$G$O$5$i$K(BSQL$BI8=`$N(BCONVERT$B4X?t$,;H$($^$9!%(BSQL$BI8=`$N(BCONVERT$B$O(B
 
299
  PostgreSQL$B$N(BCONVERT$B$H5!G=$O$[$H$s$IF1$8$G$9$,!$8F$S=P$77A<0$,0[$j$^(B
 
300
  $B$9!%(B
 
301
 
 
302
  SELECT convert(text using euc_jp_to_utf8) FROM unicode_tbl;
 
303
 
 
304
  "using" $B$N8e$N0z?t$O!V%3%s%P!<%8%g%sL>!W$G$9!%$3$NNc$G$O!$(BEUC_JP $B$+(B
 
305
  $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
 
306
  $B%8%g%s$K$D$$$F$O!$%f!<%6!<%:%,%$%I$N(B "String Functions and
 
307
  Operators" $B$NI=(B"Built-in Conversions" $B$r8+$F$/$@$5$$!%(B
 
308
 
 
309
$B"#%(%s%3!<%G%#%s%0JQ49ITG=$N>l9g$N=hM}(B
 
310
 
 
311
  $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
 
312
  $B$,$$$D$bAj8_JQ49$G$-$k$H$O8B$j$^$;$s!%6KC<$JOC!$%P%C%/%(%s%IB&$,(B 
 
313
  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
 
314
  $B$3$N>l9g(B PostgreSQL $B$OJQ49$G$-$J$$%3!<%I$r(B 16$B?JI=8=$KJQ49$7$^$9!%(B
 
315
  $B$?$H$($P!$(B"(bdae)" $B$N$h$&$K!%$J$*!$$3$N(B 16$B?JI=8=$O(B mule
 
316
  internal code $B$N%3!<%I$G$"$k$3$H$KCm0U$7$F2<$5$$!%$3$l$O!$D>@\%U%m%s(B
 
317
  $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
 
318
  $BEYFbItI=8=$G$"$k(B mule internal code $B$r7PM3$7$F$$$k$?$a$G$9!%(B
 
319
 
 
320
  $B$J$*!$(BUnicode$B$H$=$l0J30$N%(%s%3!<%G%#%s%0$NJQ49$@$1$ONc30$G!$(BNOTICE
 
321
  $B%a%C%;!<%8$,I=<($5$l!$JQ49ITG=$NJ8;z$OL5;k$5$l$^$9!%(B
 
322
 
 
323
$B"#%G%U%)%k%H%3%s%P!<%8%g%s(B
 
324
 
 
325
  $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
 
326
  $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
 
327
  $B%3%s%P!<%8%g%s$O3F!9$N(B{$B%9%-!<%^!$%=!<%9%(%s%3!<%G%#%s%0!$%G%9%F%#%M!<(B
 
328
  $B%7%g%s%(%s%3!<%G%#%s%0(B}$B$NAH$_9g$o$;$K$*$$$F!$$?$@0l8D$@$1B8:_$7$^$9!%(B
 
329
  $B>e5-$G@bL@$7$?AH$_9~$_:Q$N%3%s%P!<%8%g%s$O!$(Bpg_catalog$B%9%-!<%^$K$*$$(B
 
330
  $B$FDj5A$5$l$F$*$j!$%9%-!<%^%5!<%A%Q%9$N@_Dj$K4X$o$i$:I,$:MxMQ$G$-$k%3(B
 
331
  $B%s%P!<%8%g%s$K$J$C$F$$$^$9!%(B
 
332
 
 
333
  $B5U$K8@$&$H!$(B pg_catalog $B0J30$N%9%-!<%^$K%G%U%)%k%H%3%s%P!<%8%g%s$r:n(B
 
334
  $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
 
335
  $B$k$o$1$G$9!%$?$H$($P(B SJIS $B$H$NJQ49$K$*$$$F!$(BPostgreSQL $B$,MQ0U$7$F$$(B
 
336
  $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
 
337
  $B$&$h$&$J%3%s%P!<%8%g%s$r:n@.$9$k$3$H$b2DG=$G$9!%(B
 
338
 
 
339
$B"#%f!<%6Dj5A%3%s%P!<%8%g%s$N:n@.(B
 
340
 
 
341
  PostgreSQL 7.3$B0J9_!$%f!<%6Dj5A$N%3%s%P!<%8%g%s$r:n@.$G$-$k$h$&$K$J$C(B
 
342
  $B$F$$$^$9!%%3%s%P!<%8%g%s$NDj5A$O(B CREATE CONVERSION $B$H$$$&(B SQL $B%3%^%s(B
 
343
  $B%I$r;H$C$F9T$$$^$9!%(B
 
344
 
 
345
    CREATE [DEFAULT] CONVERSION conversion_name
 
346
        FOR source_encoding
 
347
        TO dest_encoding FROM funcname
 
348
 
 
349
  $B>\:Y$O%j%U%!%l%s%9%^%K%e%"%k$r$4Mw2<$5$$!%(B
 
350
 
 
351
$B"#(BSJIS$B%f!<%6Dj5AJ8;z$X$NBP1~(B
 
352
 
 
353
  7.0 $B$+$i(B SJIS$B%f!<%6Dj5AJ8;z(B (UDC) $B$KBP1~$7$F$$$^$9!%(BUDC $B$r$I$&07$&$+(B
 
354
  $B$H8@$&$3$H$K$D$$$FCf>r$5$s(B(nak@email.com)$B$+$iLdBjDs5/$H>\:Y$J2r@b$r(B
 
355
  $BD:$-$^$7$?$N$G!$;29M$N$?$a$K$3$N%I%-%e%a%s%H$N:G8e$KIU$1$F$*$-$^$9!%(B
 
356
  $B$^$?!$$3$NLdBj$K$D$$$F$O!$(BPostgreSQL$BF|K\8l%a!<%j%s%0%j%9%H$N(B 
 
357
  [pgsql-jp 12288] (1999/12/17$BIU(B)$B$H(B [pgsql-jp 12486] (2000/1/5$BIU(B) $B$+$i(B
 
358
  $B;O$^$k%9%l%C%I$G5DO@$r8+$k$3$H$,$G$-$^$9(B($B%a!<%k$N%"!<%+%$%V$O(B
 
359
  http://www.sra.co.jp/people/t-ishii/PostgreSQL/ $B$G;2>H$G$-$^$9(B)$B!%(B
 
360
 
 
361
  $B$3$3$G$O!$$=$l$i$N5DO@$r$U$^$(!$4JC1$K2r@b$7$^$9!%(B
 
362
 
 
363
  PostgreSQL$B$G$O!$F|K\8l$r;HMQ$9$k:]$K%P%C%/%(%s%IB&$N%(%s%3!<%G%#%s%0(B
 
364
  $B$r(B EUC_JP $B$^$?$O(B MULE_INTERNAL or Unicode $B$K$9$kI,MW$,$"$j$^$9!%(B
 
365
  MULE_INTERNAL $B$O(B EUC_JP $B$KJ8;z=89g$rI=$9%3!<%I$rIU$1$?$b$N$J$N$G!$K\(B
 
366
  $B<AE*$KF1$8$G$9!%$^$?!$(BUnicode <---> SJIS $BJQ49$O8=:_$N$H$3$m%5%]!<%H(B
 
367
  $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
 
368
  $BAj8_JQ49$N$_$r9M$($^$9!%(B
 
369
 
 
370
  $BM=HwCN<1(B
 
371
 
 
372
  $B0l8}$K(B EUC_JP $B$H$$$C$F$b!$<B:]$K$OCf?H$OJ#?t$NJ8;z=89g$+$i@.$jN)$C$F(B
 
373
  $B$$$^$9!%(B
 
374
 
 
375
        G0: JIS ROMAN (ASCII $B$H$[$\F1$8(B)
 
376
        G1: JIS X 0208 (JIS $B4A;z(B)
 
377
        G2: JIS X 0201 (1$B%P%$%H%+%J(B)
 
378
        G3: JIS X 0212 (JIS $BJd=u4A;z(B)
 
379
 
 
380
  $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
 
381
  $B%]!<%H$7$F$$$^$;$s!%$7$?$,$C$F!$(BSJIS $B$O(B EUC_JP $B$NItJ,=89g$H$_$J$9$3(B
 
382
  $B$H$,$G$-!$<B:](B PostgreSQL 6.5 $B$^$G$O$3$N9M$($G<BAu$5$l$F$$$^$7$?!%(B
 
383
 
 
384
  $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
 
385
  $B$J$$J8;z%3!<%I$,0lItMxMQ$5$l$F$*$j!$$3$NItJ,(B (UDC) $B$O=>Mh(B PostgreSQL 
 
386
  $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
 
387
  $BJQ49$9$k$H$-$KIT@5$JJQ49$,9T$o$l$F$$$^$7$?!%$=$3$G(B PostgreSQL 7.0 $B$G(B
 
388
  $B$O!$$^$:$3$NLdBj$r2r7h$9$k$3$H$K$7$^$7$?!%(B
 
389
 
 
390
  $B$^$?!$(BUDC $B$NMxMQJ}$K$D$$$F$OI8=`5,3J$N$h$&$J$b$N$O$"$j$^$;$s$,!$<B$O(B
 
391
  $B6H3&CDBN$G$N<h$j7h$a$,$"$j!$$$$o$f$k%G%U%!%/%H%9%?%s%@!<%I$J$i$PB8:_(B
 
392
  $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
 
393
  $B$H$K$7$^$7$?!%(B
 
394
 
 
395
  PostgreSQL 7.0 $B$G$N(B UDC $BBP1~$N<BAu(B
 
396
 
 
397
  (1) $B%f!<%6Dj5AJ8;zNN0h$O(B JIS $B$N%f!<%6Dj5AJ8;zNN0h$K%^%C%T%s%0$9$k!%(B
 
398
  SJIS $B$H(B EUC_JP $B$G(B1$BBP(B1$B$NBP1~$K$J$j$^$9!%(B
 
399
 
 
400
    - SJIS $B%f!<%6Dj5AJ8;zNN0h(B A ($B2>>N(B)
 
401
          95$B!A(B104 $B6h(B  $B"+"*(B $BF|K\8l(B EUC / G1 (JIS X 0208) 85$B!A(B95 $B6h(B
 
402
 
 
403
    - SJIS $B%f!<%6Dj5AJ8;zNN0h(B B ($B2>>N(B)
 
404
         105$B!A(B114 $B6h(B  $B"+"*(B $BF|K\8l(B EUC / G3 (JIS X 0212) 85$B!A(B95 $B6h(B
 
405
 
 
406
  (2) IBM $B3HD%J8;zNN0h(B (SJIS 115$B!A(B120 $B6h(B)
 
407
 
 
408
  $BJQ49%F!<%V%k$K$h$C$F(B G1 (JIS X 0208)$B$H!$(BG3 (JIS X 0212)$B$KJQ49$5$l$^(B
 
409
  $B$9!%$J$*!$$3$NJQ49$K$*$$$F$O!$(BSJIS --> EUC_JP $B$GJQ49$7!$:F$S(B EUC_JP --
 
410
  > SJIS $B$KJQ49$9$k$H85$N(B SJIS $B$KLa$i$J$$$3$H$,$"$j$^$9!%$^$?!$(BEUC_JP --
 
411
  > SJIS $B$NJQ49$G$O!$$9$Y$F$NJ8;z$rJQ49$G$-$k$o$1$G$O$J$$$N$G!$$=$N>l(B
 
412
  $B9g$OJQ49ITG=J8;z$H$7$F!V".!W$KCV$-49$($^$9!%(B
 
413
 
 
414
  *$B6H3&CDBN$N<h$j7h$a$G$O!$JQ49ITG=J8;z$O!V<BAu0MB8!W$H$J$C$F$$$^$9$,!$(B
 
415
  Solaris $B$r$O$8$a!$B?$/$N%7%9%F%`$,!V".!W$rJQ49ITG=J8;z$K:NMQ$7$F$$$^(B
 
416
  $B$9!%(BPostgreSQL$B$b$3$l$K9g$o$;$^$7$?!%(B
 
417
 
 
418
  (3) NEC $BA*Dj(B IBM $B3HD%J8;zNN0h(B (SJIS 89$B!A(B92 $B6h(B)
 
419
  
 
420
  PostgreSQL 7.0$B$G$O$9$Y$FJQ49ITG=J8;z!V".!W$KCV$-49$($i$l$^$9!%(B
 
421
 
 
422
  PostgreSQL 7.0.1$B0J9_$G$O!$0lC6(B IBM $B3HD%J8;zNN0h$KJQ49$5$l$?8e!$(BG1
 
423
  (JIS X 0208)$B$H!$(BG3 (JIS X 0212)$B$KJQ49$5$l$^$9!%(B
 
424
 
 
425
$B<U<-!'(B
 
426
 
 
427
  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
 
428
    $B$F$$$?$@$-$^$7$?!%(B
 
429
 
 
430
  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
 
431
    $B$N%a%s%P$NJ}$+$i%"%I%P%$%9$rD:$-$^$7$?!%$3$3$K46<U$7$^$9!%(B
 
432
    $B$^$?!$(BSJIS $BBP1~$K$D$$$F$O!$;T@n(B@$B$*CcBg$5$s$N%Q%C%A$r;29M$K$5$;$F$$(B
 
433
    $B$?$@$-$^$7$?!%(B
 
434
 
 
435
  o SJIS$B%f!<%6Dj5AJ8;z(B (UDC) $B$r$I$&07$&$+$H8@$&$3$H$K$D$$$FCf>r$5$s(B
 
436
    (nak@email.com)$B$+$iLdBjDs5/$H>\:Y$J2r@b$rD:$-$^$7$?!%(B
 
437
 
 
438
$B"#(BUnicode$B$H$=$l0J30$N%(%s%3!<%G%#%s%0$H$NAj8_JQ49$K$D$$$F(B
 
439
 
 
440
  PostgreSQL 7.1$B$+$i(BUnicode$B$H$=$l0J30$N%(%s%3!<%G%#%s%0$H$NAj8_JQ49$,(B
 
441
  $B2DG=$K$J$j$^$7$?!%$3$NJQ49$O$4$/0lIt$NJ8;z%3!<%I(B(ISO 8859-1)$B$r$N$>$-!$(B
 
442
  $B%m%8%C%/$K$h$kJQ49$,$G$-$J$$$?$a!$JQ49$N:]$K$O%F!<%V%k$,I,MW$K$J$j$^(B
 
443
  $B$9!%(BPostgreSQL$B$N<BAu$G$O!$(BUnicode$BJQ49%F!<%V%k$O(B Unicode organization 
 
444
  $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
 
445
  $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
 
446
  4.3.6 $B$KIUB0$9$k$b$N$r2~B$$N>e!$MxMQ$7$F$$$^$9(B)$B!%(BUnicode
 
447
  organization$B$NDs6!$9$kJQ49%F!<%V%k$O:FG[I[$,5v2D$5$l$F$$$J$$$?$a!$(B
 
448
  PostgreSQL$B$N%=!<%9%3!<%I$K$O4^$^$l$F$$$^$;$s!%0J2<!$;HMQ$7$?JQ49%F!<(B
 
449
  $B%V%k$rNs5s$7$^$9!%(B
 
450
 
 
451
  $B%(%s%3!<%G%#%s%0(B        $BJQ49%F!<%V%k(B
 
452
  ============================================================
 
453
  ISO 8859-1            $B$J$7(B
 
454
  ISO 8859-2            8859-2.TXT
 
455
  ISO 8859-3            8859-3.TXT
 
456
  ISO 8859-4            8859-4.TXT
 
457
  ISO 8859-5            8859-5.TXT
 
458
  ISO 8859-6            8859-6.TXT
 
459
  ISO 8859-7            8859-7.TXT
 
460
  ISO 8859-8            8859-8.TXT
 
461
  ISO 8859-9            8859-9.TXT
 
462
  ISO 8859-10           8859-10.TXT
 
463
  ISO 8859-13           8859-13.TXT
 
464
  ISO 8859-14           8859-14.TXT
 
465
  ISO 8859-15           8859-15.TXT
 
466
  ISO 8859-16           8859-16.TXT
 
467
  EUC_JP                JIS0201.TXT, JIS0208.TXT, JIS0212.TXT,
 
468
                        CP932.TXT, sjis.map
 
469
  SJIS                  CP932.TXT
 
470
  EUC_CN                GB2312.TXT
 
471
  GBK                   CP936.TXT
 
472
  EUC_KR                KSX1001.TXT
 
473
  UHC                   CP949.TXT
 
474
  JOHAB                 JOHAB.TXT
 
475
  EUC_TW                CNS11643.TXT
 
476
  Big5                  BIG5.TXT
 
477
  WIN1256               CP1256.TXT
 
478
  TCVN                  CP1258.TXT
 
479
  WIN874                CP874.TXT
 
480
  ============================================================
 
481
 
 
482
$B<U<-!'(B
 
483
 
 
484
  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
 
485
    $B%V%k$rDs6!$7$F$$$?$@$-$^$7$?!%$3$l$K$h$j!$(BIBM $B3HD%J8;zNN0h(B (SJIS
 
486
    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
 
487
    $B$3$H$,$G$-$k$h$&$K$J$j$^$7$?!%(B
 
488
 
 
489
 
 
490
$B;29M(B1$B!'(B
 
491
 
 
492
  Pavel Behal$B;a$K$h$jDs6!$5$l$?(BWIN1250$B%5%]!<%H$G$9$,!$(BWindows$B4D6-$G$N(B
 
493
  $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
 
494
  $BIU$7$F$*$-$^$9!%(B
 
495
 
 
496
  -------------------------------------------------------------------
 
497
Version: 0.91 for PgSQL 6.5
 
498
Author: Pavel Behal
 
499
Revised by: Tatsuo Ishii
 
500
Email: behal@opf.slu.cz
 
501
Licence: The Same as PostgreSQL
 
502
 
 
503
Sorry for my Eglish and C code, I'm not native :-)
 
504
 
 
505
!!!!!!!!!!!!!!!!!!!!!!!!! NO WARRANTY !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
506
 
 
507
Instalation:
 
508
------------
 
509
1) Change three affected files in source directories 
 
510
    (I don't have time to create proper patch diffs, I don't know how)
 
511
        [PostgreSQL 6.5.1$B$G$O$3$N%9%F%C%W$OI,MW$"$j$^$;$s!%(B-- $B@P0f(B]
 
512
2) Compile with enabled locale and multibyte set to LATIN2
 
513
3) Setup properly your instalation, do not forget to create locale
 
514
   variables in your profile (environment). Ex. (may not be exactly true):
 
515
        LC_ALL=cs_CZ.ISO8859-2
 
516
        LC_COLLATE=cs_CZ.ISO8859-2
 
517
        LC_CTYPE=cs_CZ.ISO8859-2
 
518
        LC_MONETARY=cs_CZ.ISO8859-2
 
519
        LC_NUMERIC=cs_CZ.ISO8859-2
 
520
        LC_TIME=cs_CZ.ISO8859-2
 
521
4) You have to start the postmaster with locales set!
 
522
5) Try it with Czech language, it have to sort
 
523
5) Install ODBC driver for PgSQL into your M$ Windows
 
524
6) Setup properly your data source. Include this line in your ODBC
 
525
   configuration dialog in field "Connect Settings:" :
 
526
        SET CLIENT_ENCODING = 'WIN1250';
 
527
7) Now try it again, but in Windows with ODBC.
 
528
 
 
529
Description:
 
530
------------
 
531
- Depends on proper system locales, tested with RH6.0 and Slackware 3.6,
 
532
  with cs_CZ.iso8859-2 loacle
 
533
- Never try to set-up server multibyte database encoding to WIN1250,
 
534
  always use LATIN2 instead. There is not WIN1250 locale in Unix
 
535
- WIN1250 encoding is useable only for M$W ODBC clients. The characters are
 
536
  on thy fly re-coded, to be displayed and stored back properly
 
537
 
 
538
Important:
 
539
----------
 
540
- it reorders your sort order depending on your LC_... setting, so don't be
 
541
  confused with regression tests, they don't use locale
 
542
- "ch" is corectly sorted only in some newer locales (Ex. RH6.0)
 
543
- you have to insert money as '162,50' (with comma in aphostrophes!)
 
544
- not tested properly
 
545
  -------------------------------------------------------------------
 
546
 
 
547
$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
 
548
    (nak@email.com)$B$+$i$$$?$@$$$?LdBjDs5/$H2r@b$G$9!%(B
 
549
 
 
550
-------------------------- $B0zMQ3+;O(B ----------------------------------
 
551
---
 
552
1. SJIS $B%3!<%I$NHO0O(B
 
553
 
 
554
    1 $B%P%$%HL\(B 0x81 - 0x9F$B!$(B0xE0 - 0xFC
 
555
    2 $B%P%$%HL\(B 0x40 - 0x7E$B!$(B0x80 - 0xFC
 
556
 
 
557
    $B$$$o$f$k!V30;zNN0h!W$NHO0O(B:
 
558
 
 
559
    - X0208 $B6&DL<+M3NN0h(B
 
560
 
 
561
    |--------------------
 
562
    | 85 $B6h(B  0xEB40 $B!A(B
 
563
    |...
 
564
    |--------------------
 
565
    | 89 $B6h(B  0xED40 $B!A(B    ; 89$B!A(B92 $B6h$O(B
 
566
    |...                  ; $B!V(BNEC $BA*Dj(B IBM $B3HD%J8;zNN0h!W(B
 
567
    |-------------------- ; $B$H8F$P$l$k(B
 
568
    | 93 $B6h(B  0xEF40 $B!A(B
 
569
    | 94 $B6h(B  0xEF9F $B!A(B 0xEFFC
 
570
 
 
571
    - $B%f!<%6Dj5AJ8;zNN0h(B
 
572
    
 
573
    |--------------------
 
574
    | 95 $B6h(B  0xF040 $B!A(B    ; 95$B!A(B104 $B6h(B
 
575
    |...                  ; $B!V%f!<%6Dj5AJ8;zNN0h(B A$B!W(B($B2>>N(B)
 
576
    |--------------------
 
577
    |105 $B6h(B  0xF540 $B!A(B    ; 105$B!A(B114 $B6h(B
 
578
    |...                  ; $B!V%f!<%6Dj5AJ8;zNN0h(B B$B!W(B($B2>>N(B)
 
579
    |--------------------
 
580
    |115 $B6h(B  0xFA40 $B!A(B    ; 115$B!A(B120 $B6h$O0lHL$K(B
 
581
    |...                  ; $B!V(BIBM $B3HD%J8;zNN0h!W(B
 
582
    |120 $B6h(B  ...          ; $B$H8F$P$l$k(B
 
583
    |--------------------
 
584
 
 
585
---
 
586
2. i-mode $BC<Kv$,;H$C$F$$$k?^7AJ8;z%3!<%I$NHO0O(B
 
587
 
 
588
    0xF89F - 0xF8FC  (112 $B6h(B)
 
589
    0xF940 - 0xF949  (113 $B6h(B)
 
590
    0xF972 - 0xF97E  (113 $B6h(B)
 
591
    0xF980 - 0xF990  (113 $B6h(B)
 
592
    0xF9B0           (114 $B6h(B)
 
593
 
 
594
---
 
595
3. $B0lHLE*$J(B EUC $BF|K\8l%3!<%I$NDj5A(B
 
596
 
 
597
    G0 : [0x21-0x7E]                  ; $B$$$o$f$k(B JIS ROMAN
 
598
    G1 : [0xA1-0xFE] [0xA1-0xFE]      ; JIS X 0208 
 
599
    G2 : 0x8E [0xA1-0xDF]             ; JIS X 0201 $B%+%J(B
 
600
    G3 : 0x8F [0xA1-0xFE] [0x21-0x7E] ; JIS X 0212 $BJd=u4A;z(B
 
601
 
 
602
---
 
603
[$BLdBjE@(B]
 
604
 
 
605
SJIS 95$B!A(B120 $B6h$O(B JIS X0208 $B$K3:Ev$9$kNN0h$,B8:_$7$J$$(B
 
606
$B$?$a!$$3$NNN0h$N(B EUC - SJIS $BJ8;z%3!<%IJQ49$O3F%Y%s%@$K(B
 
607
$B$h$C$F0[$J$k$N$G$O$J$$$+!$$H$$$&$N$,@P0fMM$+$i$N$4;XE&(B
 
608
$B$G$7$?!%(B
 
609
 
 
610
---
 
611
[$B5DO@(B]
 
612
 
 
613
$BD4::$N7k2L!$(BSJIS 95$B!A(B120 $B6h$r(B EUC $B$KJQ49$9$k$?$a$NI8=`E*$J(B
 
614
$B%k!<%k$,$J$$$o$1$G$O$J$$!$$H$$$&$3$H$,$o$+$j$^$7$?!%>\:Y$O(B
 
615
$B8e=R$N;29M;qNA$r$4Mw$$$?$@$/$H$7$F!$$3$3$G$O$=$N%k!<%k$r(B
 
616
$B4JC1$K$4@bL@$$$?$7$^$9!%(B
 
617
 
 
618
   - SJIS $B%f!<%6Dj5AJ8;zNN0h(B A ($B2>>N(B)
 
619
          95$B!A(B104 $B6h(B  $B"+"*(B $BF|K\8l(B EUC / G1 85$B!A(B95 $B6h(B
 
620
 
 
621
         $B$?$H$($P(B SJIS $B$N(B (95, 1) = 0xF040 $B$O(B
 
622
         EUC $B$N(B 0xF5A1 $B$K$J$j$^$9!%(B
 
623
 
 
624
   - SJIS $B%f!<%6Dj5AJ8;zNN0h(B B ($B2>>N(B)
 
625
         105$B!A(B114 $B6h(B  $B"+"*(B $BF|K\8l(B EUC / G3 85$B!A(B95 $B6h(B
 
626
 
 
627
         $B$?$H$($P(B SJIS $B$N(B (105, 1) = 0xF540 $B$O(B
 
628
         EUC $B$N(B 0x8FF5A1 $B$K$J$j$^$9!%(B
 
629
 
 
630
   - IBM $B3HD%J8;zNN0h(B
 
631
         115$B!A(B120 $B6h(B
 
632
 
 
633
         JIS X 0208 ($BF|K\8l(B EUC / G1)$B!$(BJIS X 0212 
 
634
         ($BF|K\8l(B EUC / G3) $B$K3:Ev$9$kJ8;z$,$"$k>l9g(B
 
635
         $B$O$=$NJ8;z$K%^%C%T%s%0!%$=$&$G$J$$>l9g$O(B
 
636
         $BF|K\8l(B EUC / G3 83$B!A(B84 $B6h$r!$6hE@%3!<%I$N>e0L(B
 
637
         $B$+$i=g$K3d$jEv$F$F$$$/(B ($BJQ49%F!<%V%kJ}<0(B)
 
638
 
 
639
$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
 
640
$B$h$C$F0[$J$k$?$a!$Aj8_1?MQ$N:]$KLdBj$K$J$C$F$$$k$3$H$+$i!$(B1996 
 
641
$BG/$K(B OSF $BF|K\%Y%s%@6(5D2q$,8!F$:n@.$7$?Js9p=q$,%Y!<%9$K$J$C$F$$(B
 
642
$B$k$h$&$G$9!%(B
 
643
 
 
644
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 
 
645
JIS $B%3!<%IJQ49;EMM!W$K$b$H$E$/$H=q$$$F$"$j!$(BSolaris 2.6 $B$+$iF3F~(B
 
646
$B$7$F$$$k$N$@$=$&$G!$;d$+$i8+$l$P;v<B>e$NI8=`$H9M$($F$bIT<+A3$G$O(B
 
647
$B$J$$$H46$8$^$9!%(B
 
648
 
 
649
$B$J$*!$>/$J$/$H$b(B 1996 $BG/Ev;~$K$*$$$F$O!$(BOracle $B$d(B Sybase $B$O(B 
 
650
SJIS $B$N%f!<%6Dj5A(B/$B%Y%s%@Dj5AJ8;zNN0h$r(B EUC $B$KJQ49$9$k:]!$H=JLIT(B
 
651
$B2DG=J8;z$H$7$F07$C$F$$$k$i$7$$$H$$$&$3$H$bJdB-$7$F$*$-$^$9!%(B
 
652
 
 
653
---
 
654
[$B;29M;qNA(B]
 
655
 
 
656
// URL $B$,D9$$$N$G!$ESCf$G@Z$l$J$$$H$$$$$N$G$9$,(B...
 
657
 
 
658
-$B!VF|K\8l(B EUC$B!&%7%U%H(B JIS $B%3!<%IJQ49;EMM$H%3!<%I7O<BBVD4::!W(B
 
659
    1966, OSF $BF|K\%Y%s%@6(5D2q(B
 
660
    http://www.opengroup.or.jp/jvc/cde/sjis-euc.html
 
661
 
 
662
-$B!VJ8;z%3!<%IJQ495,B'!W(B
 
663
    Solaris 7$B!$(BJFP $B%f!<%6!<%:%,%$%I(B
 
664
    http://docs.sun.com/ab2/coll.139.3/JFPUG/@Ab2PageView/11683?Ab2Lang=ja&Ab2Enc=euc-jp
 
665
 
 
666
-$B!VF|K\8lJ8;z%3!<%I!W(B
 
667
    Solaris 7$B!$(BJFP $B%f!<%6!<%:%,%$%I(B
 
668
    http://docs.sun.com/ab2/coll.139.3/JFPUG/@Ab2PageView/879;td=5?Ab2Lang=ja&Ab2Enc=euc-jp
 
669
 
 
670
    // $BFf$N!V(B1$B!A(B20 $B6h!W$N5-=R$O$3$3$+$i$-$F$$$^$9!%(B
 
671
 
 
672
---
 
673
-------------------------- $B0zMQ$3$3$^$G(B ---------------------------------
 
674
 
 
675
$B2~DjMzNr!'(B
 
676
 
 
677
  2002/10/21
 
678
        * $B%^%k%A%P%$%HBP1~$,%*%W%7%g%s$G$O$J$/!$8GDj$GI,$:AH$_9~$^$l$k(B
 
679
          $B$h$&$K$J$j$^$7$?!%(B
 
680
 
 
681
        * CREATE CONVERSION/DROP CONVERSION$B$NDI2C!%$3$l$K$H$b$J$$!$%((B
 
682
          $B%s%3!<%G%#%s%0JQ494X?t$,%m!<%@%V%k4X?t$K$J$j!$%P%C%/%(%s%I$N(B
 
683
          $B%m!<%I%b%8%e!<%k%5%$%:$,(B7.2$B$h$j$b>.$5$/$J$C$F$$$^$9!%$^$?!$(B
 
684
          SQL$BI8=`$N(BCONVERT$B4X?t$rDI2C$7$^$7$?!%(B
 
685
        * $B$$$/$D$+%(%s%3!<%G%#%s%0$,DI2C$5$l$F$$$^$9!%(B
 
686
        * $B0J>e!$(B7.3$B$KH?1G$5$l$^$9!%(B
 
687
 
 
688
  2001/10/01
 
689
        * CONVERT$B$NDI2C!%(Blpad/rpad/trim/btrim/ltrim/rtrim/translate$B$N(B
 
690
          $B%^%k%A%P%$%HBP1~DI2C!%(Bchar/varchar$B$G%P%$%H?t$G$O$J$/!$J8;z?t(B
 
691
          $B$G%5%$%:$rDj5A$9$k$h$&$KJQ99!%0J>e!$(B7.2$B$KH?1G$5$l$^$9!%(B
 
692
 
 
693
  2001/2/15
 
694
        * $BFA2H(B@$B;06(1?M"%5!<%S%9$5$s$+$i!$(BCP932.TXT$B$h$j@8@.$7$?(BSJIS$BMQ$N(B
 
695
          $BJQ49%F!<%V%k$rDs6!$7$F$$$?$@$-$^$7$?!%(B7.1$B$KH?1G$5$l$^$9!%(B
 
696
 
 
697
  2001/1/6
 
698
        * UNICODE$B$HB>$N%(%s%3!<%G%#%s%0$H$NAj8_JQ495!G=$rDI2C!%(B
 
699
        * 7.1$B$KH?1G$5$l$^$9!%(B
 
700
 
 
701
  2000/5/20
 
702
        * NEC $BA*Dj(B IBM $B4A;zBP1~$rDI2C$7$^$7$?!%$3$l$O(B $BFA2H(B@$B;06(1?M"%5!<%S%9(B
 
703
          $B$5$s$+$i$N(B contribute $B$G$9!%(B
 
704
        * $B$3$l$i$O!$(B7.0.1 $B$KH?1G$5$l$^$9!%(B
 
705
 
 
706
  2000/3/22
 
707
        * PQsetClientEncoding, PQclientEncoding $B$r(Blibpq $B4X?t$KDI2C!$(B
 
708
          $B%3%M%/%7%g%sKh$K%(%s%3!<%G%#%s%0$rJQ992DG=$K!%(B
 
709
        * SJIS $B%f!<%6Dj5AJ8;z(B (UDC) $B$X$NBP1~(B
 
710
        * ./configure --with-mb=EUC_JP $B$+$i(B
 
711
          ./configure --enable-multibyte=EUC_JP $B$KJQ99(B
 
712
        * SQL_ASCII $B$N(B regression test $BDI2C(B
 
713
        * $B$3$l$i$O(B 7.0 $B$KH?1G$5$l$^$9!%(B
 
714
 
 
715
  1999/7/11 WIN1250(Windows$BMQ$N%A%'%38l(B)$B%5%]!<%H$rDI2C$7$^$7$?!%(B
 
716
        * WIN1250 $B$,%U%m%s%H%(%s%IB&$N%(%s%3!<%G%#%s%0$H$7$FMxMQ$G$-$k$h(B
 
717
          $B$&$K$J$j$^$7$?!%$3$N>l9g!$%P%C%/%(%s%IB&$N%(%s%3!<%G%#%s%0$O(B
 
718
          LATIN2 $B$^$?$O(B MULE_INTERNAL $B$H$7$^$9!%(B
 
719
          (contributed by Pavel Behal)
 
720
        * backend/utils/mb/conv.c$B$K$*$1$k7?$NIT@09g$r=$@5$7$^$7$?!%(B
 
721
          (contributed by Tomoaki Nishiyama)
 
722
        * $B$3$l$i$O(B6.5.1$B$KH?1G$5$l$^$9!%(B
 
723
 
 
724
  1999/3/23 $B%-%j%kJ8;z%5%]!<%HDI2CB>(B(6.5 $B$KH?1G:Q(B)
 
725
        * $B%(%s%3!<%G%#%s%0$H$7$F(B KOI8(KOI8-R), WIN(CP1251), ALT(CP866) $B$r(B
 
726
          $B%5%]!<%H$7$F$$$^$9!%$3$l$i$O!$%U%m%s%H%(%s%I!$%P%C%/%(%s%I!$(B
 
727
          $B$I$A$i$N%(%s%3!<%G%#%s%0$H$7$F$b;HMQ2DG=$G$"$j!$%(%s%3!<%G%#%s%0$N(B
 
728
          $BAj8_JQ49$,2DG=$G$9!%$^$?!$=>Mh$+$i%5%]!<%H$7$F$$$k(B ISO 8859-5 $B$b(B
 
729
          $BF1MM$K;HMQ2DG=$G$9!%(B
 
730
          $B%-%j%kJ8;z%5%]!<%H$O!$(BOleg Broytmann <phd@sun.med.ru> $B;a$N(B
 
731
          $B%j%/%(%9%H5Z$S6(NO$K$h$j<B8=$7$^$7$?!%$3$l$O!$=>Mh$+$i$"$k(B
 
732
          RCODE $B%5%]!<%H$N5!G=$r<h$j9~$`$b$N$G$b$"$j$^$9!%(B
 
733
        * MB $B$H(B locale $B$rF1;~$K;XDj$7$?>l9g$KBgJ8;z!?>.J8;z$rL5;k$7$?(B
 
734
          $B@55,I=8=8!:w$,@5>o$KF0:n$7$J$$%P%0$r=$@5(B
 
735
 
 
736
  1999/1/26 Big5 $B%5%]!<%HDI2C(B(6.4.2-patched/6.5 $B$KH?1G:Q(B)
 
737
        * Big5 $B$,%U%m%s%H%(%s%IB&$N%(%s%3!<%G%#%s%0$H$7$FMxMQ$G$-$k$h(B
 
738
          $B$&$K$J$j$^$7$?!%$3$N>l9g!$%P%C%/%(%s%IB&$N%(%s%3!<%G%#%s%0$O(B
 
739
          EUC_TW $B$^$?$O(B MULE_INTERNAL $B$H$7$^$9!%(B
 
740
        * EUC_TW $B$N(B regression test $B%1!<%9$rDI2C(B
 
741
          (contributed by Jonah Kuo <jonahkuo@mail.ttn.com.tw>)
 
742
 
 
743
  1998/12/16 $BK\%I%-%e%a%s%H=$@5(B(6.4.2 $B$KH?1G:Q(B)$B!%(B
 
744
        * Makefile.custom $B$G(B MB=EUC_JP $B$J$I$H@_Dj$9$kJ}K!$O(B 6.4 $B0J9_(B
 
745
          $B%5%]!<%H$5$l$F$$$J$$$N$G:o=|$7$?!%(B
 
746
        * $BJ8;z%3!<%I(B $B"*(B $B%(%s%3!<%G%#%s%0!$%/%i%$%"%s%H"*%U%m%s%H%(%s%I(B
 
747
          $B%5!<%P"*%P%C%/%(%s%I(B $B$K$=$l$>$l8l6g$r=$@5!%(B
 
748
 
 
749
  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
 
750
        * SQL_ASCII $B%5%]!<%H$N%P%0=$@5(B
 
751
 
 
752
  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
 
753
        * BINARY CURSOR $B$NLdBj$r=$@5(B
 
754
        * pg_dumpall $B$N%P%0=$@5(B
 
755
 
 
756
  1998/11/5 6.4 $B%j%j!<%9!%(B
 
757
        * pg_database $B$N(B encoding $B%+%i%`$,(B MB $B$,M-8z$G$J$$$H$-$K$b(B
 
758
          $BDI2C$5$l$k$h$&$K$J$C$?!%$=$N$?$a!$(BMB $B$,M-8z$G$J$$$H$-$K$O!$(B
 
759
          ASCII $B$N%(%s%3!<%G%#%s%0$rI=$9(B SQL_ASCII $B$r?7$7$$%(%s%3!<%G%#%s%0(B
 
760
          $B$H$7$FDI2C$7$?!%$3$l$K$H$b$J$$!$%(%s%3!<%G%#%s%0L>$KBP1~$9$k(B
 
761
          $B%(%s%3!<%G%#%s%0(BID$B$,(B SQL_ASCII $B$r(B 0 $B$H$9$kHV9f$KJQ99$K$J$C$?!%(B
 
762
 
 
763
  1998/7/22 6.4 $B&A8~$1$K%Q%C%A$r%j%j!<%9!%(B
 
764
        * initdb/createdb/create database $B$G%P%C%/%(%s%IB&$N(B
 
765
          $B%(%s%3!<%G%#%s%0$r@_Dj$-$k5!G=<BAu!%$3$N$?$a!$%7%9%F%`%+%?%m(B
 
766
          $B%0$N(B pg_database $B$K?7$7$$%+%i%`(B encoding $B$rDI2C(B(MB$B$,M-8z$J;~$@$1(B)
 
767
        * copy $B$,(B PGCLIENTENCODING $B$KBP1~(B
 
768
        * SQL92 $B$N(B "SET NAMES" $B$r%5%]!<%H(B(MB$B$,M-8z$J;~$@$1(B)
 
769
        * LATIN2-5 $B$r%5%]!<%H(B
 
770
        * regression test $B$K(B unicode $B$N%F%9%H%1!<%9$rDI2C(B
 
771
        * MB $B@lMQ$N(B regression $B%F%9%H%G%#%l%/%H%j(B test/mb $B$rDI2C(B
 
772
        * $B%=!<%9%U%!%$%k$NCV$->l=j$rBgI}8+D>$7!%(BMB $B4X78$O(B
 
773
          include/mb, backend/utils/mb $B$KCV$/$h$&$K$7$?(B
 
774
 
 
775
  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
 
776
        $BK\2H$G$O(B 6.4 snapshot $B$K<h$j9~$^$l$kM=Dj(B)   
 
777
 
 
778
  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
 
779
        $BK\2H$G$O(B 6.4 snapshot $B$K<h$j9~$^$l$kM=Dj(B)
 
780
        * $B4D6-JQ?t(B PGCLIENTENCODING $B$N%5%]!<%H!%%U%m%s%H%(%s%IB&$N(B
 
781
          $B%(%s%3!<%G%#%s%0$r;XDj$9$k!%8=:_!$(BSJIS, EUC_*, MULE_INTERNAL, 
 
782
          LATIN1 $B$,;XDj$G$-$k!%$^$?!$(B
 
783
          set client_encoding to 'sjis';
 
784
          $B$G$b2DG=(B
 
785
        * 8bit $BJ8;z$,EO$k$HLdBj$,5/$-$k2U=j$K$G$-$k$@$1BP1~(B
 
786
 
 
787
  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
 
788
        $BK\2H$G$O(B 6.4 snapshot $B$K<h$j9~$^$l$F$$$k(B)
 
789
        * character_length(), position(), substring() $B$N%^%k%A%P%$%H(B
 
790
          $BBP1~(B
 
791
        * octet_length() $BDI2C(B $B"*(B initdb $B$N$d$jD>$7I,MW(B
 
792
        * configure $B$N%*%W%7%g%s$K(B MB $B%5%]!<%HDI2C(B
 
793
          (ex. configure --with-mb=EUC_JP)
 
794
        * EUC_KR $B$N(B regression test $BDI2C(B
 
795
          ("Soonmyung. Hong" <hong@lunaris.hanmesoft.co.kr> $B$5$sDs6!(B)
 
796
        * EUC_JP $B$N(B regression test $B$K(B character_length(), position(),
 
797
          substring(), octet_length() $BDI2C(B
 
798
        * regress.sh $B$N(B SystemV $B$K$*$1$kHs8_49@-=$@5(B
 
799
        * toupper(), tolower() $B$K(B 8bit $BJ8;z$,EO$k$HMn$A$k$3$H$,(B
 
800
          $B$"$k$N$r=$@5(B
 
801
 
 
802
  1998/3/25 PostgreSQL 6.3.1 $B%j%j!<%9!$(BMB PL2 $B$,<h$j9~$^$l$k(B
 
803
 
 
804
  1998/3/10 PL2 $B$r%j%j!<%9(B
 
805
        * EUC_JP, EUC_CN, MULE_INTERNAL $B$N(B regression test $B$rDI2C(B
 
806
          (EUC_CN $B$N%G!<%?$O(B he@sra.co.jp $B$5$sDs6!(B)
 
807
        * regexp $B$K$*$$$F!$(Bisalpha $B$J$I$K(B unsigend char $B0J30$NCM$,(B
 
808
          $BEO$i$J$$$h$&$K%,!<%I$r$+$1$k(B
 
809
        * $B1Q8l$N%I%-%e%a%s%H$rDI2C(B
 
810
        * MB $B$rDj5A$7$J$$>l9g$KH/@8$9$k%P%0$r=$@5(B
 
811
 
 
812
  1998/3/1 PL1 $B$r%j%j!<%9(B
 
813
 
 
814
$B0J>e!%(B