mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Manual merge
BitKeeper/etc/logging_ok: auto-union configure.in: Auto merged include/my_sys.h: Auto merged mysql-test/r/ps.result: Auto merged mysql-test/t/ndb_restore.test: Auto merged ndb/test/src/NDBT_ResultRow.cpp: Auto merged sql/ha_innodb.cc: Auto merged sql/item.cc: Auto merged sql/item.h: Auto merged
This commit is contained in:
@ -247,3 +247,4 @@ count(*)
|
||||
3
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
drop table if exists t1_c,t2_c,t3_c,t4_c,t5_c,t6_c,t7_c,t8_c,t9_c;
|
||||
520093696,1
|
||||
|
@ -595,3 +595,41 @@ c1 c2
|
||||
200887 860
|
||||
200887 200887
|
||||
deallocate prepare stmt;
|
||||
drop table t1;
|
||||
create table t1 (
|
||||
id bigint(20) not null auto_increment,
|
||||
code varchar(20) character set utf8 collate utf8_bin not null default '',
|
||||
company_name varchar(250) character set utf8 collate utf8_bin default null,
|
||||
setup_mode tinyint(4) default null,
|
||||
start_date datetime default null,
|
||||
primary key (id), unique key code (code)
|
||||
);
|
||||
create table t2 (
|
||||
id bigint(20) not null auto_increment,
|
||||
email varchar(250) character set utf8 collate utf8_bin default null,
|
||||
name varchar(250) character set utf8 collate utf8_bin default null,
|
||||
t1_id bigint(20) default null,
|
||||
password varchar(250) character set utf8 collate utf8_bin default null,
|
||||
primary_contact tinyint(4) not null default '0',
|
||||
email_opt_in tinyint(4) not null default '1',
|
||||
primary key (id), unique key email (email), key t1_id (t1_id),
|
||||
constraint t2_fk1 foreign key (t1_id) references t1 (id)
|
||||
);
|
||||
insert into t1 values
|
||||
(1, 'demo', 'demo s', 0, current_date()),
|
||||
(2, 'code2', 'name 2', 0, current_date()),
|
||||
(3, 'code3', 'name 3', 0, current_date());
|
||||
insert into t2 values
|
||||
(2, 'email1', 'name1', 3, 'password1', 0, 0),
|
||||
(3, 'email2', 'name1', 1, 'password2', 1, 0),
|
||||
(5, 'email3', 'name3', 2, 'password3', 0, 0);
|
||||
prepare stmt from 'select t2.id from t2, t1 where (t1.id=? and t2.t1_id=t1.id)';
|
||||
set @a=1;
|
||||
execute stmt using @a;
|
||||
id
|
||||
3
|
||||
select t2.id from t2, t1 where (t1.id=1 and t2.t1_id=t1.id);
|
||||
id
|
||||
3
|
||||
deallocate prepare stmt;
|
||||
drop table t1, t2;
|
||||
|
@ -209,3 +209,9 @@ select count(*)
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
drop table if exists t1_c,t2_c,t3_c,t4_c,t5_c,t6_c,t7_c,t8_c,t9_c;
|
||||
--enable_warnings
|
||||
|
||||
#
|
||||
# Test BUG#10287
|
||||
#
|
||||
|
||||
--exec $NDB_TOOLS_DIR/ndb_select_all -d sys -D , SYSTAB_0 | grep 520093696
|
||||
|
@ -7,8 +7,8 @@ drop table if exists t1,t2;
|
||||
|
||||
create table t1
|
||||
(
|
||||
a int primary key,
|
||||
b char(10)
|
||||
a int primary key,
|
||||
b char(10)
|
||||
);
|
||||
insert into t1 values (1,'one');
|
||||
insert into t1 values (2,'two');
|
||||
@ -88,7 +88,7 @@ explain prepare stmt6 from 'insert into t1 values (5,"five"); select2';
|
||||
|
||||
create table t2
|
||||
(
|
||||
a int
|
||||
a int
|
||||
);
|
||||
|
||||
insert into t2 values (0);
|
||||
@ -143,15 +143,15 @@ drop table t1;
|
||||
#
|
||||
create table t1
|
||||
(
|
||||
c1 tinyint, c2 smallint, c3 mediumint, c4 int,
|
||||
c5 integer, c6 bigint, c7 float, c8 double,
|
||||
c9 double precision, c10 real, c11 decimal(7, 4), c12 numeric(8, 4),
|
||||
c13 date, c14 datetime, c15 timestamp(14), c16 time,
|
||||
c17 year, c18 bit, c19 bool, c20 char,
|
||||
c21 char(10), c22 varchar(30), c23 tinyblob, c24 tinytext,
|
||||
c25 blob, c26 text, c27 mediumblob, c28 mediumtext,
|
||||
c29 longblob, c30 longtext, c31 enum('one', 'two', 'three'),
|
||||
c32 set('monday', 'tuesday', 'wednesday')
|
||||
c1 tinyint, c2 smallint, c3 mediumint, c4 int,
|
||||
c5 integer, c6 bigint, c7 float, c8 double,
|
||||
c9 double precision, c10 real, c11 decimal(7, 4), c12 numeric(8, 4),
|
||||
c13 date, c14 datetime, c15 timestamp(14), c16 time,
|
||||
c17 year, c18 bit, c19 bool, c20 char,
|
||||
c21 char(10), c22 varchar(30), c23 tinyblob, c24 tinytext,
|
||||
c25 blob, c26 text, c27 mediumblob, c28 mediumtext,
|
||||
c29 longblob, c30 longtext, c31 enum('one', 'two', 'three'),
|
||||
c32 set('monday', 'tuesday', 'wednesday')
|
||||
) engine = MYISAM ;
|
||||
create table t2 like t1;
|
||||
|
||||
@ -181,8 +181,8 @@ drop table t1;
|
||||
# eq() for parameters
|
||||
#
|
||||
create table t1 (id int(10) unsigned NOT NULL default '0',
|
||||
name varchar(64) NOT NULL default '',
|
||||
PRIMARY KEY (id), UNIQUE KEY `name` (`name`));
|
||||
name varchar(64) NOT NULL default '',
|
||||
PRIMARY KEY (id), UNIQUE KEY `name` (`name`));
|
||||
insert into t1 values (1,'1'),(2,'2'),(3,'3'),(4,'4'),(5,'5'),(6,'6'),(7,'7');
|
||||
prepare stmt1 from 'select name from t1 where id=? or id=?';
|
||||
set @id1=1,@id2=6;
|
||||
@ -368,13 +368,13 @@ insert into t1 (a) values (1), (2), (3), (4);
|
||||
set @precision=10000000000;
|
||||
--replace_column 1 - 3 -
|
||||
select rand(),
|
||||
cast(rand(10)*@precision as unsigned integer),
|
||||
cast(rand(a)*@precision as unsigned integer) from t1;
|
||||
cast(rand(10)*@precision as unsigned integer),
|
||||
cast(rand(a)*@precision as unsigned integer) from t1;
|
||||
prepare stmt from
|
||||
"select rand(),
|
||||
cast(rand(10)*@precision as unsigned integer),
|
||||
cast(rand(a)*@precision as unsigned integer),
|
||||
cast(rand(?)*@precision as unsigned integer) from t1";
|
||||
cast(rand(10)*@precision as unsigned integer),
|
||||
cast(rand(a)*@precision as unsigned integer),
|
||||
cast(rand(?)*@precision as unsigned integer) from t1";
|
||||
set @var=1;
|
||||
--replace_column 1 - 3 -
|
||||
execute stmt using @var;
|
||||
@ -513,13 +513,13 @@ deallocate prepare stmt;
|
||||
#
|
||||
|
||||
create table t1 (a char(3) not null, b char(3) not null,
|
||||
c char(3) not null, primary key (a, b, c));
|
||||
c char(3) not null, primary key (a, b, c));
|
||||
create table t2 like t1;
|
||||
|
||||
# reduced query
|
||||
prepare stmt from
|
||||
"select t1.a from (t1 left outer join t2 on t2.a=1 and t1.b=t2.b)
|
||||
where t1.a=1";
|
||||
"select t1.a from (t1 left outer join t2 on t2.a=1 and t1.b=t2.b)
|
||||
where t1.a=1";
|
||||
execute stmt;
|
||||
execute stmt;
|
||||
execute stmt;
|
||||
@ -546,19 +546,19 @@ drop table t1,t2;
|
||||
#
|
||||
|
||||
eval SET @aux= "SELECT COUNT(*)
|
||||
FROM INFORMATION_SCHEMA.COLUMNS A,
|
||||
INFORMATION_SCHEMA.COLUMNS B
|
||||
WHERE A.TABLE_SCHEMA = B.TABLE_SCHEMA
|
||||
AND A.TABLE_NAME = B.TABLE_NAME
|
||||
AND A.COLUMN_NAME = B.COLUMN_NAME AND
|
||||
A.TABLE_NAME = 'user'";
|
||||
FROM INFORMATION_SCHEMA.COLUMNS A,
|
||||
INFORMATION_SCHEMA.COLUMNS B
|
||||
WHERE A.TABLE_SCHEMA = B.TABLE_SCHEMA
|
||||
AND A.TABLE_NAME = B.TABLE_NAME
|
||||
AND A.COLUMN_NAME = B.COLUMN_NAME AND
|
||||
A.TABLE_NAME = 'user'";
|
||||
|
||||
let $exec_loop_count= 3;
|
||||
eval prepare my_stmt from @aux;
|
||||
while ($exec_loop_count)
|
||||
{
|
||||
eval execute my_stmt;
|
||||
dec $exec_loop_count;
|
||||
eval execute my_stmt;
|
||||
dec $exec_loop_count;
|
||||
}
|
||||
deallocate prepare my_stmt;
|
||||
|
||||
@ -572,11 +572,11 @@ create table t1 (id int)|
|
||||
insert into t1 values(1)|
|
||||
create procedure p1(a int, b int)
|
||||
begin
|
||||
declare c int;
|
||||
select max(id)+1 into c from t1;
|
||||
insert into t1 select a+b;
|
||||
insert into t1 select a-b;
|
||||
insert into t1 select a-c;
|
||||
declare c int;
|
||||
select max(id)+1 into c from t1;
|
||||
insert into t1 select a+b;
|
||||
insert into t1 select a-b;
|
||||
insert into t1 select a-c;
|
||||
end|
|
||||
set @a= 3, @b= 4|
|
||||
prepare stmt from "call p1(?, ?)"|
|
||||
@ -597,7 +597,7 @@ delimiter ;|
|
||||
|
||||
drop table if exists t1;
|
||||
create table t1 (c1 int(11) not null, c2 int(11) not null,
|
||||
primary key (c1,c2), key c2 (c2), key c1 (c1));
|
||||
primary key (c1,c2), key c2 (c2), key c1 (c1));
|
||||
|
||||
insert into t1 values (200887, 860);
|
||||
insert into t1 values (200887, 200887);
|
||||
@ -614,3 +614,50 @@ set @a=200887, @b=860;
|
||||
execute stmt using @a, @b;
|
||||
deallocate prepare stmt;
|
||||
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Bug#9777 - another occurrence of the problem stated in Bug#9096:
|
||||
# we can not compare basic constants by their names, because a placeholder
|
||||
# is a basic constant while his name is always '?'
|
||||
#
|
||||
|
||||
create table t1 (
|
||||
id bigint(20) not null auto_increment,
|
||||
code varchar(20) character set utf8 collate utf8_bin not null default '',
|
||||
company_name varchar(250) character set utf8 collate utf8_bin default null,
|
||||
setup_mode tinyint(4) default null,
|
||||
start_date datetime default null,
|
||||
primary key (id), unique key code (code)
|
||||
);
|
||||
|
||||
create table t2 (
|
||||
id bigint(20) not null auto_increment,
|
||||
email varchar(250) character set utf8 collate utf8_bin default null,
|
||||
name varchar(250) character set utf8 collate utf8_bin default null,
|
||||
t1_id bigint(20) default null,
|
||||
password varchar(250) character set utf8 collate utf8_bin default null,
|
||||
primary_contact tinyint(4) not null default '0',
|
||||
email_opt_in tinyint(4) not null default '1',
|
||||
primary key (id), unique key email (email), key t1_id (t1_id),
|
||||
constraint t2_fk1 foreign key (t1_id) references t1 (id)
|
||||
);
|
||||
|
||||
insert into t1 values
|
||||
(1, 'demo', 'demo s', 0, current_date()),
|
||||
(2, 'code2', 'name 2', 0, current_date()),
|
||||
(3, 'code3', 'name 3', 0, current_date());
|
||||
|
||||
insert into t2 values
|
||||
(2, 'email1', 'name1', 3, 'password1', 0, 0),
|
||||
(3, 'email2', 'name1', 1, 'password2', 1, 0),
|
||||
(5, 'email3', 'name3', 2, 'password3', 0, 0);
|
||||
|
||||
prepare stmt from 'select t2.id from t2, t1 where (t1.id=? and t2.t1_id=t1.id)';
|
||||
set @a=1;
|
||||
execute stmt using @a;
|
||||
|
||||
select t2.id from t2, t1 where (t1.id=1 and t2.t1_id=t1.id);
|
||||
|
||||
deallocate prepare stmt;
|
||||
drop table t1, t2;
|
||||
|
Reference in New Issue
Block a user