mirror of
https://github.com/MariaDB/server.git
synced 2025-11-08 00:28:29 +03:00
Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-4.1
This commit is contained in:
@@ -110,10 +110,10 @@ select a,b from t1 where a=@arg00;
|
||||
set @arg00=NULL;
|
||||
set @arg01=2;
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
select a,b from t1;
|
||||
select a,b from t1 order by a;
|
||||
set @arg00=0;
|
||||
execute stmt1 using @arg01, @arg00;
|
||||
select a,b from t1;
|
||||
select a,b from t1 order by a;
|
||||
|
||||
## update with subquery and several parameters
|
||||
set @arg00=23;
|
||||
@@ -134,7 +134,7 @@ prepare stmt1 from 'update t1 set a=? where b=?
|
||||
and a not in (select ? from t2
|
||||
where b = ? or a = ?)';
|
||||
execute stmt1 using @arg04, @arg01, @arg02, @arg03, @arg00 ;
|
||||
select a,b from t1 ;
|
||||
select a,b from t1 order by a;
|
||||
drop table t2 ;
|
||||
|
||||
## update with parameters in limit
|
||||
@@ -202,7 +202,7 @@ set @arg01=1 ;
|
||||
prepare stmt1 from 'insert into t1 set a=?, b=''sechs''
|
||||
on duplicate key update a=a + ?, b=concat(b,''modified'') ';
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
select * from t1;
|
||||
select * from t1 order by a;
|
||||
set @arg00=81 ;
|
||||
set @arg01=1 ;
|
||||
--error 1062
|
||||
@@ -221,17 +221,17 @@ set @updated="updated" ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
insert into t1 values(@1000,@x1000_2),(@1000,@x1000_3)
|
||||
on duplicate key update a = a + @100, b = concat(b,@updated) ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
delete from t1 where a >= 1000 ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
prepare stmt1 from ' insert into t1 values(?,?),(?,?)
|
||||
on duplicate key update a = a + ?, b = concat(b,?) ';
|
||||
execute stmt1 using @1000, @x1000_2, @1000, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
delete from t1 where a >= 1000 ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
execute stmt1 using @1000, @x1000_2, @1100, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
delete from t1 where a >= 1000 ;
|
||||
|
||||
## replace
|
||||
|
||||
@@ -45,19 +45,19 @@
|
||||
set @duplicate='duplicate ' ;
|
||||
set @1000=1000 ;
|
||||
set @5=5 ;
|
||||
select a,b from t1 where a < 5 ;
|
||||
select a,b from t1 where a < 5 order by a ;
|
||||
--enable_info
|
||||
insert into t1 select a + @1000, concat(@duplicate,b) from t1
|
||||
where a < @5 ;
|
||||
--disable_info
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
delete from t1 where a >= 1000 ;
|
||||
prepare stmt1 from ' insert into t1 select a + ?, concat(?,b) from t1
|
||||
where a < ? ' ;
|
||||
--enable_info
|
||||
execute stmt1 using @1000, @duplicate, @5;
|
||||
--disable_info
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
delete from t1 where a >= 1000 ;
|
||||
|
||||
set @float=1.00;
|
||||
@@ -78,7 +78,7 @@ select b, a + @100 from t1
|
||||
where (a,b) in ( select sqrt(a+@1)+CAST(@float AS signed),b
|
||||
from t1);
|
||||
--disable_info
|
||||
select a,b from t2;
|
||||
select a,b from t2 order by a ;
|
||||
delete from t2 ;
|
||||
prepare stmt1 from ' insert into t2 (b,a)
|
||||
select ?, sum(first.a)
|
||||
@@ -93,5 +93,5 @@ select b, a + ? from t1
|
||||
--enable_info
|
||||
execute stmt1 using @duplicate, @5, @five, @2, @100, @1, @float ;
|
||||
--disable_info
|
||||
select a,b from t2;
|
||||
select a,b from t2 order by a ;
|
||||
drop table t2;
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -485,3 +485,99 @@ MBRContains(GeomFromText('Polygon((0 0, 0 7, 7 7, 7 0, 0 0))'), a);
|
||||
AsText(a)
|
||||
POINT(1 1)
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (Coordinates POINT NOT NULL, SPATIAL INDEX(Coordinates));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(383293632 1754448)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(564952612 157516260)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(903994614 180726515)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(98128178 141127631)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(862547902 799334546)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(341989013 850270906)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(803302376 93039099)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(857439153 817431356)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(319757546 343162742)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(826341972 717484432)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(305066789 201736238)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(626068992 616241497)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(55789424 755830108)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(802874458 312435220)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(153795660 551723671)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(242207428 537089292)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(553478119 807160039)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(694605552 457472733)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(987886554 792733729)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(598600363 850434457)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(592068275 940589376)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(700705362 395370650)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(33628474 558144514)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(212802006 353386020)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(901307256 39143977)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(70870451 206374045)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(240880214 696939443)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(822615542 296669638)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(452769551 625489999)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(609104858 606565210)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(177213669 851312285)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(143654501 730691787)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(658472325 838260052)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(188164520 646358878)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(630993781 786764883)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(496793334 223062055)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(727354258 197498696)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(618432704 760982731)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(755643210 831234710)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(114368751 656950466)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(870378686 185239202)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(863324511 111258900)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(882178645 685940052)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(407928538 334948195)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(311430051 17033395)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(941513405 488643719)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(868345680 85167906)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(219335507 526818004)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(923427958 407500026)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(173176882 554421738)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(194264908 669970217)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(777483793 921619165)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(867468912 395916497)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(682601897 623112122)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(227151206 796970647)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(280062588 97529892)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(982209849 143387099)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(208788792 864388493)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(829327151 616717329)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(199336688 140757201)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(633750724 140850093)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(629400920 502096404)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(226017998 848736426)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(28914408 149445955)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(256236452 202091290)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(703867693 450501360)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(872061506 481351486)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(372120524 739530418)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(877267982 54722420)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(362642540 104419188)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(851693067 642705127)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(201949080 833902916)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(786092225 410737872)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(698291409 615419376)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(27455201 897628096)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(756176576 661205925)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(38478189 385577496)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(163302328 264496186)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(234313922 192216735)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(413942141 490550373)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(394308025 117809834)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(941051732 266369530)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(599161319 313172256)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(5899948 476429301)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(367894677 368542487)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(580848489 219587743)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(11247614 782797569)'));
|
||||
drop table t1;
|
||||
create table t1 select POINT(1,3);
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`POINT(1,3)` longblob NOT NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
drop table t1;
|
||||
|
||||
@@ -420,6 +420,9 @@ INSERT INTO t1 VALUES
|
||||
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
||||
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
|
||||
ERROR 23000: Duplicate entry '10' for key 1
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
2000
|
||||
begin;
|
||||
SELECT COUNT(*) FROM t1;
|
||||
COUNT(*)
|
||||
@@ -429,17 +432,128 @@ INSERT INTO t1 VALUES
|
||||
SELECT COUNT(*) FROM t1;
|
||||
COUNT(*)
|
||||
2005
|
||||
rollback;
|
||||
begin;
|
||||
INSERT INTO t1 VALUES
|
||||
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
||||
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
|
||||
ERROR 23000: Duplicate entry '10' for key 1
|
||||
SELECT COUNT(*) FROM t1;
|
||||
COUNT(*)
|
||||
2000
|
||||
commit;
|
||||
SELECT COUNT(*) FROM t1;
|
||||
COUNT(*)
|
||||
ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
|
||||
select * from t1 where pk1=1;
|
||||
pk1 b c
|
||||
1 1 1
|
||||
select * from t1 where pk1=10;
|
||||
pk1 b c
|
||||
10 10 10
|
||||
select count(*) from t1 where pk1 <= 10 order by pk1;
|
||||
count(*)
|
||||
11
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
2000
|
||||
begin;
|
||||
INSERT INTO t1 VALUES
|
||||
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
||||
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
|
||||
ERROR 23000: Duplicate entry '10' for key 1
|
||||
rollback;
|
||||
select * from t1 where pk1=1;
|
||||
pk1 b c
|
||||
1 1 1
|
||||
select * from t1 where pk1=10;
|
||||
pk1 b c
|
||||
10 10 10
|
||||
select count(*) from t1 where pk1 <= 10 order by pk1;
|
||||
count(*)
|
||||
11
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
2000
|
||||
begin;
|
||||
INSERT INTO t1 VALUES
|
||||
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
||||
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
|
||||
ERROR 23000: Duplicate entry '10' for key 1
|
||||
SELECT * FROM t1 WHERE pk1=10;
|
||||
ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
|
||||
rollback;
|
||||
select * from t1 where pk1=1;
|
||||
pk1 b c
|
||||
1 1 1
|
||||
select * from t1 where pk1=10;
|
||||
pk1 b c
|
||||
10 10 10
|
||||
select count(*) from t1 where pk1 <= 10 order by pk1;
|
||||
count(*)
|
||||
11
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
2000
|
||||
begin;
|
||||
INSERT INTO t1 VALUES
|
||||
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
||||
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
|
||||
ERROR 23000: Duplicate entry '10' for key 1
|
||||
SELECT * FROM t1 WHERE pk1=10;
|
||||
ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
|
||||
SELECT * FROM t1 WHERE pk1=10;
|
||||
ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
|
||||
commit;
|
||||
ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
|
||||
select * from t1 where pk1=1;
|
||||
pk1 b c
|
||||
1 1 1
|
||||
select * from t1 where pk1=10;
|
||||
pk1 b c
|
||||
10 10 10
|
||||
select count(*) from t1 where pk1 <= 10 order by pk1;
|
||||
count(*)
|
||||
11
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
2000
|
||||
begin;
|
||||
INSERT INTO t1 VALUES
|
||||
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
||||
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
|
||||
ERROR 23000: Duplicate entry '10' for key 1
|
||||
INSERT INTO t1 values (4000, 40, 44);
|
||||
ERROR HY000: Got error 4350 'Transaction already aborted' from ndbcluster
|
||||
rollback;
|
||||
select * from t1 where pk1=1;
|
||||
pk1 b c
|
||||
1 1 1
|
||||
select * from t1 where pk1=10;
|
||||
pk1 b c
|
||||
10 10 10
|
||||
select count(*) from t1 where pk1 <= 10 order by pk1;
|
||||
count(*)
|
||||
11
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
2000
|
||||
insert into t1 select * from t1 where b < 10 order by pk1;
|
||||
ERROR 23000: Duplicate entry '9' for key 1
|
||||
begin;
|
||||
INSERT IGNORE INTO t1 VALUES(1,2,3);
|
||||
ERROR HY000: Table storage engine for 't1' doesn't have this option
|
||||
commit;
|
||||
select * from t1 where pk1=1;
|
||||
pk1 b c
|
||||
1 1 1
|
||||
INSERT IGNORE INTO t1 VALUES(1,2,3);
|
||||
ERROR HY000: Table storage engine for 't1' doesn't have this option
|
||||
select * from t1 where pk1=1;
|
||||
pk1 b c
|
||||
1 1 1
|
||||
REPLACE INTO t1 values(1, 2, 3);
|
||||
select * from t1 where pk1=1;
|
||||
pk1 b c
|
||||
1 2 3
|
||||
INSERT INTO t1 VALUES(1,1,1) ON DUPLICATE KEY UPDATE b=79;
|
||||
ERROR HY000: Table storage engine for 't1' doesn't have this option
|
||||
select * from t1 where pk1=1;
|
||||
pk1 b c
|
||||
1 2 3
|
||||
DROP TABLE t1;
|
||||
|
||||
@@ -270,3 +270,30 @@ execute stmt using @var;
|
||||
a
|
||||
deallocate prepare stmt;
|
||||
drop table t1;
|
||||
create table t1 (a bigint(20) not null primary key auto_increment);
|
||||
insert into t1 (a) values (null);
|
||||
select * from t1;
|
||||
a
|
||||
1
|
||||
prepare stmt from "insert into t1 (a) values (?)";
|
||||
set @var=null;
|
||||
execute stmt using @var;
|
||||
select * from t1;
|
||||
a
|
||||
1
|
||||
2
|
||||
drop table t1;
|
||||
create table t1 (a timestamp not null);
|
||||
prepare stmt from "insert into t1 (a) values (?)";
|
||||
execute stmt using @var;
|
||||
select * from t1;
|
||||
deallocate prepare stmt;
|
||||
drop table t1;
|
||||
prepare stmt from "select 'abc' like convert('abc' using utf8)";
|
||||
execute stmt;
|
||||
'abc' like convert('abc' using utf8)
|
||||
1
|
||||
execute stmt;
|
||||
'abc' like convert('abc' using utf8)
|
||||
1
|
||||
deallocate prepare stmt;
|
||||
|
||||
@@ -1015,16 +1015,16 @@ set @arg00=NULL;
|
||||
set @arg01=2;
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'a' at row 1
|
||||
select a,b from t1;
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 1
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
1 one
|
||||
0 two
|
||||
1 one
|
||||
3 three
|
||||
4 four
|
||||
set @arg00=0;
|
||||
execute stmt1 using @arg01, @arg00;
|
||||
select a,b from t1;
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
1 one
|
||||
2 two
|
||||
@@ -1048,7 +1048,7 @@ prepare stmt1 from 'update t1 set a=? where b=?
|
||||
and a not in (select ? from t2
|
||||
where b = ? or a = ?)';
|
||||
execute stmt1 using @arg04, @arg01, @arg02, @arg03, @arg00 ;
|
||||
select a,b from t1 ;
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
1 one
|
||||
2 two
|
||||
@@ -1142,19 +1142,19 @@ set @arg01=1 ;
|
||||
prepare stmt1 from 'insert into t1 set a=?, b=''sechs''
|
||||
on duplicate key update a=a + ?, b=concat(b,''modified'') ';
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
select * from t1;
|
||||
select * from t1 order by a;
|
||||
a b
|
||||
0 NULL
|
||||
1 one
|
||||
2 two
|
||||
3 three
|
||||
4 four
|
||||
5 five
|
||||
7 sixmodified
|
||||
0 NULL
|
||||
8 eight
|
||||
9 nine
|
||||
81 8-1
|
||||
82 8-2
|
||||
9 nine
|
||||
set @arg00=81 ;
|
||||
set @arg01=1 ;
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
@@ -1170,7 +1170,7 @@ set @updated="updated" ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
insert into t1 values(@1000,@x1000_2),(@1000,@x1000_3)
|
||||
on duplicate key update a = a + @100, b = concat(b,@updated) ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 x1000_3
|
||||
1100 x1000_1updated
|
||||
@@ -1179,14 +1179,14 @@ insert into t1 values(1000,'x1000_1') ;
|
||||
prepare stmt1 from ' insert into t1 values(?,?),(?,?)
|
||||
on duplicate key update a = a + ?, b = concat(b,?) ';
|
||||
execute stmt1 using @1000, @x1000_2, @1000, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 x1000_3
|
||||
1100 x1000_1updated
|
||||
delete from t1 where a >= 1000 ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
execute stmt1 using @1000, @x1000_2, @1100, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1200 x1000_1updatedupdated
|
||||
delete from t1 where a >= 1000 ;
|
||||
@@ -1195,37 +1195,37 @@ ERROR HY000: This command is not supported in the prepared statement protocol ye
|
||||
set @duplicate='duplicate ' ;
|
||||
set @1000=1000 ;
|
||||
set @5=5 ;
|
||||
select a,b from t1 where a < 5 ;
|
||||
select a,b from t1 where a < 5 order by a ;
|
||||
a b
|
||||
0 NULL
|
||||
1 one
|
||||
2 two
|
||||
3 three
|
||||
4 four
|
||||
0 NULL
|
||||
insert into t1 select a + @1000, concat(@duplicate,b) from t1
|
||||
where a < @5 ;
|
||||
affected rows: 5
|
||||
info: Records: 5 Duplicates: 0 Warnings: 0
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 NULL
|
||||
1001 duplicate one
|
||||
1002 duplicate two
|
||||
1003 duplicate three
|
||||
1004 duplicate four
|
||||
1000 NULL
|
||||
delete from t1 where a >= 1000 ;
|
||||
prepare stmt1 from ' insert into t1 select a + ?, concat(?,b) from t1
|
||||
where a < ? ' ;
|
||||
execute stmt1 using @1000, @duplicate, @5;
|
||||
affected rows: 5
|
||||
info: Records: 5 Duplicates: 0 Warnings: 0
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1004 duplicate four
|
||||
1003 duplicate three
|
||||
1002 duplicate two
|
||||
1001 duplicate one
|
||||
1000 NULL
|
||||
1001 duplicate one
|
||||
1002 duplicate two
|
||||
1003 duplicate three
|
||||
1004 duplicate four
|
||||
delete from t1 where a >= 1000 ;
|
||||
set @float=1.00;
|
||||
set @five='five' ;
|
||||
@@ -1243,15 +1243,15 @@ where (a,b) in ( select sqrt(a+@1)+CAST(@float AS signed),b
|
||||
from t1);
|
||||
affected rows: 8
|
||||
info: Records: 8 Duplicates: 0 Warnings: 0
|
||||
select a,b from t2;
|
||||
select a,b from t2 order by a ;
|
||||
a b
|
||||
3 duplicate
|
||||
4 duplicate
|
||||
7 duplicate
|
||||
8 duplicate
|
||||
9 duplicate
|
||||
81 duplicate
|
||||
82 duplicate
|
||||
8 duplicate
|
||||
4 duplicate
|
||||
9 duplicate
|
||||
7 duplicate
|
||||
3 duplicate
|
||||
103 three
|
||||
delete from t2 ;
|
||||
prepare stmt1 from ' insert into t2 (b,a)
|
||||
@@ -1267,15 +1267,15 @@ select b, a + ? from t1
|
||||
execute stmt1 using @duplicate, @5, @five, @2, @100, @1, @float ;
|
||||
affected rows: 8
|
||||
info: Records: 8 Duplicates: 0 Warnings: 0
|
||||
select a,b from t2;
|
||||
select a,b from t2 order by a ;
|
||||
a b
|
||||
3 duplicate
|
||||
4 duplicate
|
||||
7 duplicate
|
||||
8 duplicate
|
||||
9 duplicate
|
||||
81 duplicate
|
||||
82 duplicate
|
||||
8 duplicate
|
||||
4 duplicate
|
||||
9 duplicate
|
||||
7 duplicate
|
||||
3 duplicate
|
||||
103 three
|
||||
drop table t2;
|
||||
drop table t1, t_many_col_types;
|
||||
|
||||
@@ -1015,8 +1015,8 @@ set @arg00=NULL;
|
||||
set @arg01=2;
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'a' at row 1
|
||||
select a,b from t1;
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 1
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
0 two
|
||||
1 one
|
||||
@@ -1024,7 +1024,7 @@ a b
|
||||
4 four
|
||||
set @arg00=0;
|
||||
execute stmt1 using @arg01, @arg00;
|
||||
select a,b from t1;
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
1 one
|
||||
2 two
|
||||
@@ -1048,7 +1048,7 @@ prepare stmt1 from 'update t1 set a=? where b=?
|
||||
and a not in (select ? from t2
|
||||
where b = ? or a = ?)';
|
||||
execute stmt1 using @arg04, @arg01, @arg02, @arg03, @arg00 ;
|
||||
select a,b from t1 ;
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
1 one
|
||||
2 two
|
||||
@@ -1142,7 +1142,7 @@ set @arg01=1 ;
|
||||
prepare stmt1 from 'insert into t1 set a=?, b=''sechs''
|
||||
on duplicate key update a=a + ?, b=concat(b,''modified'') ';
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
select * from t1;
|
||||
select * from t1 order by a;
|
||||
a b
|
||||
0 NULL
|
||||
1 one
|
||||
@@ -1170,7 +1170,7 @@ set @updated="updated" ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
insert into t1 values(@1000,@x1000_2),(@1000,@x1000_3)
|
||||
on duplicate key update a = a + @100, b = concat(b,@updated) ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 x1000_3
|
||||
1100 x1000_1updated
|
||||
@@ -1179,14 +1179,14 @@ insert into t1 values(1000,'x1000_1') ;
|
||||
prepare stmt1 from ' insert into t1 values(?,?),(?,?)
|
||||
on duplicate key update a = a + ?, b = concat(b,?) ';
|
||||
execute stmt1 using @1000, @x1000_2, @1000, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 x1000_3
|
||||
1100 x1000_1updated
|
||||
delete from t1 where a >= 1000 ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
execute stmt1 using @1000, @x1000_2, @1100, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1200 x1000_1updatedupdated
|
||||
delete from t1 where a >= 1000 ;
|
||||
@@ -1195,7 +1195,7 @@ ERROR HY000: This command is not supported in the prepared statement protocol ye
|
||||
set @duplicate='duplicate ' ;
|
||||
set @1000=1000 ;
|
||||
set @5=5 ;
|
||||
select a,b from t1 where a < 5 ;
|
||||
select a,b from t1 where a < 5 order by a ;
|
||||
a b
|
||||
0 NULL
|
||||
1 one
|
||||
@@ -1206,7 +1206,7 @@ insert into t1 select a + @1000, concat(@duplicate,b) from t1
|
||||
where a < @5 ;
|
||||
affected rows: 5
|
||||
info: Records: 5 Duplicates: 0 Warnings: 0
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 NULL
|
||||
1001 duplicate one
|
||||
@@ -1219,7 +1219,7 @@ where a < ? ' ;
|
||||
execute stmt1 using @1000, @duplicate, @5;
|
||||
affected rows: 5
|
||||
info: Records: 5 Duplicates: 0 Warnings: 0
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 NULL
|
||||
1001 duplicate one
|
||||
@@ -1243,7 +1243,7 @@ where (a,b) in ( select sqrt(a+@1)+CAST(@float AS signed),b
|
||||
from t1);
|
||||
affected rows: 8
|
||||
info: Records: 8 Duplicates: 0 Warnings: 0
|
||||
select a,b from t2;
|
||||
select a,b from t2 order by a ;
|
||||
a b
|
||||
3 duplicate
|
||||
4 duplicate
|
||||
@@ -1267,7 +1267,7 @@ select b, a + ? from t1
|
||||
execute stmt1 using @duplicate, @5, @five, @2, @100, @1, @float ;
|
||||
affected rows: 8
|
||||
info: Records: 8 Duplicates: 0 Warnings: 0
|
||||
select a,b from t2;
|
||||
select a,b from t2 order by a ;
|
||||
a b
|
||||
3 duplicate
|
||||
4 duplicate
|
||||
|
||||
@@ -1016,16 +1016,16 @@ set @arg00=NULL;
|
||||
set @arg01=2;
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'a' at row 1
|
||||
select a,b from t1;
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 1
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
1 one
|
||||
0 two
|
||||
1 one
|
||||
3 three
|
||||
4 four
|
||||
set @arg00=0;
|
||||
execute stmt1 using @arg01, @arg00;
|
||||
select a,b from t1;
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
1 one
|
||||
2 two
|
||||
@@ -1049,7 +1049,7 @@ prepare stmt1 from 'update t1 set a=? where b=?
|
||||
and a not in (select ? from t2
|
||||
where b = ? or a = ?)';
|
||||
execute stmt1 using @arg04, @arg01, @arg02, @arg03, @arg00 ;
|
||||
select a,b from t1 ;
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
1 one
|
||||
2 two
|
||||
@@ -1143,19 +1143,19 @@ set @arg01=1 ;
|
||||
prepare stmt1 from 'insert into t1 set a=?, b=''sechs''
|
||||
on duplicate key update a=a + ?, b=concat(b,''modified'') ';
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
select * from t1;
|
||||
select * from t1 order by a;
|
||||
a b
|
||||
0 NULL
|
||||
1 one
|
||||
2 two
|
||||
3 three
|
||||
4 four
|
||||
5 five
|
||||
7 sixmodified
|
||||
0 NULL
|
||||
8 eight
|
||||
9 nine
|
||||
81 8-1
|
||||
82 8-2
|
||||
9 nine
|
||||
set @arg00=81 ;
|
||||
set @arg01=1 ;
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
@@ -1171,23 +1171,23 @@ set @updated="updated" ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
insert into t1 values(@1000,@x1000_2),(@1000,@x1000_3)
|
||||
on duplicate key update a = a + @100, b = concat(b,@updated) ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1100 x1000_1updated
|
||||
1000 x1000_3
|
||||
1100 x1000_1updated
|
||||
delete from t1 where a >= 1000 ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
prepare stmt1 from ' insert into t1 values(?,?),(?,?)
|
||||
on duplicate key update a = a + ?, b = concat(b,?) ';
|
||||
execute stmt1 using @1000, @x1000_2, @1000, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 x1000_3
|
||||
1100 x1000_1updated
|
||||
delete from t1 where a >= 1000 ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
execute stmt1 using @1000, @x1000_2, @1100, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1200 x1000_1updatedupdated
|
||||
delete from t1 where a >= 1000 ;
|
||||
@@ -1196,37 +1196,37 @@ ERROR HY000: This command is not supported in the prepared statement protocol ye
|
||||
set @duplicate='duplicate ' ;
|
||||
set @1000=1000 ;
|
||||
set @5=5 ;
|
||||
select a,b from t1 where a < 5 ;
|
||||
select a,b from t1 where a < 5 order by a ;
|
||||
a b
|
||||
0 NULL
|
||||
1 one
|
||||
2 two
|
||||
3 three
|
||||
4 four
|
||||
0 NULL
|
||||
insert into t1 select a + @1000, concat(@duplicate,b) from t1
|
||||
where a < @5 ;
|
||||
affected rows: 5
|
||||
info: Records: 5 Duplicates: 0 Warnings: 0
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1002 duplicate two
|
||||
1000 NULL
|
||||
1001 duplicate one
|
||||
1002 duplicate two
|
||||
1003 duplicate three
|
||||
1004 duplicate four
|
||||
1000 NULL
|
||||
delete from t1 where a >= 1000 ;
|
||||
prepare stmt1 from ' insert into t1 select a + ?, concat(?,b) from t1
|
||||
where a < ? ' ;
|
||||
execute stmt1 using @1000, @duplicate, @5;
|
||||
affected rows: 5
|
||||
info: Records: 5 Duplicates: 0 Warnings: 0
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 NULL
|
||||
1004 duplicate four
|
||||
1003 duplicate three
|
||||
1002 duplicate two
|
||||
1001 duplicate one
|
||||
1002 duplicate two
|
||||
1003 duplicate three
|
||||
1004 duplicate four
|
||||
delete from t1 where a >= 1000 ;
|
||||
set @float=1.00;
|
||||
set @five='five' ;
|
||||
@@ -1244,15 +1244,15 @@ where (a,b) in ( select sqrt(a+@1)+CAST(@float AS signed),b
|
||||
from t1);
|
||||
affected rows: 8
|
||||
info: Records: 8 Duplicates: 0 Warnings: 0
|
||||
select a,b from t2;
|
||||
select a,b from t2 order by a ;
|
||||
a b
|
||||
3 duplicate
|
||||
4 duplicate
|
||||
7 duplicate
|
||||
8 duplicate
|
||||
9 duplicate
|
||||
81 duplicate
|
||||
82 duplicate
|
||||
8 duplicate
|
||||
4 duplicate
|
||||
9 duplicate
|
||||
7 duplicate
|
||||
3 duplicate
|
||||
103 three
|
||||
delete from t2 ;
|
||||
prepare stmt1 from ' insert into t2 (b,a)
|
||||
@@ -1268,15 +1268,15 @@ select b, a + ? from t1
|
||||
execute stmt1 using @duplicate, @5, @five, @2, @100, @1, @float ;
|
||||
affected rows: 8
|
||||
info: Records: 8 Duplicates: 0 Warnings: 0
|
||||
select a,b from t2;
|
||||
select a,b from t2 order by a ;
|
||||
a b
|
||||
3 duplicate
|
||||
4 duplicate
|
||||
7 duplicate
|
||||
8 duplicate
|
||||
9 duplicate
|
||||
81 duplicate
|
||||
82 duplicate
|
||||
8 duplicate
|
||||
4 duplicate
|
||||
9 duplicate
|
||||
7 duplicate
|
||||
3 duplicate
|
||||
103 three
|
||||
drop table t2;
|
||||
drop table t1, t_many_col_types;
|
||||
|
||||
@@ -1058,20 +1058,20 @@ set @arg00=NULL;
|
||||
set @arg01=2;
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'a' at row 1
|
||||
select a,b from t1;
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 1
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
3 three
|
||||
0 two
|
||||
1 one
|
||||
3 three
|
||||
4 four
|
||||
set @arg00=0;
|
||||
execute stmt1 using @arg01, @arg00;
|
||||
select a,b from t1;
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
3 three
|
||||
2 two
|
||||
1 one
|
||||
2 two
|
||||
3 three
|
||||
4 four
|
||||
set @arg00=23;
|
||||
set @arg01='two';
|
||||
@@ -1091,11 +1091,11 @@ prepare stmt1 from 'update t1 set a=? where b=?
|
||||
and a not in (select ? from t2
|
||||
where b = ? or a = ?)';
|
||||
execute stmt1 using @arg04, @arg01, @arg02, @arg03, @arg00 ;
|
||||
select a,b from t1 ;
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
3 three
|
||||
2 two
|
||||
1 one
|
||||
2 two
|
||||
3 three
|
||||
4 four
|
||||
drop table t2 ;
|
||||
set @arg00=1;
|
||||
@@ -1185,19 +1185,19 @@ set @arg01=1 ;
|
||||
prepare stmt1 from 'insert into t1 set a=?, b=''sechs''
|
||||
on duplicate key update a=a + ?, b=concat(b,''modified'') ';
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
select * from t1;
|
||||
select * from t1 order by a;
|
||||
a b
|
||||
4 four
|
||||
3 three
|
||||
2 two
|
||||
0 NULL
|
||||
1 one
|
||||
2 two
|
||||
3 three
|
||||
4 four
|
||||
5 five
|
||||
7 sixmodified
|
||||
0 NULL
|
||||
8 eight
|
||||
9 nine
|
||||
81 8-1
|
||||
82 8-2
|
||||
9 nine
|
||||
set @arg00=81 ;
|
||||
set @arg01=1 ;
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
@@ -1213,7 +1213,7 @@ set @updated="updated" ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
insert into t1 values(@1000,@x1000_2),(@1000,@x1000_3)
|
||||
on duplicate key update a = a + @100, b = concat(b,@updated) ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 x1000_3
|
||||
1100 x1000_1updated
|
||||
@@ -1222,14 +1222,14 @@ insert into t1 values(1000,'x1000_1') ;
|
||||
prepare stmt1 from ' insert into t1 values(?,?),(?,?)
|
||||
on duplicate key update a = a + ?, b = concat(b,?) ';
|
||||
execute stmt1 using @1000, @x1000_2, @1000, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 x1000_3
|
||||
1100 x1000_1updated
|
||||
delete from t1 where a >= 1000 ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
execute stmt1 using @1000, @x1000_2, @1100, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1200 x1000_1updatedupdated
|
||||
delete from t1 where a >= 1000 ;
|
||||
@@ -2253,20 +2253,20 @@ set @arg00=NULL;
|
||||
set @arg01=2;
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'a' at row 1
|
||||
select a,b from t1;
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 1
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
3 three
|
||||
0 two
|
||||
1 one
|
||||
3 three
|
||||
4 four
|
||||
set @arg00=0;
|
||||
execute stmt1 using @arg01, @arg00;
|
||||
select a,b from t1;
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
3 three
|
||||
2 two
|
||||
1 one
|
||||
2 two
|
||||
3 three
|
||||
4 four
|
||||
set @arg00=23;
|
||||
set @arg01='two';
|
||||
@@ -2286,11 +2286,11 @@ prepare stmt1 from 'update t1 set a=? where b=?
|
||||
and a not in (select ? from t2
|
||||
where b = ? or a = ?)';
|
||||
execute stmt1 using @arg04, @arg01, @arg02, @arg03, @arg00 ;
|
||||
select a,b from t1 ;
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
3 three
|
||||
2 two
|
||||
1 one
|
||||
2 two
|
||||
3 three
|
||||
4 four
|
||||
drop table t2 ;
|
||||
set @arg00=1;
|
||||
@@ -2380,19 +2380,19 @@ set @arg01=1 ;
|
||||
prepare stmt1 from 'insert into t1 set a=?, b=''sechs''
|
||||
on duplicate key update a=a + ?, b=concat(b,''modified'') ';
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
select * from t1;
|
||||
select * from t1 order by a;
|
||||
a b
|
||||
4 four
|
||||
3 three
|
||||
2 two
|
||||
0 NULL
|
||||
1 one
|
||||
2 two
|
||||
3 three
|
||||
4 four
|
||||
5 five
|
||||
7 sixmodified
|
||||
0 NULL
|
||||
8 eight
|
||||
9 nine
|
||||
81 8-1
|
||||
82 8-2
|
||||
9 nine
|
||||
set @arg00=81 ;
|
||||
set @arg01=1 ;
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
@@ -2408,7 +2408,7 @@ set @updated="updated" ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
insert into t1 values(@1000,@x1000_2),(@1000,@x1000_3)
|
||||
on duplicate key update a = a + @100, b = concat(b,@updated) ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 x1000_3
|
||||
1100 x1000_1updated
|
||||
@@ -2417,14 +2417,14 @@ insert into t1 values(1000,'x1000_1') ;
|
||||
prepare stmt1 from ' insert into t1 values(?,?),(?,?)
|
||||
on duplicate key update a = a + ?, b = concat(b,?) ';
|
||||
execute stmt1 using @1000, @x1000_2, @1000, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 x1000_3
|
||||
1100 x1000_1updated
|
||||
delete from t1 where a >= 1000 ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
execute stmt1 using @1000, @x1000_2, @1100, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1200 x1000_1updatedupdated
|
||||
delete from t1 where a >= 1000 ;
|
||||
|
||||
@@ -1015,8 +1015,8 @@ set @arg00=NULL;
|
||||
set @arg01=2;
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'a' at row 1
|
||||
select a,b from t1;
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 1
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
0 two
|
||||
1 one
|
||||
@@ -1024,7 +1024,7 @@ a b
|
||||
4 four
|
||||
set @arg00=0;
|
||||
execute stmt1 using @arg01, @arg00;
|
||||
select a,b from t1;
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
1 one
|
||||
2 two
|
||||
@@ -1048,7 +1048,7 @@ prepare stmt1 from 'update t1 set a=? where b=?
|
||||
and a not in (select ? from t2
|
||||
where b = ? or a = ?)';
|
||||
execute stmt1 using @arg04, @arg01, @arg02, @arg03, @arg00 ;
|
||||
select a,b from t1 ;
|
||||
select a,b from t1 order by a;
|
||||
a b
|
||||
1 one
|
||||
2 two
|
||||
@@ -1142,7 +1142,7 @@ set @arg01=1 ;
|
||||
prepare stmt1 from 'insert into t1 set a=?, b=''sechs''
|
||||
on duplicate key update a=a + ?, b=concat(b,''modified'') ';
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
select * from t1;
|
||||
select * from t1 order by a;
|
||||
a b
|
||||
0 NULL
|
||||
1 one
|
||||
@@ -1170,7 +1170,7 @@ set @updated="updated" ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
insert into t1 values(@1000,@x1000_2),(@1000,@x1000_3)
|
||||
on duplicate key update a = a + @100, b = concat(b,@updated) ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 x1000_3
|
||||
1100 x1000_1updated
|
||||
@@ -1179,14 +1179,14 @@ insert into t1 values(1000,'x1000_1') ;
|
||||
prepare stmt1 from ' insert into t1 values(?,?),(?,?)
|
||||
on duplicate key update a = a + ?, b = concat(b,?) ';
|
||||
execute stmt1 using @1000, @x1000_2, @1000, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 x1000_3
|
||||
1100 x1000_1updated
|
||||
delete from t1 where a >= 1000 ;
|
||||
insert into t1 values(1000,'x1000_1') ;
|
||||
execute stmt1 using @1000, @x1000_2, @1100, @x1000_3, @100, @updated ;
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1200 x1000_1updatedupdated
|
||||
delete from t1 where a >= 1000 ;
|
||||
@@ -1195,7 +1195,7 @@ ERROR HY000: This command is not supported in the prepared statement protocol ye
|
||||
set @duplicate='duplicate ' ;
|
||||
set @1000=1000 ;
|
||||
set @5=5 ;
|
||||
select a,b from t1 where a < 5 ;
|
||||
select a,b from t1 where a < 5 order by a ;
|
||||
a b
|
||||
0 NULL
|
||||
1 one
|
||||
@@ -1206,7 +1206,7 @@ insert into t1 select a + @1000, concat(@duplicate,b) from t1
|
||||
where a < @5 ;
|
||||
affected rows: 5
|
||||
info: Records: 5 Duplicates: 0 Warnings: 0
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 NULL
|
||||
1001 duplicate one
|
||||
@@ -1219,7 +1219,7 @@ where a < ? ' ;
|
||||
execute stmt1 using @1000, @duplicate, @5;
|
||||
affected rows: 5
|
||||
info: Records: 5 Duplicates: 0 Warnings: 0
|
||||
select a,b from t1 where a >= 1000 ;
|
||||
select a,b from t1 where a >= 1000 order by a ;
|
||||
a b
|
||||
1000 NULL
|
||||
1001 duplicate one
|
||||
@@ -1243,7 +1243,7 @@ where (a,b) in ( select sqrt(a+@1)+CAST(@float AS signed),b
|
||||
from t1);
|
||||
affected rows: 8
|
||||
info: Records: 8 Duplicates: 0 Warnings: 0
|
||||
select a,b from t2;
|
||||
select a,b from t2 order by a ;
|
||||
a b
|
||||
3 duplicate
|
||||
4 duplicate
|
||||
@@ -1267,7 +1267,7 @@ select b, a + ? from t1
|
||||
execute stmt1 using @duplicate, @5, @five, @2, @100, @1, @float ;
|
||||
affected rows: 8
|
||||
info: Records: 8 Duplicates: 0 Warnings: 0
|
||||
select a,b from t2;
|
||||
select a,b from t2 order by a ;
|
||||
a b
|
||||
3 duplicate
|
||||
4 duplicate
|
||||
|
||||
@@ -198,4 +198,12 @@ CDF32C20E7E020F0FBE1E0EBEAF3 CDF32C20E7E020F0FBE1E0EBEAF3
|
||||
select hex(c1), hex(c2) from t1;
|
||||
hex(c1) hex(c2)
|
||||
CDF32C20E7E020F0FBE1E0EBEAF3 CDF32C20E7E020F0FBE1E0EBEAF3
|
||||
stop slave;
|
||||
delete from t1;
|
||||
change master to master_log_pos=5801;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=5937;
|
||||
start slave;
|
||||
select hex(c1), hex(c2) from t1;
|
||||
hex(c1) hex(c2)
|
||||
CDF32C20E7E020F0FBE1E0EBEAF3 CDF32C20E7E020F0FBE1E0EBEAF3
|
||||
drop table t1;
|
||||
|
||||
@@ -1661,3 +1661,19 @@ t1 CREATE TABLE `t1` (
|
||||
`a` enum('<27>','1','2') NOT NULL default '<27>'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
drop table t1;
|
||||
set names latin1;
|
||||
CREATE TABLE t1 (
|
||||
a INT default 1,
|
||||
b ENUM('value','<27><><EFBFBD>_value','<27><><EFBFBD>') character set latin1 NOT NULL
|
||||
);
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) default '1',
|
||||
`b` enum('value','<27><><EFBFBD>_value','<27><><EFBFBD>') NOT NULL default 'value'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
show columns from t1;
|
||||
Field Type Null Key Default Extra
|
||||
a int(11) YES 1
|
||||
b enum('value','<27><><EFBFBD>_value','<27><><EFBFBD>') value
|
||||
drop table t1;
|
||||
|
||||
@@ -1297,4 +1297,6 @@ INSERT INTO t2 VALUES (2,011401,37,'breaking','dreaded','Steinberg','W');
|
||||
INSERT INTO t2 VALUES (3,011402,37,'Romans','scholastics','jarring','');
|
||||
INSERT INTO t2 VALUES (4,011403,37,'intercepted','audiology','tinily','');
|
||||
SELECT * FROM t2;
|
||||
OPTIMIZE TABLE t2;
|
||||
SELECT * FROM t2;
|
||||
drop table t1, t2;
|
||||
|
||||
@@ -190,3 +190,97 @@ select AsText(a) from t1 where
|
||||
and
|
||||
MBRContains(GeomFromText('Polygon((0 0, 0 7, 7 7, 7 0, 0 0))'), a);
|
||||
drop table t1;
|
||||
|
||||
CREATE TABLE t1 (Coordinates POINT NOT NULL, SPATIAL INDEX(Coordinates));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(383293632 1754448)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(564952612 157516260)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(903994614 180726515)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(98128178 141127631)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(862547902 799334546)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(341989013 850270906)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(803302376 93039099)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(857439153 817431356)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(319757546 343162742)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(826341972 717484432)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(305066789 201736238)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(626068992 616241497)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(55789424 755830108)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(802874458 312435220)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(153795660 551723671)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(242207428 537089292)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(553478119 807160039)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(694605552 457472733)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(987886554 792733729)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(598600363 850434457)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(592068275 940589376)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(700705362 395370650)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(33628474 558144514)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(212802006 353386020)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(901307256 39143977)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(70870451 206374045)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(240880214 696939443)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(822615542 296669638)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(452769551 625489999)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(609104858 606565210)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(177213669 851312285)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(143654501 730691787)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(658472325 838260052)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(188164520 646358878)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(630993781 786764883)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(496793334 223062055)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(727354258 197498696)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(618432704 760982731)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(755643210 831234710)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(114368751 656950466)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(870378686 185239202)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(863324511 111258900)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(882178645 685940052)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(407928538 334948195)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(311430051 17033395)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(941513405 488643719)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(868345680 85167906)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(219335507 526818004)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(923427958 407500026)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(173176882 554421738)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(194264908 669970217)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(777483793 921619165)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(867468912 395916497)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(682601897 623112122)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(227151206 796970647)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(280062588 97529892)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(982209849 143387099)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(208788792 864388493)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(829327151 616717329)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(199336688 140757201)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(633750724 140850093)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(629400920 502096404)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(226017998 848736426)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(28914408 149445955)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(256236452 202091290)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(703867693 450501360)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(872061506 481351486)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(372120524 739530418)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(877267982 54722420)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(362642540 104419188)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(851693067 642705127)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(201949080 833902916)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(786092225 410737872)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(698291409 615419376)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(27455201 897628096)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(756176576 661205925)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(38478189 385577496)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(163302328 264496186)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(234313922 192216735)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(413942141 490550373)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(394308025 117809834)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(941051732 266369530)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(599161319 313172256)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(5899948 476429301)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(367894677 368542487)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(580848489 219587743)'));
|
||||
INSERT INTO t1 VALUES(GeomFromText('POINT(11247614 782797569)'));
|
||||
drop table t1;
|
||||
|
||||
create table t1 select POINT(1,3);
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
@@ -437,26 +437,125 @@ INSERT INTO t1 VALUES
|
||||
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
||||
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
|
||||
|
||||
select count(*) from t1;
|
||||
|
||||
|
||||
#
|
||||
# Test that select count(*) can see inserts made in the same transaction
|
||||
#
|
||||
begin;
|
||||
|
||||
#
|
||||
# Insert duplicate rows, inside transaction
|
||||
# since failing inserts rollbacks whole transaction
|
||||
# all select count (except second) return same value
|
||||
#
|
||||
SELECT COUNT(*) FROM t1;
|
||||
INSERT INTO t1 VALUES
|
||||
(2001,2001,2001),(2002,2002,2002),(2003,2003,2003),(2004,2004,2004),(2005,2005,2005);
|
||||
SELECT COUNT(*) FROM t1;
|
||||
rollback;
|
||||
|
||||
#
|
||||
# Insert duplicate rows, inside transaction
|
||||
# try to commit
|
||||
#
|
||||
begin;
|
||||
|
||||
--error 1062
|
||||
INSERT INTO t1 VALUES
|
||||
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
||||
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
|
||||
SELECT COUNT(*) FROM t1;
|
||||
|
||||
--error 1296
|
||||
commit;
|
||||
SELECT COUNT(*) FROM t1;
|
||||
|
||||
select * from t1 where pk1=1;
|
||||
select * from t1 where pk1=10;
|
||||
select count(*) from t1 where pk1 <= 10 order by pk1;
|
||||
select count(*) from t1;
|
||||
|
||||
|
||||
#
|
||||
# Insert duplicate rows, inside transaction
|
||||
# rollback
|
||||
#
|
||||
begin;
|
||||
|
||||
--error 1062
|
||||
INSERT INTO t1 VALUES
|
||||
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
||||
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
|
||||
|
||||
rollback;
|
||||
|
||||
select * from t1 where pk1=1;
|
||||
select * from t1 where pk1=10;
|
||||
select count(*) from t1 where pk1 <= 10 order by pk1;
|
||||
select count(*) from t1;
|
||||
|
||||
|
||||
#
|
||||
# Insert duplicate rows, inside transaction
|
||||
# then try to select, finally rollback
|
||||
#
|
||||
begin;
|
||||
|
||||
--error 1062
|
||||
INSERT INTO t1 VALUES
|
||||
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
||||
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
|
||||
--error 1296
|
||||
SELECT * FROM t1 WHERE pk1=10;
|
||||
|
||||
rollback;
|
||||
|
||||
select * from t1 where pk1=1;
|
||||
select * from t1 where pk1=10;
|
||||
select count(*) from t1 where pk1 <= 10 order by pk1;
|
||||
select count(*) from t1;
|
||||
|
||||
|
||||
#
|
||||
# Insert duplicate rows, inside transaction
|
||||
# then try to select, finally commit
|
||||
#
|
||||
begin;
|
||||
|
||||
--error 1062
|
||||
INSERT INTO t1 VALUES
|
||||
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
||||
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
|
||||
|
||||
--error 1296
|
||||
SELECT * FROM t1 WHERE pk1=10;
|
||||
|
||||
--error 1296
|
||||
SELECT * FROM t1 WHERE pk1=10;
|
||||
|
||||
--error 1296
|
||||
commit;
|
||||
|
||||
select * from t1 where pk1=1;
|
||||
select * from t1 where pk1=10;
|
||||
select count(*) from t1 where pk1 <= 10 order by pk1;
|
||||
select count(*) from t1;
|
||||
|
||||
|
||||
#
|
||||
# Insert duplicate rows, inside transaction
|
||||
# then try to do another insert
|
||||
#
|
||||
begin;
|
||||
|
||||
--error 1062
|
||||
INSERT INTO t1 VALUES
|
||||
(1,1,1),(2,2,2),(3,3,3),(4,4,4),(5,5,5),
|
||||
(6,6,6),(7,7,7),(8,8,8),(9,9,9),(10,10,10);
|
||||
|
||||
--error 1296
|
||||
INSERT INTO t1 values (4000, 40, 44);
|
||||
|
||||
rollback;
|
||||
|
||||
select * from t1 where pk1=1;
|
||||
select * from t1 where pk1=10;
|
||||
select count(*) from t1 where pk1 <= 10 order by pk1;
|
||||
select count(*) from t1;
|
||||
|
||||
#
|
||||
# Insert duplicate rows using "insert .. select"
|
||||
@@ -466,4 +565,21 @@ SELECT COUNT(*) FROM t1;
|
||||
insert into t1 select * from t1 where b < 10 order by pk1;
|
||||
|
||||
|
||||
begin;
|
||||
--error 1031
|
||||
INSERT IGNORE INTO t1 VALUES(1,2,3);
|
||||
commit;
|
||||
select * from t1 where pk1=1;
|
||||
|
||||
--error 1031
|
||||
INSERT IGNORE INTO t1 VALUES(1,2,3);
|
||||
select * from t1 where pk1=1;
|
||||
|
||||
REPLACE INTO t1 values(1, 2, 3);
|
||||
select * from t1 where pk1=1;
|
||||
|
||||
--error 1031
|
||||
INSERT INTO t1 VALUES(1,1,1) ON DUPLICATE KEY UPDATE b=79;
|
||||
select * from t1 where pk1=1;
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
@@ -278,3 +278,39 @@ execute stmt using @var;
|
||||
deallocate prepare stmt;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# BUG#5510 "inserting Null in AutoIncrement primary key Column Fails"
|
||||
# (prepared statements)
|
||||
# The cause: misuse of internal MySQL 'Field' API.
|
||||
#
|
||||
|
||||
create table t1 (a bigint(20) not null primary key auto_increment);
|
||||
insert into t1 (a) values (null);
|
||||
select * from t1;
|
||||
prepare stmt from "insert into t1 (a) values (?)";
|
||||
set @var=null;
|
||||
execute stmt using @var;
|
||||
select * from t1;
|
||||
drop table t1;
|
||||
#
|
||||
# check the same for timestamps
|
||||
#
|
||||
create table t1 (a timestamp not null);
|
||||
prepare stmt from "insert into t1 (a) values (?)";
|
||||
execute stmt using @var;
|
||||
--disable_result_log
|
||||
select * from t1;
|
||||
--enable_result_log
|
||||
deallocate prepare stmt;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# BUG#5688 "Upgraded 4.1.5 Server seg faults" # (prepared statements)
|
||||
# The test case speaks for itself.
|
||||
# Just another place where we used wrong memory root for Items created
|
||||
# during statement prepare.
|
||||
#
|
||||
prepare stmt from "select 'abc' like convert('abc' using utf8)";
|
||||
execute stmt;
|
||||
execute stmt;
|
||||
deallocate prepare stmt;
|
||||
|
||||
@@ -148,6 +148,24 @@ INSERT INTO t1 (c1, c2) VALUES ('
|
||||
select hex(c1), hex(c2) from t1;
|
||||
sync_slave_with_master;
|
||||
select hex(c1), hex(c2) from t1;
|
||||
|
||||
# Now test for BUG##5705: SET CHARATER_SET_SERVERetc will be lost if
|
||||
# STOP SLAVE before following query
|
||||
|
||||
stop slave;
|
||||
delete from t1;
|
||||
change master to master_log_pos=5801;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=5937;
|
||||
# Slave is supposed to stop _after_ the INSERT, even though 5937 is
|
||||
# the position of the beginning of the INSERT; after SET slave is not
|
||||
# supposed to increment position.
|
||||
wait_for_slave_to_stop;
|
||||
# When you merge this into 5.0 you will have to adjust positions
|
||||
# above; the first master_log_pos above should be the one of the SET,
|
||||
# the second should be the one of the INSERT.
|
||||
start slave;
|
||||
sync_with_master;
|
||||
select hex(c1), hex(c2) from t1;
|
||||
connection master;
|
||||
drop table t1;
|
||||
sync_slave_with_master;
|
||||
|
||||
@@ -45,3 +45,17 @@ create table t1 (a enum(0xE4, '1', '2') not null default 0xE4);
|
||||
show columns from t1;
|
||||
show create table t1;
|
||||
drop table t1;
|
||||
|
||||
|
||||
#
|
||||
# Bug #5628 German characters in field-defs will be '?'
|
||||
# with some table definitions
|
||||
#
|
||||
set names latin1;
|
||||
CREATE TABLE t1 (
|
||||
a INT default 1,
|
||||
b ENUM('value','<27><><EFBFBD>_value','<27><><EFBFBD>') character set latin1 NOT NULL
|
||||
);
|
||||
show create table t1;
|
||||
show columns from t1;
|
||||
drop table t1;
|
||||
|
||||
Reference in New Issue
Block a user