mirror of
https://github.com/MariaDB/server.git
synced 2026-05-16 20:07:13 +02:00
Enable REPLACE ... SELECT in prepared statements.
mysql-test/include/ps_modify.inc: replace ... select now works. mysql-test/r/ps_2myisam.result: replace ... select now works. mysql-test/r/ps_3innodb.result: replace ... select now works. mysql-test/r/ps_4heap.result: replace ... select now works. mysql-test/r/ps_5merge.result: replace ... select now works. mysql-test/r/ps_6bdb.result: replace ... select now works. mysql-test/r/ps_7ndb.result: replace ... select now works. mysql-test/t/ps_7ndb.test: replace ... select now works. sql/sql_prepare.cc: Enable SQLCOM_REPLACE_SELECT: no need for any code changes but enable this SQLCOM in the switch.
This commit is contained in:
parent
6ca39e9603
commit
d46c7366eb
9 changed files with 24 additions and 9 deletions
|
|
@ -322,8 +322,11 @@ select a,b from t1 where a >= 1000 order by a ;
|
|||
delete from t1 where a >= 1000 ;
|
||||
|
||||
## replace
|
||||
--error 1295
|
||||
prepare stmt1 from ' replace into t1 (a,b) select 100, ''hundred'' ';
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
|
||||
|
||||
|
||||
## multi table statements
|
||||
|
|
|
|||
|
|
@ -1581,7 +1581,9 @@ a b
|
|||
1200 x1000_1updatedupdated
|
||||
delete from t1 where a >= 1000 ;
|
||||
prepare stmt1 from ' replace into t1 (a,b) select 100, ''hundred'' ';
|
||||
ERROR HY000: This command is not supported in the prepared statement protocol yet
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
test_sequence
|
||||
------ multi table tests ------
|
||||
delete from t1 ;
|
||||
|
|
|
|||
|
|
@ -1564,7 +1564,9 @@ a b
|
|||
1200 x1000_1updatedupdated
|
||||
delete from t1 where a >= 1000 ;
|
||||
prepare stmt1 from ' replace into t1 (a,b) select 100, ''hundred'' ';
|
||||
ERROR HY000: This command is not supported in the prepared statement protocol yet
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
test_sequence
|
||||
------ multi table tests ------
|
||||
delete from t1 ;
|
||||
|
|
|
|||
|
|
@ -1565,7 +1565,9 @@ a b
|
|||
1200 x1000_1updatedupdated
|
||||
delete from t1 where a >= 1000 ;
|
||||
prepare stmt1 from ' replace into t1 (a,b) select 100, ''hundred'' ';
|
||||
ERROR HY000: This command is not supported in the prepared statement protocol yet
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
test_sequence
|
||||
------ multi table tests ------
|
||||
delete from t1 ;
|
||||
|
|
|
|||
|
|
@ -1607,7 +1607,9 @@ a b
|
|||
1200 x1000_1updatedupdated
|
||||
delete from t1 where a >= 1000 ;
|
||||
prepare stmt1 from ' replace into t1 (a,b) select 100, ''hundred'' ';
|
||||
ERROR HY000: This command is not supported in the prepared statement protocol yet
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
test_sequence
|
||||
------ multi table tests ------
|
||||
delete from t1 ;
|
||||
|
|
@ -4615,7 +4617,9 @@ a b
|
|||
1200 x1000_1updatedupdated
|
||||
delete from t1 where a >= 1000 ;
|
||||
prepare stmt1 from ' replace into t1 (a,b) select 100, ''hundred'' ';
|
||||
ERROR HY000: This command is not supported in the prepared statement protocol yet
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
test_sequence
|
||||
------ multi table tests ------
|
||||
delete from t1 ;
|
||||
|
|
|
|||
|
|
@ -1564,7 +1564,9 @@ a b
|
|||
1200 x1000_1updatedupdated
|
||||
delete from t1 where a >= 1000 ;
|
||||
prepare stmt1 from ' replace into t1 (a,b) select 100, ''hundred'' ';
|
||||
ERROR HY000: This command is not supported in the prepared statement protocol yet
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
test_sequence
|
||||
------ multi table tests ------
|
||||
delete from t1 ;
|
||||
|
|
|
|||
|
|
@ -1543,7 +1543,6 @@ a b
|
|||
1000 x1000_1
|
||||
delete from t1 where a >= 1000 ;
|
||||
prepare stmt1 from ' replace into t1 (a,b) select 100, ''hundred'' ';
|
||||
ERROR HY000: This command is not supported in the prepared statement protocol yet
|
||||
test_sequence
|
||||
------ multi table tests ------
|
||||
delete from t1 ;
|
||||
|
|
|
|||
|
|
@ -339,8 +339,8 @@ select a,b from t1 where a >= 1000 order by a ;
|
|||
delete from t1 where a >= 1000 ;
|
||||
|
||||
## replace
|
||||
--error 1295
|
||||
prepare stmt1 from ' replace into t1 (a,b) select 100, ''hundred'' ';
|
||||
--error 1031
|
||||
|
||||
## multi table statements
|
||||
--disable_query_log
|
||||
|
|
|
|||
|
|
@ -1442,6 +1442,7 @@ static int send_prepare_results(Prepared_statement *stmt, bool text_protocol)
|
|||
break;
|
||||
|
||||
case SQLCOM_INSERT_SELECT:
|
||||
case SQLCOM_REPLACE_SELECT:
|
||||
res= mysql_test_insert_select(stmt, tables);
|
||||
break;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue