diff options
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/r/view.result | 23 | ||||
-rw-r--r-- | mysql-test/t/view.test | 21 |
2 files changed, 44 insertions, 0 deletions
diff --git a/mysql-test/r/view.result b/mysql-test/r/view.result index d0b2675ebb2..36b27871c95 100644 --- a/mysql-test/r/view.result +++ b/mysql-test/r/view.result @@ -6624,5 +6624,28 @@ drop table procViewTable; use test; drop database bugTest; # +# MDEV-13436: PREPARE doesn't work as expected & throws errors but +# MySQL is working fine +# +create table t1 (a int); +insert into t1 values (1),(2); +SET @sql_query = " + CREATE VIEW v1 AS + SELECT * FROM ( + SELECT CASE WHEN 1 IN (SELECT a from t1 where a < 2) THEN TRUE END AS testcase + ) testalias +"; +PREPARE stmt FROM @sql_query; +EXECUTE stmt; +DEALLOCATE PREPARE stmt; +show create view v1; +View Create View character_set_client collation_connection +v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `testalias`.`testcase` AS `testcase` from (select case when 1 in (select `test`.`t1`.`a` from `test`.`t1` where `test`.`t1`.`a` < 2) then 1 end AS `testcase`) `testalias` latin1 latin1_swedish_ci +SELECT * FROM v1; +testcase +1 +drop view v1; +drop table t1; +# # End of 10.2 tests # diff --git a/mysql-test/t/view.test b/mysql-test/t/view.test index e2164e438dc..a9764bf0668 100644 --- a/mysql-test/t/view.test +++ b/mysql-test/t/view.test @@ -6345,5 +6345,26 @@ use test; drop database bugTest; --echo # +--echo # MDEV-13436: PREPARE doesn't work as expected & throws errors but +--echo # MySQL is working fine +--echo # + +create table t1 (a int); +insert into t1 values (1),(2); +SET @sql_query = " + CREATE VIEW v1 AS + SELECT * FROM ( + SELECT CASE WHEN 1 IN (SELECT a from t1 where a < 2) THEN TRUE END AS testcase + ) testalias +"; +PREPARE stmt FROM @sql_query; +EXECUTE stmt; +DEALLOCATE PREPARE stmt; +show create view v1; +SELECT * FROM v1; +drop view v1; +drop table t1; + +--echo # --echo # End of 10.2 tests --echo # |