diff options
Diffstat (limited to 'mysql-test/suite/funcs_2/include')
-rw-r--r-- | mysql-test/suite/funcs_2/include/check_charset.inc | 42 | ||||
-rw-r--r-- | mysql-test/suite/funcs_2/include/check_charset_ucs2.inc | 22 | ||||
-rw-r--r-- | mysql-test/suite/funcs_2/include/check_charset_utf8.inc | 21 |
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 |