1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00

Fix SHOW CREATE VIEW to handle ANSI_QUOTES mode. (Bug #6903)

mysql-test/r/sql_mode.result:
  Update results
mysql-test/r/view.result:
  Update results
mysql-test/t/sql_mode.test:
  Add new regression tests
sql/sql_show.cc:
  Fix SHOW CREATE VIEW to honor ANSI_QUOTES mode.
This commit is contained in:
unknown
2005-06-15 16:27:41 -07:00
parent fc465d1497
commit ed483fcd21
4 changed files with 83 additions and 3 deletions

View File

@ -189,4 +189,38 @@ SET @@SQL_MODE='';
SELECT 'a\\b', 'a\\\"b', 'a''\\b', 'a''\\\"b';
SELECT "a\\b", "a\\\'b", "a""\\b", "a""\\\'b";
#
# Bug #6903: ANSI_QUOTES does not come into play with SHOW CREATE FUNCTION
# or PROCEDURE because it displays the SQL_MODE used to create the routine.
#
SET @@SQL_MODE='';
create function `foo` () returns int return 5;
show create function `foo`;
SET @@SQL_MODE='ANSI_QUOTES';
show create function `foo`;
drop function `foo`;
create function `foo` () returns int return 5;
show create function `foo`;
SET @@SQL_MODE='';
show create function `foo`;
drop function `foo`;
#
# Bug #6903: ANSI_QUOTES should have effect for SHOW CREATE VIEW (Bug #6903)
#
SET @@SQL_MODE='';
create table t1 (a int);
create table t2 (a int);
create view v1 as select a from t1;
show create view v1;
SET @@SQL_MODE='ANSI_QUOTES';
show create view v1;
# Test a view with a subselect, which will get shown incorrectly without
# thd->lex->view_prepare_mode set properly.
create view v2 as select a from t2 where a in (select a from v1);
drop view v2, v1;
drop table t1, t2;
SET @@SQL_MODE=@OLD_SQL_MODE;