mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-3.23
into eagle.mysql.r18.ru:/home/vva/work/BUG_2012/mysql-3.23
This commit is contained in:
commit
cf2ecf3702
3 changed files with 50 additions and 1 deletions
|
@ -11,3 +11,15 @@ payoutID
|
|||
19
|
||||
20
|
||||
22
|
||||
Month Type Field Count
|
||||
2003-09-01 1 1 100
|
||||
2003-09-01 1 2 100
|
||||
2003-09-01 2 1 100
|
||||
2003-09-01 2 2 100
|
||||
2003-09-01 3 1 100
|
||||
NULL Field Count
|
||||
NULL 1 100
|
||||
NULL 2 100
|
||||
No Field Count
|
||||
0 1 100
|
||||
0 2 100
|
||||
|
|
|
@ -10,3 +10,34 @@ insert into t2 (payoutID) SELECT DISTINCT payoutID FROM t1;
|
|||
insert into t2 (payoutID) SELECT payoutID+10 FROM t1;
|
||||
select * from t2;
|
||||
drop table t1,t2;
|
||||
|
||||
#
|
||||
# Another problem from Bug #2012
|
||||
#
|
||||
|
||||
CREATE TABLE t1(
|
||||
Month date NOT NULL,
|
||||
Type tinyint(3) unsigned NOT NULL auto_increment,
|
||||
Field int(10) unsigned NOT NULL,
|
||||
Count int(10) unsigned NOT NULL,
|
||||
UNIQUE KEY Month (Month,Type,Field)
|
||||
);
|
||||
|
||||
insert into t1 Values
|
||||
(20030901, 1, 1, 100),
|
||||
(20030901, 1, 2, 100),
|
||||
(20030901, 2, 1, 100),
|
||||
(20030901, 2, 2, 100),
|
||||
(20030901, 3, 1, 100);
|
||||
|
||||
select * from t1;
|
||||
|
||||
Select null, Field, Count From t1 Where Month=20030901 and Type=2;
|
||||
|
||||
create table t2(No int not null, Field int not null, Count int not null);
|
||||
|
||||
insert into t2 Select null, Field, Count From t1 Where Month=20030901 and Type=2;
|
||||
|
||||
select * from t2;
|
||||
|
||||
drop table t1, t2;
|
||||
|
|
|
@ -2184,9 +2184,15 @@ store_val_in_field(Field *field,Item *item)
|
|||
{
|
||||
THD *thd=current_thd;
|
||||
ulong cuted_fields=thd->cuted_fields;
|
||||
/*
|
||||
we should restore old value of count_cuted_fields because
|
||||
store_val_in_field can be called from mysql_insert
|
||||
with select_insert, which make count_cuted_fields= 1
|
||||
*/
|
||||
bool old_count_cuted_fields= thd->count_cuted_fields;
|
||||
thd->count_cuted_fields=1;
|
||||
item->save_in_field(field);
|
||||
thd->count_cuted_fields=0;
|
||||
thd->count_cuted_fields= old_count_cuted_fields;
|
||||
return cuted_fields != thd->cuted_fields;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue