From 5e45211a64149b3c659b90ff2de6fa982a5a93ed Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 4 May 2024 14:17:33 +0200 Subject: Adding upstream version 15.5. Signed-off-by: Daniel Baumann --- src/test/mb/sql/big5.sql | 20 +++++++++++ src/test/mb/sql/euc_cn.sql | 19 +++++++++++ src/test/mb/sql/euc_jp.sql | 19 +++++++++++ src/test/mb/sql/euc_kr.sql | 19 +++++++++++ src/test/mb/sql/euc_tw.sql | 20 +++++++++++ src/test/mb/sql/gb18030.sql | 19 +++++++++++ src/test/mb/sql/mule_internal.sql | 72 +++++++++++++++++++++++++++++++++++++++ src/test/mb/sql/sjis.sql | 20 +++++++++++ src/test/mb/sql/utf8.sql | 19 +++++++++++ 9 files changed, 227 insertions(+) create mode 100644 src/test/mb/sql/big5.sql create mode 100644 src/test/mb/sql/euc_cn.sql create mode 100644 src/test/mb/sql/euc_jp.sql create mode 100644 src/test/mb/sql/euc_kr.sql create mode 100644 src/test/mb/sql/euc_tw.sql create mode 100644 src/test/mb/sql/gb18030.sql create mode 100644 src/test/mb/sql/mule_internal.sql create mode 100644 src/test/mb/sql/sjis.sql create mode 100644 src/test/mb/sql/utf8.sql (limited to 'src/test/mb/sql') diff --git a/src/test/mb/sql/big5.sql b/src/test/mb/sql/big5.sql new file mode 100644 index 0000000..4e2d100 --- /dev/null +++ b/src/test/mb/sql/big5.sql @@ -0,0 +1,20 @@ +drop table 廠商資料; +create table 廠商資料 (行業別 text, 公司抬頭 varchar, 地址 varchar(16)); +create index 廠商資料index1 on 廠商資料 using btree (行業別); +create index 廠商資料index2 on 廠商資料 using hash (公司抬頭); +insert into 廠商資料 values ('電腦業', '達達科技', '北A01仁'); +insert into 廠商資料 values ('製造業', '財源有限公司', '中B10中'); +insert into 廠商資料 values ('餐飲業', '美味股份有限公司', '高Z01九'); +vacuum 廠商資料; +select * from 廠商資料; +select * from 廠商資料 where 地址 = '高Z01九'; +select * from 廠商資料 where 地址 ~* '高z01九'; +select * from 廠商資料 where 地址 like '_Z01_'; +select * from 廠商資料 where 地址 like '_Z%'; +select * from 廠商資料 where 公司抬頭 ~ '達達科[寄記技]'; +select * from 廠商資料 where 公司抬頭 ~* '達達科[寄記技]'; + +select *, character_length(行業別) from 廠商資料; +select *, octet_length(行業別) from 廠商資料; +select *, position('有限' in 公司抬頭) from 廠商資料; +select *, substring(公司抬頭 from 3 for 6 ) from 廠商資料; diff --git a/src/test/mb/sql/euc_cn.sql b/src/test/mb/sql/euc_cn.sql new file mode 100644 index 0000000..7cd0b9b --- /dev/null +++ b/src/test/mb/sql/euc_cn.sql @@ -0,0 +1,19 @@ +drop table 數呾儂扲逄; +create table 數呾儂扲逄(扲逄 text, 煦濬瘍 varchar, 掘蛁1A char(16)); +create index 數呾儂扲逄index1 on 數呾儂扲逄 using btree(扲逄); +create index 數呾儂扲逄index2 on 數呾儂扲逄 using btree(煦濬瘍); +insert into 數呾儂扲逄 values('萇齟珆尨そ','儂A01奻'); +insert into 數呾儂扲逄 values('萇齟芞倛','煦B01笢'); +insert into 數呾儂扲逄 values('萇齟最唗埜','汳01狟'); +vacuum 數呾儂扲逄; +select * from 數呾儂扲逄; +select * from 數呾儂扲逄 where 煦濬瘍 = '汳01狟'; +select * from 數呾儂扲逄 where 煦濬瘍 ~* '芏01狟'; +select * from 數呾儂扲逄 where 煦濬瘍 like '_Z01_'; +select * from 數呾儂扲逄 where 煦濬瘍 like '_Z%'; +select * from 數呾儂扲逄 where 扲逄 ~ '萇齟[珆芞]'; +select * from 數呾儂扲逄 where 扲逄 ~* '萇齟[珆芞]'; +select *,character_length(扲逄) from 數呾儂扲逄; +select *,octet_length(扲逄) from 數呾儂扲逄; +select *,position('珆' in 扲逄) from 數呾儂扲逄; +select *,substring(扲逄 from 3 for 4) from 數呾儂扲逄; diff --git a/src/test/mb/sql/euc_jp.sql b/src/test/mb/sql/euc_jp.sql new file mode 100644 index 0000000..2021205 --- /dev/null +++ b/src/test/mb/sql/euc_jp.sql @@ -0,0 +1,19 @@ +drop table 煌遙窗迕賄; +create table 煌遙窗迕賄 (迕賄 text, 坌挀戊□玉 varchar, 鷞1A分方 char(16)); +create index 煌遙窗迕賄index1 on 煌遙窗迕賄 using btree (迕賄); +create index 煌遙窗迕賄index2 on 煌遙窗迕賄 using hash (坌挀戊□玉); +insert into 煌遙窗迕賄 values('戊件疋亙□正犯奴旦皿伊奶','窗A01曉'); +insert into 煌遙窗迕賄 values('戊件疋亙□正弘仿白奴永弁旦','坌B10醱'); +insert into 煌遙窗迕賄 values('戊件疋亙□正皿伕弘仿穴□','諦Z01票'); +vacuum 煌遙窗迕賄; +select * from 煌遙窗迕賄; +select * from 煌遙窗迕賄 where 坌挀戊□玉 = '諦Z01票'; +select * from 煌遙窗迕賄 where 坌挀戊□玉 ~* '諦z01票'; +select * from 煌遙窗迕賄 where 坌挀戊□玉 like '_Z01_'; +select * from 煌遙窗迕賄 where 坌挀戊□玉 like '_Z%'; +select * from 煌遙窗迕賄 where 迕賄 ~ '戊件疋亙□正[犯弘]'; +select * from 煌遙窗迕賄 where 迕賄 ~* '戊件疋亙□正[犯弘]'; +select *,character_length(迕賄) from 煌遙窗迕賄; +select *,octet_length(迕賄) from 煌遙窗迕賄; +select *,position('犯' in 迕賄) from 煌遙窗迕賄; +select *,substring(迕賄 from 10 for 4) from 煌遙窗迕賄; diff --git a/src/test/mb/sql/euc_kr.sql b/src/test/mb/sql/euc_kr.sql new file mode 100644 index 0000000..cf9e07f --- /dev/null +++ b/src/test/mb/sql/euc_kr.sql @@ -0,0 +1,19 @@ +drop table 耵蓱悁辨橫; +create table 耵蓱悁辨橫 (辨橫 text, 暐袛囀萄 varchar, 綠堅1A塭掘 char(16)); +create index 耵蓱悁辨橫index1 on 耵蓱悁辨橫 using btree (辨橫); +create index 耵蓱悁辨橫index2 on 耵蓱悁辨橫 using hash (暐袛囀萄); +insert into 耵蓱悁辨橫 values('闡У攪蛤蝶Ы溯檜', '悁A01葞'); +insert into 耵蓱悁辨橫 values('闡У攪斜楚а蝶', '暐B10齌'); +insert into 耵蓱悁辨橫 values('闡У攪Щ煎斜楚該', '嬣Z01欞'); +vacuum 耵蓱悁辨橫; +select * from 耵蓱悁辨橫; +select * from 耵蓱悁辨橫 where 暐袛囀萄 = '嬣Z01欞'; +select * from 耵蓱悁辨橫 where 暐袛囀萄 ~* '嬣z01欞'; +select * from 耵蓱悁辨橫 where 暐袛囀萄 like '_Z01_'; +select * from 耵蓱悁辨橫 where 暐袛囀萄 like '_Z%'; +select * from 耵蓱悁辨橫 where 辨橫 ~ '闡У攪[蛤斜]'; +select * from 耵蓱悁辨橫 where 辨橫 ~* '闡У攪[蛤斜]'; +select *,character_length(辨橫) from 耵蓱悁辨橫; +select *,octet_length(辨橫) from 耵蓱悁辨橫; +select *,position('蛤' in 辨橫) from 耵蓱悁辨橫; +select *,substring(辨橫 from 3 for 4) from 耵蓱悁辨橫; diff --git a/src/test/mb/sql/euc_tw.sql b/src/test/mb/sql/euc_tw.sql new file mode 100644 index 0000000..79f3def --- /dev/null +++ b/src/test/mb/sql/euc_tw.sql @@ -0,0 +1,20 @@ +drop table 徻椓罶涷; +create table 徻椓罶涷 (諙づ text, 襬く剉韝 varchar, щ彴 varchar(16)); +create index 徻椓罶涷index1 on 徻椓罶涷 using btree (諙づ); +create index 徻椓罶涷index2 on 徻椓罶涷 using hash (襬く剉韝); +insert into 徻椓罶涷 values ('諔瑼鞄', '蝞蝞秠岍', 'ヾA01癩'); +insert into 徻椓罶涷 values ('蕍楸鞄', '娷鳲植鄸く', '斕B10斕'); +insert into 徻椓罶涷 values ('顜聜鞄', '荂抸炴Л植鄸く', '崼Z01藻'); +vacuum 徻椓罶涷; +select * from 徻椓罶涷; +select * from 徻椓罶涷 where щ彴 = '崼Z01藻'; +select * from 徻椓罶涷 where щ彴 ~* '崼z01藻'; +select * from 徻椓罶涷 where щ彴 like '_Z01_'; +select * from 徻椓罶涷 where щ彴 like '_Z%'; +select * from 徻椓罶涷 where 襬く剉韝 ~ '蝞蝞秠[溈奡岍]'; +select * from 徻椓罶涷 where 襬く剉韝 ~* '蝞蝞秠[溈奡岍]'; + +select *, character_length(諙づ) from 徻椓罶涷; +select *, octet_length(諙づ) from 徻椓罶涷; +select *, position('植' in 襬く剉韝) from 徻椓罶涷; +select *, substring(襬く剉韝 from 3 for 6 ) from 徻椓罶涷; diff --git a/src/test/mb/sql/gb18030.sql b/src/test/mb/sql/gb18030.sql new file mode 100644 index 0000000..91ecaaa --- /dev/null +++ b/src/test/mb/sql/gb18030.sql @@ -0,0 +1,19 @@ +drop table 呾C蚚惤; +create table 呾C蚚惤 (蚚惤 text, 煦戊奈玉 varchar, 靽1A分方 char(16)); +create index 呾C蚚惤index1 on 呾C蚚惤 using btree (蚚惤); +create index 呾C蚚惤index2 on 呾C蚚惤 using hash (煦戊奈玉); +insert into 呾C蚚惤 values('戊件疋亙奈正犯奴旦皿伊奶','CA01奻'); +insert into 呾C蚚惤 values('戊件疋亙奈正弘仿白奴永弁旦','煦B10笢'); +insert into 呾C蚚惤 values('戊件疋亙奈正皿伕弘仿穴奈','汳01狟'); +vacuum 呾C蚚惤; +select * from 呾C蚚惤; +select * from 呾C蚚惤 where 煦戊奈玉 = '汳01狟'; +select * from 呾C蚚惤 where 煦戊奈玉 ~* '芏01狟'; +select * from 呾C蚚惤 where 煦戊奈玉 like '_Z01_'; +select * from 呾C蚚惤 where 煦戊奈玉 like '_Z%'; +select * from 呾C蚚惤 where 蚚惤 ~ '戊件疋亙奈正[犯弘]'; +select * from 呾C蚚惤 where 蚚惤 ~* '戊件疋亙奈正[犯弘]'; +select *,character_length(蚚惤) from 呾C蚚惤; +select *,octet_length(蚚惤) from 呾C蚚惤; +select *,position('犯' in 蚚惤) from 呾C蚚惤; +select *,substring(蚚惤 from 10 for 4) from 呾C蚚惤; diff --git a/src/test/mb/sql/mule_internal.sql b/src/test/mb/sql/mule_internal.sql new file mode 100644 index 0000000..2e381f0 --- /dev/null +++ b/src/test/mb/sql/mule_internal.sql @@ -0,0 +1,72 @@ +drop table 煌遙窗迕賄; +create table 煌遙窗迕賄 (迕賄 text, 坌挀戊□玉 varchar, 嗶1A分方 char(16)); +create index 煌遙窗迕賄index1 on 煌遙窗迕賄 using btree (迕賄); +create index 煌遙窗迕賄index2 on 煌遙窗迕賄 using hash (坌挀戊□玉); +insert into 煌遙窗迕賄 values('戊件疋亙□正犯奴旦皿伊奶','窗A01曉'); +insert into 煌遙窗迕賄 values('戊件疋亙□正弘仿白奴永弁旦','坌B10醱'); +insert into 煌遙窗迕賄 values('戊件疋亙□正皿伕弘仿穴□','諦Z01票'); +vacuum 煌遙窗迕賄; +select * from 煌遙窗迕賄; +select * from 煌遙窗迕賄 where 坌挀戊□玉 = '諦Z01票'; +select * from 煌遙窗迕賄 where 坌挀戊□玉 ~* '諦z01票'; +select * from 煌遙窗迕賄 where 坌挀戊□玉 like '_Z01_'; +select * from 煌遙窗迕賄 where 坌挀戊□玉 like '_Z%'; +select * from 煌遙窗迕賄 where 迕賄 ~ '戊件疋亙□正[犯弘]'; +select * from 煌遙窗迕賄 where 迕賄 ~* '戊件疋亙□正[犯弘]'; +select *,character_length(迕賄) from 煌遙窗迕賄; +select *,octet_length(迕賄) from 煌遙窗迕賄; +select *,position('犯' in 迕賄) from 煌遙窗迕賄; +select *,substring(迕賄 from 10 for 4) from 煌遙窗迕賄; +drop table 數呾儂扲逄; +create table 數呾儂扲逄(扲逄 text, 煦濬瘍 varchar, 掘蛁1A char(16)); +create index 數呾儂扲逄index1 on 數呾儂扲逄 using btree(扲逄); +create index 數呾儂扲逄index2 on 數呾儂扲逄 using btree(煦濬瘍); +insert into 數呾儂扲逄 values('萇齟珆尨そ','儂A01奻'); +insert into 數呾儂扲逄 values('萇齟芞倛','煦B01笢'); +insert into 數呾儂扲逄 values('萇齟最唗埜','汳01狟'); +vacuum 數呾儂扲逄; +select * from 數呾儂扲逄; +select * from 數呾儂扲逄 where 煦濬瘍 = '汳01狟'; +select * from 數呾儂扲逄 where 煦濬瘍 ~* '芏01狟'; +select * from 數呾儂扲逄 where 煦濬瘍 like '_Z01_'; +select * from 數呾儂扲逄 where 煦濬瘍 like '_Z%'; +select * from 數呾儂扲逄 where 扲逄 ~ '萇齟[珆芞]'; +select * from 數呾儂扲逄 where 扲逄 ~* '萇齟[珆芞]'; +select *,character_length(扲逄) from 數呾儂扲逄; +select *,octet_length(扲逄) from 數呾儂扲逄; +select *,position('珆' in 扲逄) from 數呾儂扲逄; +select *,substring(扲逄 from 3 for 4) from 數呾儂扲逄; +drop table 耵蓱悁辨橫; +create table 耵蓱悁辨橫 (辨橫 text, 暐袛囀萄 varchar, 綠堅1A塭掘 char(16)); +create index 耵蓱悁辨橫index1 on 耵蓱悁辨橫 using btree (辨橫); +create index 耵蓱悁辨橫index2 on 耵蓱悁辨橫 using hash (暐袛囀萄); +insert into 耵蓱悁辨橫 values('闡У攪蛤蝶Ы溯檜', '悁A01葞'); +insert into 耵蓱悁辨橫 values('闡У攪斜楚а蝶', '暐B10齌'); +insert into 耵蓱悁辨橫 values('闡У攪Щ煎斜楚該', '嬣Z01欞'); +vacuum 耵蓱悁辨橫; +select * from 耵蓱悁辨橫; +select * from 耵蓱悁辨橫 where 暐袛囀萄 = '嬣Z01欞'; +select * from 耵蓱悁辨橫 where 暐袛囀萄 ~* '嬣z01欞'; +select * from 耵蓱悁辨橫 where 暐袛囀萄 like '_Z01_'; +select * from 耵蓱悁辨橫 where 暐袛囀萄 like '_Z%'; +select * from 耵蓱悁辨橫 where 辨橫 ~ '闡У攪[蛤斜]'; +select * from 耵蓱悁辨橫 where 辨橫 ~* '闡У攪[蛤斜]'; +select *,character_length(辨橫) from 耵蓱悁辨橫; +select *,octet_length(辨橫) from 耵蓱悁辨橫; +select *,position('蛤' in 辨橫) from 耵蓱悁辨橫; +select *,substring(辨橫 from 3 for 4) from 耵蓱悁辨橫; +drop table test; +create table test (t text); +insert into test values('ENGLISH'); +insert into test values('FRANォIS'); +insert into test values('ESPA埆L'); +insert into test values('炓LENSKA'); +insert into test values('ENGLISH FRANォIS ESPA埆L 炓LENSKA'); +vacuum test; +select * from test; +select * from test where t = 'ESPA埆L'; +select * from test where t ~* 'espa峱l'; +select *,character_length(t) from test; +select *,octet_length(t) from test; +select *,position('L' in t) from test; +select *,substring(t from 3 for 4) from test; diff --git a/src/test/mb/sql/sjis.sql b/src/test/mb/sql/sjis.sql new file mode 100644 index 0000000..dfa66fc --- /dev/null +++ b/src/test/mb/sql/sjis.sql @@ -0,0 +1,20 @@ +drop table vZ@p; +create table vZ@p (p text, R[h varchar, l1A char(16)); +create index vZ@p甋ndex1 on vZ@p using btree (p); +create index vZ@p甋ndex2 on vZ@p using hash (R[h); +insert into vZ@p values('Rs[^fBXvC','@A01'); +insert into vZ@p values('Rs[^OtBbNX','朋10'); +insert into vZ@p values('Rs[^vO}[','lZ01'); +vacuum vZ@p; +select * from vZ@p; +select * from vZ@p where R[h = 'lZ01'; +select * from vZ@p where R[h ~* 'lz01'; +select * from vZ@p where R[h like '_Z01_'; +select * from vZ@p where R[h like '_Z%'; +select * from vZ@p where p ~ 'Rs[^[fO]'; +select * from vZ@p where p ~* 'Rs[^[fO]'; +select *,character_length(p) from vZ@p; +select *,octet_length(p) from vZ@p; +select *,position('f' in p) from vZ@p; +select *,substring(p from 10 for 4) from vZ@p; +copy vZ@p to stdout; diff --git a/src/test/mb/sql/utf8.sql b/src/test/mb/sql/utf8.sql new file mode 100644 index 0000000..e722d3d --- /dev/null +++ b/src/test/mb/sql/utf8.sql @@ -0,0 +1,19 @@ +drop table 閮蝞璈刻; +create table 閮蝞璈刻 (刻 text, 憿喋潦 varchar, 1A char(16)); +create index 閮蝞璈刻index1 on 閮蝞璈刻 using btree (刻); +create index 閮蝞璈刻index2 on 閮蝞璈刻 using hash (憿喋潦); +insert into 閮蝞璈刻 values('喋喋乓潦踴嫘研','璈A01銝'); +insert into 閮蝞璈刻 values('喋喋乓潦踴啜押胯','B10銝'); +insert into 閮蝞璈刻 values('喋喋乓潦踴准啜押','鈭暢01銝'); +vacuum 閮蝞璈刻; +select * from 閮蝞璈刻; +select * from 閮蝞璈刻 where 憿喋潦 = '鈭暢01銝'; +select * from 閮蝞璈刻 where 憿喋潦 ~* '鈭漠01銝'; +select * from 閮蝞璈刻 where 憿喋潦 like '_Z01_'; +select * from 閮蝞璈刻 where 憿喋潦 like '_Z%'; +select * from 閮蝞璈刻 where 刻 ~ '喋喋乓潦璟財'; +select * from 閮蝞璈刻 where 刻 ~* '喋喋乓潦璟財'; +select *,character_length(刻) from 閮蝞璈刻; +select *,octet_length(刻) from 閮蝞璈刻; +select *,position('' in 刻) from 閮蝞璈刻; +select *,substring(刻 from 10 for 4) from 閮蝞璈刻; -- cgit v1.2.3