summaryrefslogtreecommitdiffstats
path: root/src/test/mb/sql
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/mb/sql')
-rw-r--r--src/test/mb/sql/big5.sql20
-rw-r--r--src/test/mb/sql/euc_cn.sql19
-rw-r--r--src/test/mb/sql/euc_jp.sql19
-rw-r--r--src/test/mb/sql/euc_kr.sql19
-rw-r--r--src/test/mb/sql/euc_tw.sql20
-rw-r--r--src/test/mb/sql/gb18030.sql19
-rw-r--r--src/test/mb/sql/mule_internal.sql72
-rw-r--r--src/test/mb/sql/sjis.sql20
-rw-r--r--src/test/mb/sql/utf8.sql19
9 files changed, 227 insertions, 0 deletions
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 閮蝞璈刻;