mirror of
https://github.com/MariaDB/server.git
synced 2025-01-22 23:04:20 +01:00
456 lines
13 KiB
Text
456 lines
13 KiB
Text
|
--source include/have_ujis.inc
|
|||
|
|
|||
|
--disable_warnings
|
|||
|
DROP TABLE IF EXISTS t1;
|
|||
|
DROP TABLE IF EXISTS t2;
|
|||
|
DROP TABLE IF EXISTS t3;
|
|||
|
DROP TABLE IF EXISTS t4;
|
|||
|
--enable_warnings
|
|||
|
|
|||
|
#
|
|||
|
# Test Prepares Statement with Japanese character in ujis encoding
|
|||
|
#
|
|||
|
|
|||
|
SET NAMES ujis;
|
|||
|
SET character_set_database = ujis;
|
|||
|
|
|||
|
### Test InnoDB ###
|
|||
|
CREATE TABLE t1(c1 char(3)) DEFAULT CHARSET = ujis ENGINE = InnoDB;
|
|||
|
CREATE TABLE t2(c1 char(3)) DEFAULT CHARSET = ujis ENGINE = InnoDB;
|
|||
|
CREATE TABLE t3(
|
|||
|
`<60><>` char(1),
|
|||
|
`<60><>` char(1),
|
|||
|
`<60><><EFBFBD>` char(1)
|
|||
|
)DEFAULT CHARSET = ujis ENGINE = InnoDB;
|
|||
|
CREATE TABLE t4(c1 char(1)) DEFAULT CHARSET = ujis ENGINE = InnoDB;
|
|||
|
|
|||
|
INSERT INTO t1 VALUES ('xxx');
|
|||
|
INSERT INTO t2 VALUES ('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
|||
|
INSERT INTO t3 VALUES ('x','x','x'),('x','x','x'),('y','y','y'),('y','y','y'),('z','z','z'),('z','z','z');
|
|||
|
INSERT INTO t4 VALUES ('<27><>'),('<27><>'),('<27><><EFBFBD>');
|
|||
|
|
|||
|
# Japanese parameter for column name
|
|||
|
# the parameter for stmt is not interpreted as column name
|
|||
|
PREPARE stmt1 FROM 'SELECT ? FROM t3';
|
|||
|
PREPARE stmt2 FROM 'SELECT * FROM t3 ORDER BY ?';
|
|||
|
PREPARE stmt3 FROM 'SELECT COUNT(*) FROM t3 GROUP BY ?';
|
|||
|
# Japanese parameter for function argument
|
|||
|
PREPARE stmt4 FROM 'SELECT CHAR_LENGTH(?)';
|
|||
|
PREPARE stmt5 FROM 'SELECT CHARSET(?)';
|
|||
|
PREPARE stmt6 FROM 'SELECT INSERT(c1,1,1,?) FROM t1';
|
|||
|
PREPARE stmt7 FROM 'SELECT INSTR(c1,?) FROM t2';
|
|||
|
PREPARE stmt8 FROM 'SELECT LOCATE(?,c1) FROM t2';
|
|||
|
PREPARE stmt9 FROM 'SELECT LPAD(c1,9,?) FROM t1';
|
|||
|
PREPARE stmt10 FROM 'SELECT REPLACE(c1,?,\'x\') FROM t2';
|
|||
|
PREPARE stmt11 FROM 'SELECT REPLACE(c1,\'x\',?) FROM t1';
|
|||
|
PREPARE stmt12 FROM 'SELECT RPAD(c1,9,?) FROM t1';
|
|||
|
# Japanese parameter for UPDATE
|
|||
|
PREPARE stmt13 FROM 'UPDATE t4 SET c1=\'x\' WHERE c1=?';
|
|||
|
PREPARE stmt14 FROM 'UPDATE t4 SET c1=? WHERE c1=\'x\'';
|
|||
|
|
|||
|
## Test jisx0201 ##
|
|||
|
SET @arg = '<27><>';
|
|||
|
EXECUTE stmt1 USING @arg;
|
|||
|
EXECUTE stmt2 USING @arg;
|
|||
|
EXECUTE stmt3 USING @arg;
|
|||
|
EXECUTE stmt4 USING @arg;
|
|||
|
EXECUTE stmt5 USING @arg;
|
|||
|
EXECUTE stmt6 USING @arg;
|
|||
|
EXECUTE stmt7 USING @arg;
|
|||
|
EXECUTE stmt8 USING @arg;
|
|||
|
EXECUTE stmt9 USING @arg;
|
|||
|
EXECUTE stmt10 USING @arg;
|
|||
|
EXECUTE stmt11 USING @arg;
|
|||
|
EXECUTE stmt12 USING @arg;
|
|||
|
EXECUTE stmt13 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
EXECUTE stmt14 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
|
|||
|
## Test jisx0208 ##
|
|||
|
SET @arg = '<27><>';
|
|||
|
EXECUTE stmt1 USING @arg;
|
|||
|
EXECUTE stmt2 USING @arg;
|
|||
|
EXECUTE stmt3 USING @arg;
|
|||
|
EXECUTE stmt4 USING @arg;
|
|||
|
EXECUTE stmt5 USING @arg;
|
|||
|
EXECUTE stmt6 USING @arg;
|
|||
|
EXECUTE stmt7 USING @arg;
|
|||
|
EXECUTE stmt8 USING @arg;
|
|||
|
EXECUTE stmt9 USING @arg;
|
|||
|
EXECUTE stmt10 USING @arg;
|
|||
|
EXECUTE stmt11 USING @arg;
|
|||
|
EXECUTE stmt12 USING @arg;
|
|||
|
EXECUTE stmt13 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
EXECUTE stmt14 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
|
|||
|
# Test jisx0212 ##
|
|||
|
SET @arg = '<27><><EFBFBD>';
|
|||
|
EXECUTE stmt1 USING @arg;
|
|||
|
EXECUTE stmt2 USING @arg;
|
|||
|
EXECUTE stmt3 USING @arg;
|
|||
|
EXECUTE stmt4 USING @arg;
|
|||
|
EXECUTE stmt5 USING @arg;
|
|||
|
EXECUTE stmt6 USING @arg;
|
|||
|
EXECUTE stmt7 USING @arg;
|
|||
|
EXECUTE stmt8 USING @arg;
|
|||
|
EXECUTE stmt9 USING @arg;
|
|||
|
EXECUTE stmt10 USING @arg;
|
|||
|
EXECUTE stmt11 USING @arg;
|
|||
|
EXECUTE stmt12 USING @arg;
|
|||
|
EXECUTE stmt13 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
EXECUTE stmt14 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
|
|||
|
DEALLOCATE PREPARE stmt1;
|
|||
|
DEALLOCATE PREPARE stmt2;
|
|||
|
DEALLOCATE PREPARE stmt3;
|
|||
|
DEALLOCATE PREPARE stmt4;
|
|||
|
DEALLOCATE PREPARE stmt5;
|
|||
|
DEALLOCATE PREPARE stmt6;
|
|||
|
DEALLOCATE PREPARE stmt7;
|
|||
|
DEALLOCATE PREPARE stmt8;
|
|||
|
DEALLOCATE PREPARE stmt9;
|
|||
|
DEALLOCATE PREPARE stmt10;
|
|||
|
DEALLOCATE PREPARE stmt11;
|
|||
|
DEALLOCATE PREPARE stmt12;
|
|||
|
DEALLOCATE PREPARE stmt13;
|
|||
|
DEALLOCATE PREPARE stmt14;
|
|||
|
|
|||
|
DROP TABLE t1;
|
|||
|
DROP TABLE t2;
|
|||
|
DROP TABLE t3;
|
|||
|
DROP TABLE t4;
|
|||
|
|
|||
|
### Test MyISAM ###
|
|||
|
CREATE TABLE t1(c1 char(3)) DEFAULT CHARSET = ujis ENGINE = MyISAM;
|
|||
|
CREATE TABLE t2(c1 char(3)) DEFAULT CHARSET = ujis ENGINE = MyISAM;
|
|||
|
CREATE TABLE t3(
|
|||
|
`<60><>` char(1),
|
|||
|
`<60><>` char(1),
|
|||
|
`<60><><EFBFBD>` char(1)
|
|||
|
)DEFAULT CHARSET = ujis ENGINE = MyISAM;
|
|||
|
CREATE TABLE t4(c1 char(1)) DEFAULT CHARSET = ujis ENGINE = MyISAM;
|
|||
|
|
|||
|
INSERT INTO t1 VALUES ('xxx');
|
|||
|
INSERT INTO t2 VALUES ('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
|||
|
INSERT INTO t3 VALUES ('x','x','x'),('x','x','x'),('y','y','y'),('y','y','y'),('z','z','z'),('z','z','z');
|
|||
|
INSERT INTO t4 VALUES ('<27><>'),('<27><>'),('<27><><EFBFBD>' );
|
|||
|
|
|||
|
# Japanese parameter for column name
|
|||
|
PREPARE stmt1 FROM 'SELECT ? FROM t3';
|
|||
|
PREPARE stmt2 FROM 'SELECT * FROM t3 ORDER BY ?';
|
|||
|
PREPARE stmt3 FROM 'SELECT COUNT(*) FROM t3 GROUP BY ?';
|
|||
|
# Japanese parameter for function argument
|
|||
|
PREPARE stmt4 FROM 'SELECT CHAR_LENGTH(?)';
|
|||
|
PREPARE stmt5 FROM 'SELECT CHARSET(?)';
|
|||
|
PREPARE stmt6 FROM 'SELECT INSERT(c1,1,1,?) FROM t1';
|
|||
|
PREPARE stmt7 FROM 'SELECT INSTR(c1,?) FROM t2';
|
|||
|
PREPARE stmt8 FROM 'SELECT LOCATE(?,c1) FROM t2';
|
|||
|
PREPARE stmt9 FROM 'SELECT LPAD(c1,9,?) FROM t1';
|
|||
|
PREPARE stmt10 FROM 'SELECT REPLACE(c1,?,\'x\') FROM t2';
|
|||
|
PREPARE stmt11 FROM 'SELECT REPLACE(c1,\'x\',?) FROM t1';
|
|||
|
PREPARE stmt12 FROM 'SELECT RPAD(c1,9,?) FROM t1';
|
|||
|
# Japanese parameter for UPDATE
|
|||
|
PREPARE stmt13 FROM 'UPDATE t4 SET c1=\'x\' WHERE c1=?';
|
|||
|
PREPARE stmt14 FROM 'UPDATE t4 SET c1=? WHERE c1=\'x\'';
|
|||
|
|
|||
|
## Test jisx0201 ##
|
|||
|
SET @arg = '<27><>';
|
|||
|
EXECUTE stmt1 USING @arg;
|
|||
|
EXECUTE stmt2 USING @arg;
|
|||
|
EXECUTE stmt3 USING @arg;
|
|||
|
EXECUTE stmt4 USING @arg;
|
|||
|
EXECUTE stmt5 USING @arg;
|
|||
|
EXECUTE stmt6 USING @arg;
|
|||
|
EXECUTE stmt7 USING @arg;
|
|||
|
EXECUTE stmt8 USING @arg;
|
|||
|
EXECUTE stmt9 USING @arg;
|
|||
|
EXECUTE stmt10 USING @arg;
|
|||
|
EXECUTE stmt11 USING @arg;
|
|||
|
EXECUTE stmt12 USING @arg;
|
|||
|
EXECUTE stmt13 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
EXECUTE stmt14 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
|
|||
|
## Test jisx0208 ##
|
|||
|
SET @arg = '<27><>';
|
|||
|
EXECUTE stmt1 USING @arg;
|
|||
|
EXECUTE stmt2 USING @arg;
|
|||
|
EXECUTE stmt3 USING @arg;
|
|||
|
EXECUTE stmt4 USING @arg;
|
|||
|
EXECUTE stmt5 USING @arg;
|
|||
|
EXECUTE stmt6 USING @arg;
|
|||
|
EXECUTE stmt7 USING @arg;
|
|||
|
EXECUTE stmt8 USING @arg;
|
|||
|
EXECUTE stmt9 USING @arg;
|
|||
|
EXECUTE stmt10 USING @arg;
|
|||
|
EXECUTE stmt11 USING @arg;
|
|||
|
EXECUTE stmt12 USING @arg;
|
|||
|
EXECUTE stmt13 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
EXECUTE stmt14 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
|
|||
|
## Test jisx0212 ##
|
|||
|
SET @arg = '<27><><EFBFBD>';
|
|||
|
EXECUTE stmt1 USING @arg;
|
|||
|
EXECUTE stmt2 USING @arg;
|
|||
|
EXECUTE stmt3 USING @arg;
|
|||
|
EXECUTE stmt4 USING @arg;
|
|||
|
EXECUTE stmt5 USING @arg;
|
|||
|
EXECUTE stmt6 USING @arg;
|
|||
|
EXECUTE stmt7 USING @arg;
|
|||
|
EXECUTE stmt8 USING @arg;
|
|||
|
EXECUTE stmt9 USING @arg;
|
|||
|
EXECUTE stmt10 USING @arg;
|
|||
|
EXECUTE stmt11 USING @arg;
|
|||
|
EXECUTE stmt12 USING @arg;
|
|||
|
EXECUTE stmt13 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
EXECUTE stmt14 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
|
|||
|
DEALLOCATE PREPARE stmt1;
|
|||
|
DEALLOCATE PREPARE stmt2;
|
|||
|
DEALLOCATE PREPARE stmt3;
|
|||
|
DEALLOCATE PREPARE stmt4;
|
|||
|
DEALLOCATE PREPARE stmt5;
|
|||
|
DEALLOCATE PREPARE stmt6;
|
|||
|
DEALLOCATE PREPARE stmt7;
|
|||
|
DEALLOCATE PREPARE stmt8;
|
|||
|
DEALLOCATE PREPARE stmt9;
|
|||
|
DEALLOCATE PREPARE stmt10;
|
|||
|
DEALLOCATE PREPARE stmt11;
|
|||
|
DEALLOCATE PREPARE stmt12;
|
|||
|
DEALLOCATE PREPARE stmt13;
|
|||
|
DEALLOCATE PREPARE stmt14;
|
|||
|
|
|||
|
DROP TABLE t1;
|
|||
|
DROP TABLE t2;
|
|||
|
DROP TABLE t3;
|
|||
|
DROP TABLE t4;
|
|||
|
|
|||
|
### Test HEAP ###
|
|||
|
CREATE TABLE t1(c1 char(3)) DEFAULT CHARSET = ujis ENGINE = HEAP;
|
|||
|
CREATE TABLE t2(c1 char(3)) DEFAULT CHARSET = ujis ENGINE = HEAP;
|
|||
|
CREATE TABLE t3(
|
|||
|
`<60><>` char(1),
|
|||
|
`<60><>` char(1),
|
|||
|
`<60><><EFBFBD>` char(1)
|
|||
|
)DEFAULT CHARSET = ujis ENGINE = HEAP;
|
|||
|
CREATE TABLE t4(c1 char(1)) DEFAULT CHARSET = ujis ENGINE =HEAP;
|
|||
|
|
|||
|
INSERT INTO t1 VALUES ('xxx');
|
|||
|
INSERT INTO t2 VALUES ('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
|||
|
INSERT INTO t3 VALUES ('x','x','x'),('x','x','x'),('y','y','y'),('y','y','y'),('z','z','z'),('z','z','z');
|
|||
|
INSERT INTO t4 VALUES ('<27><>'),('<27><>'),('<27><><EFBFBD>' );
|
|||
|
|
|||
|
# Japanese parameter for column name
|
|||
|
PREPARE stmt1 FROM 'SELECT ? FROM t3';
|
|||
|
PREPARE stmt2 FROM 'SELECT * FROM t3 ORDER BY ?';
|
|||
|
PREPARE stmt3 FROM 'SELECT COUNT(*) FROM t3 GROUP BY ?';
|
|||
|
# Japanese parameter for function argument
|
|||
|
PREPARE stmt4 FROM 'SELECT CHAR_LENGTH(?)';
|
|||
|
PREPARE stmt5 FROM 'SELECT CHARSET(?)';
|
|||
|
PREPARE stmt6 FROM 'SELECT INSERT(c1,1,1,?) FROM t1';
|
|||
|
PREPARE stmt7 FROM 'SELECT INSTR(c1,?) FROM t2';
|
|||
|
PREPARE stmt8 FROM 'SELECT LOCATE(?,c1) FROM t2';
|
|||
|
PREPARE stmt9 FROM 'SELECT LPAD(c1,9,?) FROM t1';
|
|||
|
PREPARE stmt10 FROM 'SELECT REPLACE(c1,?,\'x\') FROM t2';
|
|||
|
PREPARE stmt11 FROM 'SELECT REPLACE(c1,\'x\',?) FROM t1';
|
|||
|
PREPARE stmt12 FROM 'SELECT RPAD(c1,9,?) FROM t1';
|
|||
|
# Japanese parameter for UPDATE
|
|||
|
PREPARE stmt13 FROM 'UPDATE t4 SET c1=\'x\' WHERE c1=?';
|
|||
|
PREPARE stmt14 FROM 'UPDATE t4 SET c1=? WHERE c1=\'x\'';
|
|||
|
|
|||
|
## Test jisx0201 ##
|
|||
|
SET @arg = '<27><>';
|
|||
|
EXECUTE stmt1 USING @arg;
|
|||
|
EXECUTE stmt2 USING @arg;
|
|||
|
EXECUTE stmt3 USING @arg;
|
|||
|
EXECUTE stmt4 USING @arg;
|
|||
|
EXECUTE stmt5 USING @arg;
|
|||
|
EXECUTE stmt6 USING @arg;
|
|||
|
EXECUTE stmt7 USING @arg;
|
|||
|
EXECUTE stmt8 USING @arg;
|
|||
|
EXECUTE stmt9 USING @arg;
|
|||
|
EXECUTE stmt10 USING @arg;
|
|||
|
EXECUTE stmt11 USING @arg;
|
|||
|
EXECUTE stmt12 USING @arg;
|
|||
|
EXECUTE stmt13 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
EXECUTE stmt14 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
|
|||
|
## Test jisx0208 ##
|
|||
|
SET @arg = '<27><>';
|
|||
|
EXECUTE stmt1 USING @arg;
|
|||
|
EXECUTE stmt2 USING @arg;
|
|||
|
EXECUTE stmt3 USING @arg;
|
|||
|
EXECUTE stmt4 USING @arg;
|
|||
|
EXECUTE stmt5 USING @arg;
|
|||
|
EXECUTE stmt6 USING @arg;
|
|||
|
EXECUTE stmt7 USING @arg;
|
|||
|
EXECUTE stmt8 USING @arg;
|
|||
|
EXECUTE stmt9 USING @arg;
|
|||
|
EXECUTE stmt10 USING @arg;
|
|||
|
EXECUTE stmt11 USING @arg;
|
|||
|
EXECUTE stmt12 USING @arg;
|
|||
|
EXECUTE stmt13 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
EXECUTE stmt14 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
|
|||
|
## Test jisx0212 ##
|
|||
|
SET @arg = '<27><><EFBFBD>';
|
|||
|
EXECUTE stmt1 USING @arg;
|
|||
|
EXECUTE stmt2 USING @arg;
|
|||
|
EXECUTE stmt3 USING @arg;
|
|||
|
EXECUTE stmt4 USING @arg;
|
|||
|
EXECUTE stmt5 USING @arg;
|
|||
|
EXECUTE stmt6 USING @arg;
|
|||
|
EXECUTE stmt7 USING @arg;
|
|||
|
EXECUTE stmt8 USING @arg;
|
|||
|
EXECUTE stmt9 USING @arg;
|
|||
|
EXECUTE stmt10 USING @arg;
|
|||
|
EXECUTE stmt11 USING @arg;
|
|||
|
EXECUTE stmt12 USING @arg;
|
|||
|
EXECUTE stmt13 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
EXECUTE stmt14 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
|
|||
|
DEALLOCATE PREPARE stmt1;
|
|||
|
DEALLOCATE PREPARE stmt2;
|
|||
|
DEALLOCATE PREPARE stmt3;
|
|||
|
DEALLOCATE PREPARE stmt4;
|
|||
|
DEALLOCATE PREPARE stmt5;
|
|||
|
DEALLOCATE PREPARE stmt6;
|
|||
|
DEALLOCATE PREPARE stmt7;
|
|||
|
DEALLOCATE PREPARE stmt8;
|
|||
|
DEALLOCATE PREPARE stmt9;
|
|||
|
DEALLOCATE PREPARE stmt10;
|
|||
|
DEALLOCATE PREPARE stmt11;
|
|||
|
DEALLOCATE PREPARE stmt12;
|
|||
|
DEALLOCATE PREPARE stmt13;
|
|||
|
DEALLOCATE PREPARE stmt14;
|
|||
|
|
|||
|
DROP TABLE t1;
|
|||
|
DROP TABLE t2;
|
|||
|
DROP TABLE t3;
|
|||
|
DROP TABLE t4;
|
|||
|
|
|||
|
### Test BDB ###
|
|||
|
CREATE TABLE t1(c1 char(3)) DEFAULT CHARSET = ujis ENGINE = BDB;
|
|||
|
CREATE TABLE t2(c1 char(3)) DEFAULT CHARSET = ujis ENGINE = BDB;
|
|||
|
CREATE TABLE t3(
|
|||
|
`<60><>` char(1),
|
|||
|
`<60><>` char(1),
|
|||
|
`<60><><EFBFBD>` char(1)
|
|||
|
)DEFAULT CHARSET = ujis ENGINE = BDB;
|
|||
|
CREATE TABLE t4(c1 char(1)) DEFAULT CHARSET = ujis ENGINE = BDB;
|
|||
|
INSERT INTO t1 VALUES ('xxx');
|
|||
|
INSERT INTO t2 VALUES ('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
|||
|
INSERT INTO t3 VALUES ('x','x','x'),('x','x','x'),('y','y','y'),('y','y','y'),('z','z','z'),('z','z','z');
|
|||
|
INSERT INTO t4 VALUES ('<27><>'),('<27><>'),('<27><><EFBFBD>' );
|
|||
|
|
|||
|
# Japanese parameter for column name
|
|||
|
PREPARE stmt1 FROM 'SELECT ? FROM t3';
|
|||
|
PREPARE stmt2 FROM 'SELECT * FROM t3 ORDER BY ?';
|
|||
|
PREPARE stmt3 FROM 'SELECT COUNT(*) FROM t3 GROUP BY ?';
|
|||
|
# Japanese parameter for function argument
|
|||
|
PREPARE stmt4 FROM 'SELECT CHAR_LENGTH(?)';
|
|||
|
PREPARE stmt5 FROM 'SELECT CHARSET(?)';
|
|||
|
PREPARE stmt6 FROM 'SELECT INSERT(c1,1,1,?) FROM t1';
|
|||
|
PREPARE stmt7 FROM 'SELECT INSTR(c1,?) FROM t2';
|
|||
|
PREPARE stmt8 FROM 'SELECT LOCATE(?,c1) FROM t2';
|
|||
|
PREPARE stmt9 FROM 'SELECT LPAD(c1,9,?) FROM t1';
|
|||
|
PREPARE stmt10 FROM 'SELECT REPLACE(c1,?,\'x\') FROM t2';
|
|||
|
PREPARE stmt11 FROM 'SELECT REPLACE(c1,\'x\',?) FROM t1';
|
|||
|
PREPARE stmt12 FROM 'SELECT RPAD(c1,9,?) FROM t1';
|
|||
|
# Japanese parameter for UPDATE
|
|||
|
PREPARE stmt13 FROM 'UPDATE t4 SET c1=\'x\' WHERE c1=?';
|
|||
|
PREPARE stmt14 FROM 'UPDATE t4 SET c1=? WHERE c1=\'x\'';
|
|||
|
|
|||
|
## Test jisx0201 ##
|
|||
|
SET @arg = '<27><>';
|
|||
|
EXECUTE stmt1 USING @arg;
|
|||
|
EXECUTE stmt2 USING @arg;
|
|||
|
EXECUTE stmt3 USING @arg;
|
|||
|
EXECUTE stmt4 USING @arg;
|
|||
|
EXECUTE stmt5 USING @arg;
|
|||
|
EXECUTE stmt6 USING @arg;
|
|||
|
EXECUTE stmt7 USING @arg;
|
|||
|
EXECUTE stmt8 USING @arg;
|
|||
|
EXECUTE stmt9 USING @arg;
|
|||
|
EXECUTE stmt10 USING @arg;
|
|||
|
EXECUTE stmt11 USING @arg;
|
|||
|
EXECUTE stmt12 USING @arg;
|
|||
|
EXECUTE stmt13 USING @arg;
|
|||
|
SELECT * FROM t3;
|
|||
|
EXECUTE stmt14 USING @arg;
|
|||
|
SELECT * FROM t3;
|
|||
|
|
|||
|
## Test jisx0208 ##
|
|||
|
SET @arg = '<27><>';
|
|||
|
EXECUTE stmt1 USING @arg;
|
|||
|
EXECUTE stmt2 USING @arg;
|
|||
|
EXECUTE stmt3 USING @arg;
|
|||
|
EXECUTE stmt4 USING @arg;
|
|||
|
EXECUTE stmt5 USING @arg;
|
|||
|
EXECUTE stmt6 USING @arg;
|
|||
|
EXECUTE stmt7 USING @arg;
|
|||
|
EXECUTE stmt8 USING @arg;
|
|||
|
EXECUTE stmt9 USING @arg;
|
|||
|
EXECUTE stmt10 USING @arg;
|
|||
|
EXECUTE stmt11 USING @arg;
|
|||
|
EXECUTE stmt12 USING @arg;
|
|||
|
EXECUTE stmt13 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
EXECUTE stmt14 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
|
|||
|
##Test jisx0212 ##
|
|||
|
SET @arg = '<27><><EFBFBD>';
|
|||
|
EXECUTE stmt1 USING @arg;
|
|||
|
EXECUTE stmt2 USING @arg;
|
|||
|
EXECUTE stmt3 USING @arg;
|
|||
|
EXECUTE stmt4 USING @arg;
|
|||
|
EXECUTE stmt5 USING @arg;
|
|||
|
EXECUTE stmt6 USING @arg;
|
|||
|
EXECUTE stmt7 USING @arg;
|
|||
|
EXECUTE stmt8 USING @arg;
|
|||
|
EXECUTE stmt9 USING @arg;
|
|||
|
EXECUTE stmt10 USING @arg;
|
|||
|
EXECUTE stmt11 USING @arg;
|
|||
|
EXECUTE stmt12 USING @arg;
|
|||
|
EXECUTE stmt13 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
EXECUTE stmt14 USING @arg;
|
|||
|
SELECT * FROM t4;
|
|||
|
|
|||
|
DEALLOCATE PREPARE stmt1;
|
|||
|
DEALLOCATE PREPARE stmt2;
|
|||
|
DEALLOCATE PREPARE stmt3;
|
|||
|
DEALLOCATE PREPARE stmt4;
|
|||
|
DEALLOCATE PREPARE stmt5;
|
|||
|
DEALLOCATE PREPARE stmt6;
|
|||
|
DEALLOCATE PREPARE stmt7;
|
|||
|
DEALLOCATE PREPARE stmt8;
|
|||
|
DEALLOCATE PREPARE stmt9;
|
|||
|
DEALLOCATE PREPARE stmt10;
|
|||
|
DEALLOCATE PREPARE stmt11;
|
|||
|
DEALLOCATE PREPARE stmt12;
|
|||
|
DEALLOCATE PREPARE stmt13;
|
|||
|
DEALLOCATE PREPARE stmt14;
|
|||
|
|
|||
|
DROP TABLE t1;
|
|||
|
DROP TABLE t2;
|
|||
|
DROP TABLE t3;
|
|||
|
DROP TABLE t4;
|