diff options
author | unknown <bell@laptop.sanja.is.com.ua> | 2003-10-05 21:09:50 +0300 |
---|---|---|
committer | unknown <bell@laptop.sanja.is.com.ua> | 2003-10-05 21:09:50 +0300 |
commit | ff518b9893097e6282b9dc71f6562b91c2df5bbe (patch) | |
tree | 5c9f92fbdcbb92b499a3cc51f7ff58b62a2bdc2f /mysql-test/t/derived.test | |
parent | d52e95164daae07a699bd5485a5c2dd0cbfb5404 (diff) | |
download | mariadb-git-ff518b9893097e6282b9dc71f6562b91c2df5bbe.tar.gz |
prohibited using derived tables in UPDATE command (BUG#1477)
fixed incorrect table name in test
mysql-test/r/derived.result:
fixed incorrect table name in test
new test of derived table
mysql-test/t/derived.test:
fixed incorrect table name in test
new test of derived table
sql/sql_yacc.yy:
prohibited using derived tables in UPDATE command
Diffstat (limited to 'mysql-test/t/derived.test')
-rw-r--r-- | mysql-test/t/derived.test | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/mysql-test/t/derived.test b/mysql-test/t/derived.test index 39e61b7caaa..fcaf14a4fa2 100644 --- a/mysql-test/t/derived.test +++ b/mysql-test/t/derived.test @@ -99,13 +99,26 @@ SELECT a.x FROM (SELECT 1 AS x) AS a HAVING a.x = 1; # Test for select if database is not selected. # # Connect without a database -create table a1 select 1 as a; +create table t1 select 1 as a; connect (con1,localhost,mysqltest_1,,*NO-ONE*,$MASTER_MYPORT,master.sock); connection con1; --error 1046 -select 2 as a from (select * from a1) b; +select 2 as a from (select * from t1) b; use test; -select 2 as a from (select * from a1) b; -drop table a1; +select 2 as a from (select * from t1) b; +drop table t1; --error 1064 select mail_id, if(folder.f_description!='', folder.f_description, folder.f_name) as folder_name, date, address_id, phrase, address, subject from folder, (select mail.mail_id as mail_id, date_format(mail.h_date, '%b %e, %Y %h:%i') as date, mail.folder_id, sender.address_id as address_id, sender.phrase as phrase, sender.address as address, mail.h_subject as subject from mail left join mxa as mxa_sender on mail.mail_id=mxa_sender.mail_id and mxa_sender.type='from' left join address as sender on mxa_sender.address_id=sender.address_id mxa as mxa_recipient, address as recipient, where 1 and mail.mail_id=mxa_recipient.mail_id and mxa_recipient.address_id=recipient.address_id and mxa_recipient.type='to' and match(sender.phrase, sender.address, sender.comment) against ('jeremy' in boolean mode) and match(recipient.phrase, recipient.address, recipient.comment) against ('monty' in boolean mode) order by mail.h_date desc limit 0, 25 ) as query where query.folder_id=folder.folder_id; + +# +# UPDATE/DELETE/INSERT of derived tables +# +create table t1 (a int); +insert into t1 values (1),(2),(3); +-- error 1149 +update (select * from t1) as t1 set a = 5; +-- error 1149 +delete from (select * from t1); +-- error 1149 +insert into (select * from t1) values (5); +drop table t1; |