diff options
Diffstat (limited to 'mysql-test/suite/engines/funcs/t/sq_error.test')
-rw-r--r-- | mysql-test/suite/engines/funcs/t/sq_error.test | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/mysql-test/suite/engines/funcs/t/sq_error.test b/mysql-test/suite/engines/funcs/t/sq_error.test new file mode 100644 index 00000000000..a9b72008c74 --- /dev/null +++ b/mysql-test/suite/engines/funcs/t/sq_error.test @@ -0,0 +1,83 @@ +--disable_warnings +DROP TABLE IF EXISTS t1; +--enable_warnings +--disable_warnings +DROP TABLE IF EXISTS t2; +--enable_warnings +CREATE TABLE t1 (c1 INT, c2 CHAR(100),c3 FLOAT); +INSERT INTO t1 VALUES (null,null,0.0); +INSERT INTO t1 VALUES (1,'',1.0); +INSERT INTO t1 VALUES (2,'abcde',2.0); +INSERT INTO t1 VALUES (100,'abcdefghij',3.0); +CREATE TABLE t2 (c1 INT, c2 VARCHAR(100)); +INSERT INTO t2 VALUES (1,'abcde'); +INSERT INTO t2 VALUES (2,'abcde'); +--error 1235 +SELECT * FROM t1 WHERE c2 IN (SELECT c2 FROM t2 ORDER BY c1 LIMIT 1) +--error 1241 +SELECT (SELECT c1, c2 FROM t2) FROM t1; +--error 1242 +SELECT * FROM t1 WHERE c1 = (SELECT c1 FROM t2); +UPDATE t1 SET c2 = (SELECT MAX(c1) FROM t2); +--error 1093 +UPDATE t1 SET c1 = (SELECT MAX(c1) FROM t1); +DROP TABLE t1; +DROP TABLE t2; +CREATE TABLE t1 (c1 INT, c2 VARCHAR(100),c3 FLOAT); +INSERT INTO t1 VALUES (null,null,0.0); +INSERT INTO t1 VALUES (1,'',1.0); +INSERT INTO t1 VALUES (2,'abcde',2.0); +INSERT INTO t1 VALUES (100,'abcdefghij',3.0); +CREATE TABLE t2 (c1 INT, c2 VARCHAR(100)); +INSERT INTO t2 VALUES (1,'abcde'); +INSERT INTO t2 VALUES (2,'abcde'); +--error 1235 +SELECT * FROM t1 WHERE c2 IN (SELECT c2 FROM t2 ORDER BY c1 LIMIT 1) +--error 1241 +SELECT (SELECT c1, c2 FROM t2) FROM t1; +--error 1242 +SELECT * FROM t1 WHERE c1 = (SELECT c1 FROM t2); +UPDATE t1 SET c2 = (SELECT MAX(c1) FROM t2); +--error 1093 +UPDATE t1 SET c1 = (SELECT MAX(c1) FROM t1); +DROP TABLE t1; +DROP TABLE t2; +CREATE TABLE t1 (c1 INT, c2 BINARY(100),c3 FLOAT); +INSERT INTO t1 VALUES (null,null,0.0); +INSERT INTO t1 VALUES (1,'',1.0); +INSERT INTO t1 VALUES (2,'abcde',2.0); +INSERT INTO t1 VALUES (100,'abcdefghij',3.0); +CREATE TABLE t2 (c1 INT, c2 VARCHAR(100)); +INSERT INTO t2 VALUES (1,'abcde'); +INSERT INTO t2 VALUES (2,'abcde'); +--error 1235 +SELECT * FROM t1 WHERE c2 IN (SELECT c2 FROM t2 ORDER BY c1 LIMIT 1) +--error 1241 +SELECT (SELECT c1, c2 FROM t2) FROM t1; +--error 1242 +SELECT * FROM t1 WHERE c1 = (SELECT c1 FROM t2); +UPDATE t1 SET c2 = (SELECT MAX(c1) FROM t2); +--error 1093 +UPDATE t1 SET c1 = (SELECT MAX(c1) FROM t1); +DROP TABLE t1; +DROP TABLE t2; +CREATE TABLE t1 (c1 INT, c2 VARBINARY(100),c3 FLOAT); +INSERT INTO t1 VALUES (null,null,0.0); +INSERT INTO t1 VALUES (1,'',1.0); +INSERT INTO t1 VALUES (2,'abcde',2.0); +INSERT INTO t1 VALUES (100,'abcdefghij',3.0); +CREATE TABLE t2 (c1 INT, c2 VARCHAR(100)); +INSERT INTO t2 VALUES (1,'abcde'); +INSERT INTO t2 VALUES (2,'abcde'); +--error 1235 +SELECT * FROM t1 WHERE c2 IN (SELECT c2 FROM t2 ORDER BY c1 LIMIT 1) +--error 1241 +SELECT (SELECT c1, c2 FROM t2) FROM t1; +--error 1242 +SELECT * FROM t1 WHERE c1 = (SELECT c1 FROM t2); +UPDATE t1 SET c2 = (SELECT MAX(c1) FROM t2); +--error 1093 +UPDATE t1 SET c1 = (SELECT MAX(c1) FROM t1); +DROP TABLE t1; +DROP TABLE t2; + |