Commit 13ec4317 authored by unknown's avatar unknown

fixed incorrect type custing (fixed problem with runing tests with --debug...

fixed incorrect type custing (fixed problem with runing tests with --debug (thanks, Sergei Gluhov spoted it))


mysql-test/r/view.result:
  PS with multiupdate and view with collate
mysql-test/t/view.test:
  PS with multiupdate and view with collate
sql/sql_update.cc:
  fixed incorrect type custing
parent 1af88dc5
...@@ -1329,6 +1329,18 @@ update v1,t1 set v1.s1='c' where t1.s1=v1.s1; ...@@ -1329,6 +1329,18 @@ update v1,t1 set v1.s1='c' where t1.s1=v1.s1;
select * from v1; select * from v1;
s1 s1
c c
prepare stmt1 from "update v1,t1 set v1.s1=? where t1.s1=v1.s1";
set @arg='d';
execute stmt1 using @arg;
select * from v1;
s1
d
set @arg='e';
execute stmt1 using @arg;
select * from v1;
s1
e
deallocate prepare stmt1;
drop view v1; drop view v1;
drop table t1; drop table t1;
create table t1 (a int); create table t1 (a int);
......
...@@ -1297,6 +1297,14 @@ update v1 set s1='b'; ...@@ -1297,6 +1297,14 @@ update v1 set s1='b';
select * from v1; select * from v1;
update v1,t1 set v1.s1='c' where t1.s1=v1.s1; update v1,t1 set v1.s1='c' where t1.s1=v1.s1;
select * from v1; select * from v1;
prepare stmt1 from "update v1,t1 set v1.s1=? where t1.s1=v1.s1";
set @arg='d';
execute stmt1 using @arg;
select * from v1;
set @arg='e';
execute stmt1 using @arg;
select * from v1;
deallocate prepare stmt1;
drop view v1; drop view v1;
drop table t1; drop table t1;
......
...@@ -80,9 +80,8 @@ static bool check_fields(THD *thd, List<Item> &items) ...@@ -80,9 +80,8 @@ static bool check_fields(THD *thd, List<Item> &items)
we make temporary copy of Item_field, to avoid influence of changing we make temporary copy of Item_field, to avoid influence of changing
result_field on Item_ref which refer on this field result_field on Item_ref which refer on this field
*/ */
field= new Item_field(thd, field); it.replace(new Item_field(thd, field));
it.replace(field); field->register_item_tree_changing(it.ref());
((Item_field *)item)->register_item_tree_changing(it.ref());
} }
return FALSE; return FALSE;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment