mirror of
https://github.com/postgres/postgres.git
synced 2025-07-05 07:21:24 +03:00
From: t-ishii@sra.co.jp
Hi, here are patches I promised (against 6.3.2): * character_length(), position(), substring() are now aware of multi-byte characters * add octet_length() * add --with-mb option to configure * new regression tests for EUC_KR (contributed by "Soonmyung. Hong" <hong@lunaris.hanmesoft.co.kr>) * add some test cases to the EUC_JP regression test * fix problem in regress/regress.sh in case of System V * fix toupper(), tolower() to handle 8bit chars note that: o patches for both configure.in and configure are included. maybe the one for configure is not necessary. o pg_proc.h was modified to add octet_length(). I used OIDs (1374-1379) for that. Please let me know if these numbers are not appropriate.
This commit is contained in:
@ -53,3 +53,35 @@ QUERY: select * from
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ե<EFBFBD><EFBFBD>å<EFBFBD><EFBFBD><EFBFBD>|ʬB10<31><30> |
|
||||
(2 rows)
|
||||
|
||||
QUERY: select *,character_length(<28>Ѹ<EFBFBD>) from <20><EFBFBD><D7BB><EFBFBD><EFBFBD>Ѹ<EFBFBD>;
|
||||
<EFBFBD>Ѹ<EFBFBD> |ʬ<>ॳ<EFBFBD><E0A5B3><EFBFBD><EFBFBD>|<7C><><EFBFBD><EFBFBD>1a<31><61><EFBFBD><EFBFBD>|length
|
||||
--------------------------+----------+----------+------
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD><EFBFBD>ǥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ쥤 |<7C><>A01<30><31> | | 12
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ե<EFBFBD><EFBFBD>å<EFBFBD><EFBFBD><EFBFBD>|ʬB10<31><30> | | 13
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޡ<EFBFBD> |<7C><>Z01<30><31> | | 12
|
||||
(3 rows)
|
||||
|
||||
QUERY: select *,octet_length(<28>Ѹ<EFBFBD>) from <20><EFBFBD><D7BB><EFBFBD><EFBFBD>Ѹ<EFBFBD>;
|
||||
<EFBFBD>Ѹ<EFBFBD> |ʬ<>ॳ<EFBFBD><E0A5B3><EFBFBD><EFBFBD>|<7C><><EFBFBD><EFBFBD>1a<31><61><EFBFBD><EFBFBD>|octet_length
|
||||
--------------------------+----------+----------+------------
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD><EFBFBD>ǥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ쥤 |<7C><>A01<30><31> | | 24
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ե<EFBFBD><EFBFBD>å<EFBFBD><EFBFBD><EFBFBD>|ʬB10<31><30> | | 26
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޡ<EFBFBD> |<7C><>Z01<30><31> | | 24
|
||||
(3 rows)
|
||||
|
||||
QUERY: select *,position('<27><>' in <20>Ѹ<EFBFBD>) from <20><EFBFBD><D7BB><EFBFBD><EFBFBD>Ѹ<EFBFBD>;
|
||||
<EFBFBD>Ѹ<EFBFBD> |ʬ<>ॳ<EFBFBD><E0A5B3><EFBFBD><EFBFBD>|<7C><><EFBFBD><EFBFBD>1a<31><61><EFBFBD><EFBFBD>|strpos
|
||||
--------------------------+----------+----------+------
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD><EFBFBD>ǥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ쥤 |<7C><>A01<30><31> | | 7
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ե<EFBFBD><EFBFBD>å<EFBFBD><EFBFBD><EFBFBD>|ʬB10<31><30> | | 0
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޡ<EFBFBD> |<7C><>Z01<30><31> | | 0
|
||||
(3 rows)
|
||||
|
||||
QUERY: select *,substring(<28>Ѹ<EFBFBD> from 10 for 4) from <20><EFBFBD><D7BB><EFBFBD><EFBFBD>Ѹ<EFBFBD>;
|
||||
<EFBFBD>Ѹ<EFBFBD> |ʬ<>ॳ<EFBFBD><E0A5B3><EFBFBD><EFBFBD>|<7C><><EFBFBD><EFBFBD>1a<31><61><EFBFBD><EFBFBD>|substr
|
||||
--------------------------+----------+----------+--------
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD><EFBFBD>ǥ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ץ쥤 |<7C><>A01<30><31> | |<7C>ץ쥤
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ե<EFBFBD><EFBFBD>å<EFBFBD><EFBFBD><EFBFBD>|ʬB10<31><30> | |<7C><><EFBFBD>å<EFBFBD><C3A5><EFBFBD>
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD><EFBFBD>ץ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ޡ<EFBFBD> |<7C><>Z01<30><31> | |<7C><><EFBFBD>ޡ<EFBFBD>
|
||||
(3 rows)
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
#!/bin/sh
|
||||
# $Header: /cvsroot/pgsql/src/test/regress/Attic/regress.sh,v 1.18 1998/03/15 07:39:04 scrappy Exp $
|
||||
# $Header: /cvsroot/pgsql/src/test/regress/Attic/regress.sh,v 1.19 1998/04/27 17:10:17 scrappy Exp $
|
||||
#
|
||||
if echo '\c' | grep -s c >/dev/null 2>&1
|
||||
then
|
||||
@ -43,7 +43,7 @@ fi
|
||||
echo "=============== running regression queries... ================="
|
||||
echo "" > regression.diffs
|
||||
if [ a$MB != a ];then
|
||||
mbtests=`echo $MB|tr A-Z a-z`
|
||||
mbtests=`echo $MB|tr "[A-Z]" "[a-z]"`
|
||||
else
|
||||
mbtests=""
|
||||
fi
|
||||
|
@ -13,3 +13,7 @@ select * from
|
||||
select * from <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѹ<EFBFBD> where ʬ<EFBFBD>ॳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> like '_Z%';
|
||||
select * from <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѹ<EFBFBD> where <EFBFBD>Ѹ<EFBFBD> ~ '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD>[<5B>ǥ<EFBFBD>]';
|
||||
select * from <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѹ<EFBFBD> where <EFBFBD>Ѹ<EFBFBD> ~* '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԥ塼<EFBFBD><EFBFBD>[<5B>ǥ<EFBFBD>]';
|
||||
select *,character_length(<EFBFBD>Ѹ<EFBFBD>) from <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѹ<EFBFBD>;
|
||||
select *,octet_length(<EFBFBD>Ѹ<EFBFBD>) from <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѹ<EFBFBD>;
|
||||
select *,position('<EFBFBD><EFBFBD>' in <EFBFBD>Ѹ<EFBFBD>) from <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѹ<EFBFBD>;
|
||||
select *,substring(<EFBFBD>Ѹ<EFBFBD> from 10 for 4) from <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѹ<EFBFBD>;
|
||||
|
Reference in New Issue
Block a user