summaryrefslogtreecommitdiffstats
path: root/mysql-test/suite/funcs_2/include
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/funcs_2/include')
-rw-r--r--mysql-test/suite/funcs_2/include/check_charset.inc42
-rw-r--r--mysql-test/suite/funcs_2/include/check_charset_ucs2.inc22
-rw-r--r--mysql-test/suite/funcs_2/include/check_charset_utf8.inc21
3 files changed, 85 insertions, 0 deletions
diff --git a/mysql-test/suite/funcs_2/include/check_charset.inc b/mysql-test/suite/funcs_2/include/check_charset.inc
new file mode 100644
index 00000000..a6f827e1
--- /dev/null
+++ b/mysql-test/suite/funcs_2/include/check_charset.inc
@@ -0,0 +1,42 @@
+--disable_warnings
+DROP TABLE IF EXISTS test.t1;
+--enable_warnings
+
+eval SET NAMES $cset;
+
+let $std_cset= 1;
+
+if ($bin_cset)
+{
+ eval CREATE TABLE test.t1 (a VARCHAR(3) CHARACTER SET $cset) ENGINE=$engine_type CHARACTER SET $cset;
+ let $bin_cset= 0;
+ let $std_cset= 0;
+}
+if ($std_cset)
+{
+ eval CREATE TABLE test.t1 (a VARCHAR(3) CHARACTER SET $cset COLLATE $coll) ENGINE=$engine_type CHARACTER SET $cset COLLATE $coll;
+}
+
+--replace_column 3 # 4 # 5 # 6 # 7 # 8 # 9 # 10 # 11 # 12 # 13 # 14 # 16 # 17 # 18 # 19 #
+SHOW TABLE STATUS LIKE 't1';
+
+--disable_warnings
+--disable_query_log
+ALTER TABLE test.t1 ADD code VARCHAR(16) NOT NULL;
+let $1= 221;
+while ($1)
+{
+ eval INSERT IGNORE INTO test.t1 VALUES(CHAR(254-$1), HEX(254-$1));
+ dec $1;
+}
+DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
+DELETE FROM test.t1 WHERE a='?' AND code<>'3F';
+--enable_query_log
+--enable_warnings
+
+SELECT HEX(ASCII(a)) AS a_ascii, CHAR_LENGTH(a) AS a_len FROM test.t1 ORDER BY a, ORD(a);
+
+--disable_warnings
+DROP TABLE IF EXISTS test.t1;
+--enable_warnings
+
diff --git a/mysql-test/suite/funcs_2/include/check_charset_ucs2.inc b/mysql-test/suite/funcs_2/include/check_charset_ucs2.inc
new file mode 100644
index 00000000..4a3c21e1
--- /dev/null
+++ b/mysql-test/suite/funcs_2/include/check_charset_ucs2.inc
@@ -0,0 +1,22 @@
+--disable_warnings
+DROP TABLE IF EXISTS test.t1;
+DROP DATABASE test;
+eval CREATE DATABASE test CHARACTER SET utf8;
+USE test;
+--enable_warnings
+SET NAMES utf8;
+eval CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET utf8) ENGINE=$engine_type CHARACTER SET utf8;
+--replace_column 3 # 4 # 5 # 6 # 7 # 8 # 9 # 10 # 11 # 12 # 13 # 14 # 16 # 17 # 18 #
+SHOW TABLE STATUS LIKE 't1';
+
+--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
+eval LOAD DATA INFILE
+'$MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
+eval ALTER TABLE test.t1 CHANGE a a CHAR(4) CHARACTER SET $cset COLLATE $coll;
+DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
+
+SELECT HEX(ORD(a)) AS a_ord, CHAR_LENGTH(a) AS a_len FROM test.t1 ORDER BY a, ORD(a);
+
+--disable_warnings
+DROP TABLE IF EXISTS test.t1;
+--enable_warnings
diff --git a/mysql-test/suite/funcs_2/include/check_charset_utf8.inc b/mysql-test/suite/funcs_2/include/check_charset_utf8.inc
new file mode 100644
index 00000000..42cf38ee
--- /dev/null
+++ b/mysql-test/suite/funcs_2/include/check_charset_utf8.inc
@@ -0,0 +1,21 @@
+--disable_warnings
+DROP TABLE IF EXISTS test.t1;
+DROP DATABASE test;
+eval CREATE DATABASE test CHARACTER SET $cset;
+USE test;
+--enable_warnings
+#eval SET NAMES $cset;
+eval CREATE TABLE test.t1 (a CHAR(4) CHARACTER SET $cset COLLATE $coll) ENGINE=$engine_type CHARACTER SET $cset COLLATE $coll;
+--replace_column 3 # 4 # 5 # 6 # 7 # 8 # 9 # 10 # 11 # 12 # 13 # 14 # 16 # 17 # 18 #
+SHOW TABLE STATUS LIKE 't1';
+
+--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
+eval LOAD DATA INFILE
+'$MYSQL_TEST_DIR/suite/funcs_2/data/charset_utf8.txt' INTO TABLE test.t1;
+DELETE FROM test.t1 WHERE CHAR_LENGTH(a) <> 1;
+
+SELECT HEX(ORD(a)) AS a_ord, CHAR_LENGTH(a) AS a_len FROM test.t1 ORDER BY a, ORD(a);
+
+--disable_warnings
+DROP TABLE IF EXISTS test.t1;
+--enable_warnings