mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge
mysql-test/t/sp.test: SCCS merged
This commit is contained in:
@ -17,6 +17,17 @@
|
||||
|
||||
## Process this file with automake to create Makefile.in
|
||||
|
||||
if HAVE_NDBCLUSTER_DB
|
||||
SUBDIRS = ndb
|
||||
DIST_SUBDIRS=ndb
|
||||
else
|
||||
# If one uses automake conditionals, automake will automatically
|
||||
# include all possible branches to DIST_SUBDIRS goal.
|
||||
# Reset DIST_SUBDIRS if we don't use NDB
|
||||
SUBDIRS=
|
||||
DIST_SUBDIRS=
|
||||
endif
|
||||
|
||||
benchdir_root= $(prefix)
|
||||
testdir = $(benchdir_root)/mysql-test
|
||||
EXTRA_SCRIPTS = mysql-test-run.sh install_test_db.sh
|
||||
@ -72,8 +83,10 @@ SUFFIXES = .sh
|
||||
-e 's!@''libexecdir''@!$(libexecdir)!g' \
|
||||
-e 's!@''PERL''@!@PERL@!' \
|
||||
-e 's!@''VERSION''@!@VERSION@!' \
|
||||
-e 's!@''MYSQL_TCP_PORT''@!@MYSQL_TCP_PORT@!' \
|
||||
-e 's!@''MYSQL_BASE_VERSION''@!@MYSQL_BASE_VERSION@!' \
|
||||
-e 's!@''MYSQL_UNIX_ADDR''@!@MYSQL_UNIX_ADDR@!' \
|
||||
-e 's!@''MYSQL_TCP_PORT''@!@MYSQL_TCP_PORT@!' \
|
||||
-e 's!@''MYSQL_NO_DASH_VERSION''@!@MYSQL_NO_DASH_VERSION@!' \
|
||||
-e 's!@''MYSQL_SERVER_SUFFIX''@!@MYSQL_SERVER_SUFFIX@!' \
|
||||
$< > $@-t
|
||||
|
@ -12,7 +12,7 @@ conflict with it.
|
||||
All tests must pass. If one or more of them fail on your system, please
|
||||
read the following manual section of how to report the problem:
|
||||
|
||||
http://www.mysql.com/doc/M/y/MySQL_test_suite.html
|
||||
http://dev.mysql.com/doc/mysql/en/MySQL_test_suite.html
|
||||
|
||||
|
||||
You can create your own test cases. To create a test case:
|
||||
|
4
mysql-test/include/have_archive.inc
Normal file
4
mysql-test/include/have_archive.inc
Normal file
@ -0,0 +1,4 @@
|
||||
-- require r/have_archive.require
|
||||
disable_query_log;
|
||||
show variables like "have_archive";
|
||||
enable_query_log;
|
4
mysql-test/include/have_debug.inc
Normal file
4
mysql-test/include/have_debug.inc
Normal file
@ -0,0 +1,4 @@
|
||||
-- require r/have_debug.require
|
||||
disable_query_log;
|
||||
select (version() like "%debug%") as debug;
|
||||
enable_query_log;
|
4
mysql-test/include/have_geometry.inc
Normal file
4
mysql-test/include/have_geometry.inc
Normal file
@ -0,0 +1,4 @@
|
||||
-- require r/have_geometry.require
|
||||
disable_query_log;
|
||||
show variables like "have_geometry";
|
||||
enable_query_log;
|
43
mysql-test/include/ps_create.inc
Normal file
43
mysql-test/include/ps_create.inc
Normal file
@ -0,0 +1,43 @@
|
||||
############### include/ps_create.inc ##################
|
||||
# #
|
||||
# drop + create the tables used in most PS test cases #
|
||||
# t/ps_*.test #
|
||||
# #
|
||||
########################################################
|
||||
|
||||
#
|
||||
# NOTE: PLEASE SEE ps_1general.test (bottom)
|
||||
# BEFORE ADDING NEW TABLES HERE !!!
|
||||
#
|
||||
# Please be aware, that this file will be sourced by several
|
||||
# test case files stored within the subdirectory 't'.
|
||||
# So every change here will affect several test cases.
|
||||
|
||||
#----------- Please insert your table definitions here ----------#
|
||||
|
||||
|
||||
#---- Please do not alter the following table definitions -------#
|
||||
|
||||
--disable_warnings
|
||||
drop table if exists t1, t_many_col_types ;
|
||||
--enable_warnings
|
||||
|
||||
eval create table t1
|
||||
(
|
||||
a int, b varchar(30),
|
||||
primary key(a)
|
||||
) engine = $type ;
|
||||
|
||||
eval create table t_many_col_types
|
||||
(
|
||||
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'),
|
||||
primary key(c1)
|
||||
) engine = $type ;
|
239
mysql-test/include/ps_modify.inc
Normal file
239
mysql-test/include/ps_modify.inc
Normal file
@ -0,0 +1,239 @@
|
||||
###################### ps_modify.inc #########################
|
||||
# #
|
||||
# Tests for prepared statements: INSERT/DELETE/UPDATE... #
|
||||
# #
|
||||
##############################################################
|
||||
|
||||
#
|
||||
# NOTE: PLEASE SEE ps_1general.test (bottom)
|
||||
# BEFORE ADDING NEW TEST CASES HERE !!!
|
||||
|
||||
#
|
||||
# Please be aware, that this file will be sourced by several test case files
|
||||
# stored within the subdirectory 't'. So every change here will affect
|
||||
# several test cases.
|
||||
#
|
||||
# Please do not modify the structure (DROP/ALTER..) of the tables
|
||||
# 't1' and 't_many_col_types'.
|
||||
#
|
||||
# But you are encouraged to use these two tables within your statements
|
||||
# whenever possible.
|
||||
# t1 - very simple table
|
||||
# t_many_col_types - table with nearly all available column types
|
||||
#
|
||||
# The structure and the content of these tables can be found in
|
||||
# include/ps_create.inc CREATE TABLE ...
|
||||
# include/ps_renew.inc DELETE all rows and INSERT some rows
|
||||
#
|
||||
# Both tables are managed by the same storage engine.
|
||||
# The type of the storage engine is stored in the variable '$type' .
|
||||
|
||||
|
||||
|
||||
#------------------- Please insert your test cases here -------------------#
|
||||
|
||||
|
||||
|
||||
#-------- Please be very carefull when editing behind this line ----------#
|
||||
|
||||
--disable_query_log
|
||||
select '------ delete tests ------' as test_sequence ;
|
||||
--enable_query_log
|
||||
--source include/ps_renew.inc
|
||||
|
||||
## delete without parameter
|
||||
prepare stmt1 from 'delete from t1 where a=2' ;
|
||||
execute stmt1;
|
||||
select a,b from t1 where a=2;
|
||||
# delete with row not found
|
||||
execute stmt1;
|
||||
|
||||
## delete with one parameter in the where clause
|
||||
insert into t1 values(0,NULL);
|
||||
set @arg00=NULL;
|
||||
prepare stmt1 from 'delete from t1 where b=?' ;
|
||||
execute stmt1 using @arg00;
|
||||
select a,b from t1 where b is NULL ;
|
||||
set @arg00='one';
|
||||
execute stmt1 using @arg00;
|
||||
select a,b from t1 where b=@arg00;
|
||||
|
||||
## truncate a table
|
||||
--error 1295
|
||||
prepare stmt1 from 'truncate table t1' ;
|
||||
|
||||
|
||||
--disable_query_log
|
||||
select '------ update tests ------' as test_sequence ;
|
||||
--enable_query_log
|
||||
--source include/ps_renew.inc
|
||||
|
||||
## update without parameter
|
||||
prepare stmt1 from 'update t1 set b=''a=two'' where a=2' ;
|
||||
execute stmt1;
|
||||
select a,b from t1 where a=2;
|
||||
# dummy update
|
||||
execute stmt1;
|
||||
select a,b from t1 where a=2;
|
||||
|
||||
## update with one parameter in the set clause
|
||||
set @arg00=NULL;
|
||||
prepare stmt1 from 'update t1 set b=? where a=2' ;
|
||||
execute stmt1 using @arg00;
|
||||
select a,b from t1 where a=2;
|
||||
set @arg00='two';
|
||||
execute stmt1 using @arg00;
|
||||
select a,b from t1 where a=2;
|
||||
|
||||
## update with one parameter in the where cause
|
||||
set @arg00=2;
|
||||
prepare stmt1 from 'update t1 set b=NULL where a=?' ;
|
||||
execute stmt1 using @arg00;
|
||||
select a,b from t1 where a=@arg00;
|
||||
update t1 set b='two' where a=@arg00;
|
||||
# row not found in update
|
||||
set @arg00=2000;
|
||||
execute stmt1 using @arg00;
|
||||
select a,b from t1 where a=@arg00;
|
||||
|
||||
## update on primary key column (two parameters)
|
||||
set @arg00=2;
|
||||
set @arg01=22;
|
||||
prepare stmt1 from 'update t1 set a=? where a=?' ;
|
||||
# dummy update
|
||||
execute stmt1 using @arg00, @arg00;
|
||||
select a,b from t1 where a=@arg00;
|
||||
execute stmt1 using @arg01, @arg00;
|
||||
select a,b from t1 where a=@arg01;
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
select a,b from t1 where a=@arg00;
|
||||
set @arg00=NULL;
|
||||
set @arg01=2;
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
select a,b from t1;
|
||||
set @arg00=0;
|
||||
execute stmt1 using @arg01, @arg00;
|
||||
select a,b from t1;
|
||||
|
||||
## update with subquery and several parameters
|
||||
set @arg00=23;
|
||||
set @arg01='two';
|
||||
set @arg02=2;
|
||||
set @arg03='two';
|
||||
set @arg04=2;
|
||||
--disable_warnings
|
||||
drop table if exists t2;
|
||||
--enable_warnings
|
||||
create table t2 as select a,b from t1 ;
|
||||
prepare stmt1 from 'update t1 set a=? where b=?
|
||||
and a in (select ? from t2
|
||||
where b = ? or a = ?)';
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04 ;
|
||||
select a,b from t1 where a = @arg00 ;
|
||||
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 ;
|
||||
drop table t2 ;
|
||||
|
||||
## update with parameters in limit
|
||||
set @arg00=1;
|
||||
prepare stmt1 from 'update t1 set b=''bla''
|
||||
where a=2
|
||||
limit 1';
|
||||
execute stmt1 ;
|
||||
select a,b from t1 where b = 'bla' ;
|
||||
# currently (May 2004, Version 4.1) it is impossible
|
||||
-- error 1064
|
||||
prepare stmt1 from 'update t1 set b=''bla''
|
||||
where a=2
|
||||
limit ?';
|
||||
|
||||
--disable_query_log
|
||||
select '------ insert tests ------' as test_sequence ;
|
||||
--enable_query_log
|
||||
--source include/ps_renew.inc
|
||||
|
||||
## insert without parameter
|
||||
prepare stmt1 from 'insert into t1 values(5, ''five'' )';
|
||||
execute stmt1;
|
||||
select a,b from t1 where a = 5;
|
||||
|
||||
## insert with one parameter in values part
|
||||
set @arg00='six' ;
|
||||
prepare stmt1 from 'insert into t1 values(6, ? )';
|
||||
execute stmt1 using @arg00;
|
||||
select a,b from t1 where b = @arg00;
|
||||
# the second insert fails, because the first column is primary key
|
||||
--error 1062
|
||||
execute stmt1 using @arg00;
|
||||
set @arg00=NULL ;
|
||||
prepare stmt1 from 'insert into t1 values(0, ? )';
|
||||
execute stmt1 using @arg00;
|
||||
select a,b from t1 where b is NULL;
|
||||
|
||||
## insert with two parameter in values part
|
||||
set @arg00=8 ;
|
||||
set @arg01='eight' ;
|
||||
prepare stmt1 from 'insert into t1 values(?, ? )';
|
||||
execute stmt1 using @arg00, @arg01 ;
|
||||
select a,b from t1 where b = @arg01;
|
||||
|
||||
## insert with two rows in values part
|
||||
set @arg00=81 ;
|
||||
set @arg01='8-1' ;
|
||||
set @arg02=82 ;
|
||||
set @arg03='8-2' ;
|
||||
prepare stmt1 from 'insert into t1 values(?,?),(?,?)';
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
|
||||
select a,b from t1 where a in (@arg00,@arg02) ;
|
||||
|
||||
## insert with two parameter in the set part
|
||||
set @arg00=9 ;
|
||||
set @arg01='nine' ;
|
||||
prepare stmt1 from 'insert into t1 set a=?, b=? ';
|
||||
execute stmt1 using @arg00, @arg01 ;
|
||||
select a,b from t1 where a = @arg00 ;
|
||||
|
||||
## insert with parameters in the ON DUPLICATE KEY part
|
||||
set @arg00=6 ;
|
||||
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;
|
||||
set @arg00=81 ;
|
||||
set @arg01=1 ;
|
||||
--error 1062
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
|
||||
## many parameters
|
||||
set @1000=1000 ;
|
||||
set @x1000_2="x1000_2" ;
|
||||
set @x1000_3="x1000_3" ;
|
||||
|
||||
set @x1000="x1000" ;
|
||||
set @1100=1100 ;
|
||||
set @x1100="x1100" ;
|
||||
set @100=100 ;
|
||||
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 ;
|
||||
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 ;
|
||||
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 ;
|
||||
delete from t1 where a >= 1000 ;
|
||||
|
||||
## replace
|
||||
--error 1295
|
||||
prepare stmt1 from ' replace into t1 (a,b) select 100, ''hundred'' ';
|
97
mysql-test/include/ps_modify1.inc
Normal file
97
mysql-test/include/ps_modify1.inc
Normal file
@ -0,0 +1,97 @@
|
||||
###################### ps_modify1.inc ########################
|
||||
# #
|
||||
# Tests for prepared statements: big INSERT .. SELECTs #
|
||||
# #
|
||||
##############################################################
|
||||
|
||||
#
|
||||
# NOTE: THESE TESTS CANNOT BE APPLIED TO TABLES OF TYPE MERGE.
|
||||
# Test which can be applied to MERGE tables should be stored in
|
||||
# include/ps_modify.inc .
|
||||
#
|
||||
|
||||
#
|
||||
# NOTE: PLEASE SEE ps_1general.test (bottom)
|
||||
# BEFORE ADDING NEW TEST CASES HERE !!!
|
||||
|
||||
#
|
||||
# Please be aware, that this file will be sourced by several test case files
|
||||
# stored within the subdirectory 't'. So every change here will affect
|
||||
# several test cases.
|
||||
#
|
||||
# Please do not modify the structure (DROP/ALTER..) of the tables
|
||||
# 't1' and 't_many_col_types'.
|
||||
#
|
||||
# But you are encouraged to use these two tables within your statements
|
||||
# (DELETE/UPDATE/...) whenever possible.
|
||||
# t1 - very simple table
|
||||
# t_many_col_types - table with nearly all available column types
|
||||
#
|
||||
# The structure and the content of these tables can be found in
|
||||
# include/ps_create.inc CREATE TABLE ...
|
||||
# include/ps_renew.inc DELETE all rows and INSERT some rows
|
||||
#
|
||||
# Both tables are managed by the same storage engine.
|
||||
# The type of the storage engine is stored in the variable '$type' .
|
||||
|
||||
|
||||
|
||||
#------------------- Please insert your test cases here -------------------#
|
||||
|
||||
|
||||
#-------- Please be very carefull when editing behind this line ----------#
|
||||
|
||||
## big insert select statements
|
||||
set @duplicate='duplicate ' ;
|
||||
set @1000=1000 ;
|
||||
set @5=5 ;
|
||||
select a,b from t1 where a < 5 ;
|
||||
--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 ;
|
||||
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 ;
|
||||
delete from t1 where a >= 1000 ;
|
||||
|
||||
set @float=1.00;
|
||||
set @five='five' ;
|
||||
--disable_warnings
|
||||
drop table if exists t2;
|
||||
--enable_warnings
|
||||
create table t2 like t1 ;
|
||||
--enable_info
|
||||
insert into t2 (b,a)
|
||||
select @duplicate, sum(first.a) from t1 first, t1 second
|
||||
where first.a <> @5 and second.b = first.b
|
||||
and second.b <> @five
|
||||
group by second.b
|
||||
having sum(second.a) > @2
|
||||
union
|
||||
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;
|
||||
delete from t2 ;
|
||||
prepare stmt1 from ' insert into t2 (b,a)
|
||||
select ?, sum(first.a)
|
||||
from t1 first, t1 second
|
||||
where first.a <> ? and second.b = first.b and second.b <> ?
|
||||
group by second.b
|
||||
having sum(second.a) > ?
|
||||
union
|
||||
select b, a + ? from t1
|
||||
where (a,b) in ( select sqrt(a+?)+CAST(? AS signed),b
|
||||
from t1 ) ' ;
|
||||
--enable_info
|
||||
execute stmt1 using @duplicate, @5, @five, @2, @100, @1, @float ;
|
||||
--disable_info
|
||||
select a,b from t2;
|
||||
drop table t2;
|
621
mysql-test/include/ps_query.inc
Normal file
621
mysql-test/include/ps_query.inc
Normal file
@ -0,0 +1,621 @@
|
||||
####################### ps_query.inc #########################
|
||||
# #
|
||||
# Tests for prepared statements: SELECTs #
|
||||
# #
|
||||
##############################################################
|
||||
|
||||
#
|
||||
# NOTE: PLEASE SEE ps_1general.test (bottom)
|
||||
# BEFORE ADDING NEW TEST CASES HERE !!!
|
||||
|
||||
#
|
||||
# Please be aware, that this file will be sourced by several test case files
|
||||
# stored within the subdirectory 't'. So every change here will affect
|
||||
# several test cases.
|
||||
#
|
||||
# Please do not modify (INSERT/UPDATE/DELETE) the content or the
|
||||
# structure (DROP/ALTER..) of the tables
|
||||
# 't1' and 't_many_col_types'.
|
||||
# Such tests should be done in include/ps_modify.inc .
|
||||
#
|
||||
# But you are encouraged to use these two tables within your SELECT statements
|
||||
# whenever possible.
|
||||
# t1 - very simple table
|
||||
# t_many_col_types - table with nearly all available column types
|
||||
#
|
||||
# The structure and the content of these tables can be found in
|
||||
# include/ps_create.inc CREATE TABLE ...
|
||||
# include/ps_renew.inc DELETE all rows and INSERT some rows
|
||||
#
|
||||
# Both tables are managed by the same storage engine.
|
||||
# The type of the storage engine is stored in the variable '$type' .
|
||||
|
||||
|
||||
|
||||
#------------------- Please insert your test cases here -------------------#
|
||||
|
||||
|
||||
|
||||
#-------- Please be very carefull when editing behind this line ----------#
|
||||
|
||||
--disable_query_log
|
||||
select '------ simple select tests ------' as test_sequence ;
|
||||
--enable_query_log
|
||||
|
||||
##### parameter used for keyword like SELECT (must fail)
|
||||
set @arg00='SELECT' ;
|
||||
# mysqltest gives no output for the next statement, Why ??
|
||||
--error 1064
|
||||
@arg00 a from t1 where a=1;
|
||||
--error 1064
|
||||
prepare stmt1 from ' ? a from t1 where a=1 ';
|
||||
|
||||
##### parameter in select column list
|
||||
## parameter is not NULL
|
||||
set @arg00=1 ;
|
||||
select @arg00, b from t1 where a=1 ;
|
||||
prepare stmt1 from ' select ?, b from t1 where a=1 ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
set @arg00='lion' ;
|
||||
select @arg00, b from t1 where a=1 ;
|
||||
prepare stmt1 from ' select ?, b from t1 where a=1 ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
## parameter is NULL
|
||||
set @arg00=NULL ;
|
||||
select @arg00, b from t1 where a=1 ;
|
||||
prepare stmt1 from ' select ?, b from t1 where a=1 ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
## parameter within an expression
|
||||
set @arg00=1 ;
|
||||
select b, a - @arg00 from t1 where a=1 ;
|
||||
prepare stmt1 from ' select b, a - ? from t1 where a=1 ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
## parameter is within a function
|
||||
# variations on 'substr'
|
||||
set @arg00='MySQL' ;
|
||||
select substr(@arg00,1,2) from t1 where a=1 ;
|
||||
prepare stmt1 from ' select substr(?,1,2) from t1 where a=1 ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
set @arg00=3 ;
|
||||
select substr('MySQL',@arg00,5) from t1 where a=1 ;
|
||||
prepare stmt1 from ' select substr(''MySQL'',?,5) from t1 where a=1 ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
select substr('MySQL',1,@arg00) from t1 where a=1 ;
|
||||
prepare stmt1 from ' select substr(''MySQL'',1,?) from t1 where a=1 ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
# variations on 'concat'
|
||||
set @arg00='MySQL' ;
|
||||
select a , concat(@arg00,b) from t1 ;
|
||||
# BUG#3796
|
||||
prepare stmt1 from ' select a , concat(?,b) from t1 ' ;
|
||||
execute stmt1 using @arg00;
|
||||
#
|
||||
select a , concat(b,@arg00) from t1 ;
|
||||
prepare stmt1 from ' select a , concat(b,?) from t1 ' ;
|
||||
execute stmt1 using @arg00;
|
||||
|
||||
# variations on 'group_concat'
|
||||
set @arg00='MySQL' ;
|
||||
select group_concat(@arg00,b) from t1
|
||||
group by 'a' ;
|
||||
prepare stmt1 from ' select group_concat(?,b) from t1
|
||||
group by ''a'' ' ;
|
||||
execute stmt1 using @arg00;
|
||||
#
|
||||
select group_concat(b,@arg00) from t1
|
||||
group by 'a' ;
|
||||
prepare stmt1 from ' select group_concat(b,?) from t1
|
||||
group by ''a'' ' ;
|
||||
execute stmt1 using @arg00;
|
||||
|
||||
## two parameters
|
||||
set @arg00='first' ;
|
||||
set @arg01='second' ;
|
||||
set @arg02=NULL;
|
||||
select @arg00, @arg01 from t1 where a=1 ;
|
||||
prepare stmt1 from ' select ?, ? from t1 where a=1 ' ;
|
||||
execute stmt1 using @arg00, @arg01 ;
|
||||
# NULL as first and/or last parameter
|
||||
execute stmt1 using @arg02, @arg01 ;
|
||||
execute stmt1 using @arg00, @arg02 ;
|
||||
execute stmt1 using @arg02, @arg02 ;
|
||||
# case derived from client_test.c: test_ps_conj_select()
|
||||
# for BUG#3420: select returned all rows of the table
|
||||
--disable_warnings
|
||||
drop table if exists new_tab ;
|
||||
--enable_warnings
|
||||
create table new_tab (id1 int(11) not null default '0',
|
||||
value2 varchar(100), value1 varchar(100)) ;
|
||||
insert into new_tab values (1,'hh','hh'),(2,'hh','hh'),
|
||||
(1,'ii','ii'),(2,'ii','ii') ;
|
||||
prepare stmt1 from ' select id1,value1 from new_tab where id1=? or value1=? ' ;
|
||||
set @arg00=1 ;
|
||||
set @arg01='hh' ;
|
||||
execute stmt1 using @arg00, @arg01 ;
|
||||
drop table new_tab ;
|
||||
# case derived from client_test.c: test_bug1180()
|
||||
# for BUG#1180 optimized away part of WHERE clause
|
||||
--disable_warnings
|
||||
drop table if exists new_tab ;
|
||||
--enable_warnings
|
||||
create table new_tab(session_id char(9) not null) ;
|
||||
insert into new_tab values ('abc') ;
|
||||
prepare stmt1 from ' select * from new_tab
|
||||
where ?=''1111'' and session_id = ''abc'' ' ;
|
||||
set @arg00='abc' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
set @arg00='1111' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
set @arg00='abc' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
drop table new_tab ;
|
||||
|
||||
|
||||
##### parameter used for keyword FROM (must fail)
|
||||
set @arg00='FROM' ;
|
||||
--error 1064
|
||||
select a @arg00 t1 where a=1 ;
|
||||
--error 1064
|
||||
prepare stmt1 from ' select a ? t1 where a=1 ' ;
|
||||
##### parameter used for tablename (must fail)
|
||||
set @arg00='t1' ;
|
||||
--error 1064
|
||||
select a from @arg00 where a=1 ;
|
||||
--error 1064
|
||||
prepare stmt1 from ' select a from ? where a=1 ' ;
|
||||
##### parameter used for keyword WHERE tablename (must fail)
|
||||
set @arg00='WHERE' ;
|
||||
--error 1064
|
||||
select a from t1 @arg00 a=1 ;
|
||||
--error 1064
|
||||
prepare stmt1 from ' select a from t1 ? a=1 ' ;
|
||||
|
||||
##### parameter used in where clause
|
||||
# parameter is not NULL
|
||||
set @arg00=1 ;
|
||||
select a FROM t1 where a=@arg00 ;
|
||||
prepare stmt1 from ' select a FROM t1 where a=? ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
set @arg00=1000 ;
|
||||
# row not found
|
||||
execute stmt1 using @arg00 ;
|
||||
# parameter is NULL
|
||||
set @arg00=NULL ;
|
||||
select a FROM t1 where a=@arg00 ;
|
||||
prepare stmt1 from ' select a FROM t1 where a=? ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
# parameter is not NULL within a function
|
||||
set @arg00=4 ;
|
||||
select a FROM t1 where a=sqrt(@arg00) ;
|
||||
prepare stmt1 from ' select a FROM t1 where a=sqrt(?) ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
# parameter is NULL within a function
|
||||
set @arg00=NULL ;
|
||||
select a FROM t1 where a=sqrt(@arg00) ;
|
||||
prepare stmt1 from ' select a FROM t1 where a=sqrt(?) ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
# parameter in IN
|
||||
set @arg00=2 ;
|
||||
set @arg01=3 ;
|
||||
select a FROM t1 where a in (@arg00,@arg01);
|
||||
prepare stmt1 from ' select a FROM t1 where a in (?,?) ';
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
# parameter in LIKE
|
||||
prepare stmt1 from ' select b FROM t1 where b like ? ';
|
||||
set @arg00='two' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
set @arg00='tw%' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
set @arg00='%wo' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
|
||||
##### parameter used for operator in WHERE clause (must fail)
|
||||
set @arg00='>' ;
|
||||
--error 1064
|
||||
select a FROM t1 where a @arg00 1 ;
|
||||
--error 1064
|
||||
prepare stmt1 from ' select a FROM t1 where a ? 1 ' ;
|
||||
|
||||
##### parameter used in group by clause
|
||||
set @arg00=1 ;
|
||||
select a,b FROM t1 where a is not NULL
|
||||
AND b is not NULL group by a - @arg00 ;
|
||||
prepare stmt1 from ' select a,b FROM t1 where a is not NULL
|
||||
AND b is not NULL group by a - ? ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
|
||||
##### parameter used in having clause
|
||||
set @arg00='two' ;
|
||||
select a,b FROM t1 where a is not NULL
|
||||
AND b is not NULL having b <> @arg00 ;
|
||||
prepare stmt1 from ' select a,b FROM t1 where a is not NULL
|
||||
AND b is not NULL having b <> ? ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
|
||||
##### parameter used in order clause
|
||||
set @arg00=1 ;
|
||||
select a,b FROM t1 where a is not NULL
|
||||
AND b is not NULL order by a - @arg00 ;
|
||||
prepare stmt1 from ' select a,b FROM t1 where a is not NULL
|
||||
AND b is not NULL order by a - ? ' ;
|
||||
execute stmt1 using @arg00 ;
|
||||
## What is the semantic of a single parameter (integer >0)
|
||||
# after order by? column number or constant
|
||||
set @arg00=2 ;
|
||||
select a,b from t1 order by 2 ;
|
||||
prepare stmt1 from ' select a,b from t1
|
||||
order by ? ';
|
||||
execute stmt1 using @arg00;
|
||||
set @arg00=1 ;
|
||||
execute stmt1 using @arg00;
|
||||
set @arg00=0 ;
|
||||
--error 1054
|
||||
execute stmt1 using @arg00;
|
||||
|
||||
##### parameter used in limit clause
|
||||
set @arg00=1;
|
||||
prepare stmt1 from ' select a,b from t1
|
||||
limit 1 ';
|
||||
execute stmt1 ;
|
||||
# currently (May 2004, Version 4.1) it is impossible
|
||||
-- error 1064
|
||||
prepare stmt1 from ' select a,b from t1
|
||||
limit ? ';
|
||||
|
||||
##### parameter used in many places
|
||||
set @arg00='b' ;
|
||||
set @arg01=0 ;
|
||||
set @arg02=2 ;
|
||||
set @arg03=2 ;
|
||||
select sum(a), @arg00 from t1 where a > @arg01
|
||||
and b is not null group by substr(b,@arg02)
|
||||
having sum(a) <> @arg03 ;
|
||||
prepare stmt1 from ' select sum(a), ? from t1 where a > ?
|
||||
and b is not null group by substr(b,?)
|
||||
having sum(a) <> ? ';
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03;
|
||||
|
||||
|
||||
--disable_query_log
|
||||
select '------ join tests ------' as test_sequence ;
|
||||
--enable_query_log
|
||||
|
||||
# no parameter
|
||||
select first.a as a1, second.a as a2
|
||||
from t1 first, t1 second
|
||||
where first.a = second.a ;
|
||||
prepare stmt1 from ' select first.a as a1, second.a as a2
|
||||
from t1 first, t1 second
|
||||
where first.a = second.a ';
|
||||
execute stmt1 ;
|
||||
|
||||
# some parameters
|
||||
set @arg00='ABC';
|
||||
set @arg01='two';
|
||||
set @arg02='one';
|
||||
select first.a, @arg00, second.a FROM t1 first, t1 second
|
||||
where @arg01 = first.b or first.a = second.a or second.b = @arg02;
|
||||
prepare stmt1 from ' select first.a, ?, second.a FROM t1 first, t1 second
|
||||
where ? = first.b or first.a = second.a or second.b = ? ';
|
||||
execute stmt1 using @arg00, @arg01, @arg02;
|
||||
|
||||
|
||||
|
||||
--disable_query_log
|
||||
select '------ subquery tests ------' as test_sequence ;
|
||||
--enable_query_log
|
||||
|
||||
# no parameter
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = ''two'') ';
|
||||
execute stmt1 ;
|
||||
|
||||
###### parameter in the outer part
|
||||
set @arg00='two' ;
|
||||
select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = 'two' ) and b=@arg00 ;
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = ''two'') and b=? ';
|
||||
execute stmt1 using @arg00;
|
||||
###### parameter in the inner part
|
||||
set @arg00='two' ;
|
||||
# Bug#4000 (only BDB tables)
|
||||
select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = @arg00 ) and b='two' ;
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = ? ) and b=''two'' ' ;
|
||||
execute stmt1 using @arg00;
|
||||
set @arg00=3 ;
|
||||
set @arg01='three' ;
|
||||
select a,b FROM t1 where (a,b) in (select 3, 'three');
|
||||
select a FROM t1 where (a,b) in (select @arg00,@arg01);
|
||||
prepare stmt1 from ' select a FROM t1 where (a,b) in (select ?, ?) ';
|
||||
execute stmt1 using @arg00, @arg01;
|
||||
|
||||
###### parameters in the both parts
|
||||
set @arg00=1 ;
|
||||
set @arg01='two' ;
|
||||
set @arg02=2 ;
|
||||
set @arg03='two' ;
|
||||
# Bug#4000 (only BDB tables)
|
||||
select a, @arg00, b FROM t1 outer_table where
|
||||
b=@arg01 and a = (select @arg02 from t1 where b = @arg03 ) ;
|
||||
prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
|
||||
b=? and a = (select ? from t1 where b = ? ) ' ;
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
|
||||
|
||||
######## correlated subquery
|
||||
# no parameter
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = outer_table.b ) ';
|
||||
# also Bug#4000 (only BDB tables) ??
|
||||
execute stmt1 ;
|
||||
|
||||
###### parameter in the outer part
|
||||
set @arg00='two' ;
|
||||
# Bug#4000 (only BDB tables)
|
||||
select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = outer_table.b ) and b=@arg00 ;
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where b = outer_table.b) and b=? ';
|
||||
# also Bug#4000 (only BDB tables) ??
|
||||
execute stmt1 using @arg00;
|
||||
|
||||
###### parameter in the inner part
|
||||
set @arg00=2 ;
|
||||
select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where a = @arg00 and b = outer_table.b) and b='two' ;
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where a = ? and b = outer_table.b) and b=''two'' ' ;
|
||||
execute stmt1 using @arg00;
|
||||
|
||||
set @arg00=2 ;
|
||||
select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where outer_table.a = @arg00 and a=2) and b='two' ;
|
||||
prepare stmt1 from ' select a, b FROM t1 outer_table where
|
||||
a = (select a from t1 where outer_table.a = ? and a=2) and b=''two'' ' ;
|
||||
execute stmt1 using @arg00;
|
||||
|
||||
###### parameters in the both parts
|
||||
set @arg00=1 ;
|
||||
set @arg01='two' ;
|
||||
set @arg02=2 ;
|
||||
set @arg03='two' ;
|
||||
# Bug#4000 (only BDB tables)
|
||||
select a, @arg00, b FROM t1 outer_table where
|
||||
b=@arg01 and a = (select @arg02 from t1 where outer_table.b = @arg03
|
||||
and outer_table.a=a ) ;
|
||||
prepare stmt1 from ' select a, ?, b FROM t1 outer_table where
|
||||
b=? and a = (select ? from t1 where outer_table.b = ?
|
||||
and outer_table.a=a ) ' ;
|
||||
# also Bug#4000 (only BDB tables) ??
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03 ;
|
||||
|
||||
###### subquery after from
|
||||
set @arg00=1 ;
|
||||
set @arg01=0 ;
|
||||
select a, @arg00
|
||||
from ( select a - @arg00 as a from t1 where a=@arg00 ) as t2
|
||||
where a=@arg01;
|
||||
prepare stmt1 from ' select a, ?
|
||||
from ( select a - ? as a from t1 where a=? ) as t2
|
||||
where a=? ';
|
||||
execute stmt1 using @arg00, @arg00, @arg00, @arg01 ;
|
||||
|
||||
###### heavy modified case derived from client_test.c: test_distinct()
|
||||
## no parameters
|
||||
--disable_warnings
|
||||
drop table if exists t2 ;
|
||||
--enable_warnings
|
||||
create table t2 as select * from t_many_col_types;
|
||||
#insert into t2 select * from t_many_col_types;
|
||||
set @stmt= ' SELECT
|
||||
(SELECT SUM(c1 + c12 + 0.0) FROM t2
|
||||
where (t_many_col_types.c2 - 0e-3) = t2.c2
|
||||
GROUP BY t_many_col_types.c15 LIMIT 1) as scalar_s,
|
||||
exists (select 1.0e+0 from t2
|
||||
where t2.c3 * 9.0000000000 = t_many_col_types.c4) as exists_s,
|
||||
c5 * 4 in (select c6 + 0.3e+1 from t2) as in_s,
|
||||
(c7 - 4, c8 - 4) in (select c9 + 4.0, c10 + 40e-1 from t2) as in_row_s
|
||||
FROM t_many_col_types,
|
||||
(select c25 x, c32 y from t2) tt WHERE x = c25 ' ;
|
||||
--enable_metadata
|
||||
prepare stmt1 from @stmt ;
|
||||
execute stmt1 ;
|
||||
--disable_metadata
|
||||
execute stmt1 ;
|
||||
set @stmt= concat('explain ',@stmt);
|
||||
--enable_metadata
|
||||
prepare stmt1 from @stmt ;
|
||||
execute stmt1 ;
|
||||
--disable_metadata
|
||||
execute stmt1 ;
|
||||
## many parameters
|
||||
set @stmt= ' SELECT
|
||||
(SELECT SUM(c1+c12+?) FROM t2 where (t_many_col_types.c2-?)=t2.c2
|
||||
GROUP BY t_many_col_types.c15 LIMIT 1) as scalar_s,
|
||||
exists (select ? from t2
|
||||
where t2.c3*?=t_many_col_types.c4) as exists_s,
|
||||
c5*? in (select c6+? from t2) as in_s,
|
||||
(c7-?, c8-?) in (select c9+?, c10+? from t2) as in_row_s
|
||||
FROM t_many_col_types,
|
||||
(select c25 x, c32 y from t2) tt WHERE x =c25 ' ;
|
||||
set @arg00= 0.0 ;
|
||||
set @arg01= 0e-3 ;
|
||||
set @arg02= 1.0e+0 ;
|
||||
set @arg03= 9.0000000000 ;
|
||||
set @arg04= 4 ;
|
||||
set @arg05= 0.3e+1 ;
|
||||
set @arg06= 4 ;
|
||||
set @arg07= 4 ;
|
||||
set @arg08= 4.0 ;
|
||||
set @arg09= 40e-1 ;
|
||||
--enable_metadata
|
||||
prepare stmt1 from @stmt ;
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
|
||||
@arg07, @arg08, @arg09 ;
|
||||
--disable_metadata
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
|
||||
@arg07, @arg08, @arg09 ;
|
||||
set @stmt= concat('explain ',@stmt);
|
||||
--enable_metadata
|
||||
prepare stmt1 from @stmt ;
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
|
||||
@arg07, @arg08, @arg09 ;
|
||||
--disable_metadata
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03, @arg04, @arg05, @arg06,
|
||||
@arg07, @arg08, @arg09 ;
|
||||
drop table t2 ;
|
||||
|
||||
|
||||
--disable_query_log
|
||||
select '------ union tests ------' as test_sequence ;
|
||||
--enable_query_log
|
||||
|
||||
# no parameter
|
||||
prepare stmt1 from ' select a FROM t1 where a=1
|
||||
union distinct
|
||||
select a FROM t1 where a=1 ';
|
||||
execute stmt1 ;
|
||||
# Bug#3577: the second execute crashes mysqld
|
||||
execute stmt1 ;
|
||||
prepare stmt1 from ' select a FROM t1 where a=1
|
||||
union all
|
||||
select a FROM t1 where a=1 ';
|
||||
execute stmt1 ;
|
||||
|
||||
##### everything in the first table
|
||||
# one parameter as constant in the first table
|
||||
set @arg00=1 ;
|
||||
select @arg00 FROM t1 where a=1
|
||||
union distinct
|
||||
select 1 FROM t1 where a=1;
|
||||
prepare stmt1 from ' select ? FROM t1 where a=1
|
||||
union distinct
|
||||
select 1 FROM t1 where a=1 ' ;
|
||||
execute stmt1 using @arg00;
|
||||
|
||||
##### everything in the second table
|
||||
# one parameter as constant
|
||||
set @arg00=1 ;
|
||||
select 1 FROM t1 where a=1
|
||||
union distinct
|
||||
select @arg00 FROM t1 where a=1;
|
||||
prepare stmt1 from ' select 1 FROM t1 where a=1
|
||||
union distinct
|
||||
select ? FROM t1 where a=1 ' ;
|
||||
execute stmt1 using @arg00;
|
||||
|
||||
# one parameter in every table
|
||||
set @arg00='a' ;
|
||||
select @arg00 FROM t1 where a=1
|
||||
union distinct
|
||||
select @arg00 FROM t1 where a=1;
|
||||
prepare stmt1 from ' select ? FROM t1 where a=1
|
||||
union distinct
|
||||
select ? FROM t1 where a=1 ';
|
||||
# BUG#3811 wrong result, prepared statement, union,
|
||||
# parameter in result column list
|
||||
execute stmt1 using @arg00, @arg00;
|
||||
prepare stmt1 from ' select ?
|
||||
union distinct
|
||||
select ? ';
|
||||
execute stmt1 using @arg00, @arg00;
|
||||
|
||||
# many parameters
|
||||
set @arg00='a' ;
|
||||
set @arg01=1 ;
|
||||
set @arg02='a' ;
|
||||
set @arg03=2 ;
|
||||
select @arg00 FROM t1 where a=@arg01
|
||||
union distinct
|
||||
select @arg02 FROM t1 where a=@arg03;
|
||||
prepare stmt1 from ' select ? FROM t1 where a=?
|
||||
union distinct
|
||||
select ? FROM t1 where a=? ' ;
|
||||
execute stmt1 using @arg00, @arg01, @arg02, @arg03;
|
||||
|
||||
## increased complexity
|
||||
|
||||
set @arg00=1 ;
|
||||
# Bug#3686 the wrong server response was 1140 Mixing of GROUP columns ..
|
||||
prepare stmt1 from ' select sum(a) + 200, ? from t1
|
||||
union distinct
|
||||
select sum(a) + 200, 1 from t1
|
||||
group by b ' ;
|
||||
execute stmt1 using @arg00;
|
||||
|
||||
set @Oporto='Oporto' ;
|
||||
set @Lisboa='Lisboa' ;
|
||||
set @0=0 ;
|
||||
set @1=1 ;
|
||||
set @2=2 ;
|
||||
set @3=3 ;
|
||||
set @4=4 ;
|
||||
select @Oporto,@Lisboa,@0,@1,@2,@3,@4 ;
|
||||
|
||||
## union + group by
|
||||
select sum(a) + 200 as the_sum, @Oporto as the_town from t1
|
||||
group by b
|
||||
union distinct
|
||||
select sum(a) + 200, @Lisboa from t1
|
||||
group by b ;
|
||||
|
||||
prepare stmt1 from ' select sum(a) + 200 as the_sum, ? as the_town from t1
|
||||
group by b
|
||||
union distinct
|
||||
select sum(a) + 200, ? from t1
|
||||
group by b ' ;
|
||||
execute stmt1 using @Oporto, @Lisboa;
|
||||
|
||||
|
||||
## union + where + group by
|
||||
select sum(a) + 200 as the_sum, @Oporto as the_town from t1
|
||||
where a > @1
|
||||
group by b
|
||||
union distinct
|
||||
select sum(a) + 200, @Lisboa from t1
|
||||
where a > @2
|
||||
group by b ;
|
||||
|
||||
prepare stmt1 from ' select sum(a) + 200 as the_sum, ? as the_town from t1
|
||||
where a > ?
|
||||
group by b
|
||||
union distinct
|
||||
select sum(a) + 200, ? from t1
|
||||
where a > ?
|
||||
group by b ' ;
|
||||
execute stmt1 using @Oporto, @1, @Lisboa, @2;
|
||||
|
||||
## union + where + group by + having
|
||||
select sum(a) + 200 as the_sum, @Oporto as the_town from t1
|
||||
where a > @1
|
||||
group by b
|
||||
having avg(a) > @2
|
||||
union distinct
|
||||
select sum(a) + 200, @Lisboa from t1
|
||||
where a > @2
|
||||
group by b
|
||||
having avg(a) > @3;
|
||||
|
||||
prepare stmt1 from ' select sum(a) + 200 as the_sum, ? as the_town from t1
|
||||
where a > ?
|
||||
group by b
|
||||
having avg(a) > ?
|
||||
union distinct
|
||||
select sum(a) + 200, ? from t1
|
||||
where a > ?
|
||||
group by b
|
||||
having avg(a) > ? ';
|
||||
execute stmt1 using @Oporto, @1, @2, @Lisboa, @2, @3;
|
||||
|
||||
|
||||
--disable_query_log
|
||||
select '------ explain select tests ------' as test_sequence ;
|
||||
--enable_query_log
|
||||
prepare stmt1 from ' select * from t_many_col_types ' ;
|
||||
--enable_metadata
|
||||
execute stmt1;
|
||||
--disable_metadata
|
||||
|
||||
|
34
mysql-test/include/ps_renew.inc
Normal file
34
mysql-test/include/ps_renew.inc
Normal file
@ -0,0 +1,34 @@
|
||||
################ include/ps_renew.inc #################
|
||||
# #
|
||||
# renew the content of t1 and t_many_col_types #
|
||||
# #
|
||||
#######################################################
|
||||
|
||||
# truncate could not be used, because it is not supported
|
||||
# in tables of type MERGE
|
||||
delete from t1 ;
|
||||
insert into t1 values (1,'one');
|
||||
insert into t1 values (2,'two');
|
||||
insert into t1 values (3,'three');
|
||||
insert into t1 values (4,'four');
|
||||
commit ;
|
||||
|
||||
delete from t_many_col_types ;
|
||||
insert into t_many_col_types
|
||||
set c1= 1, c2= 1, c3= 1, c4= 1, c5= 1, c6= 1, c7= 1, c8= 1, c9= 1,
|
||||
c10= 1, c11= 1, c12 = 1,
|
||||
c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
|
||||
c16= '11:11:11', c17= '2004',
|
||||
c18= 1, c19=true, c20= 'a', c21= '123456789a',
|
||||
c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
|
||||
c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
|
||||
c29= 'longblob', c30= 'longtext', c31='one', c32= 'monday';
|
||||
insert into t_many_col_types
|
||||
set c1= 9, c2= 9, c3= 9, c4= 9, c5= 9, c6= 9, c7= 9, c8= 9, c9= 9,
|
||||
c10= 9, c11= 9, c12 = 9,
|
||||
c13= '2004-02-29', c14= '2004-02-29 11:11:11', c15= '2004-02-29 11:11:11',
|
||||
c16= '11:11:11', c17= '2004',
|
||||
c18= 1, c19=false, c20= 'a', c21= '123456789a',
|
||||
c22= '123456789a123456789b123456789c', c23= 'tinyblob', c24= 'tinytext',
|
||||
c25= 'blob', c26= 'text', c27= 'mediumblob', c28= 'mediumtext',
|
||||
c29= 'longblob', c30= 'longtext', c31='two', c32= 'tuesday';
|
4
mysql-test/misc/kill_master.sh
Normal file
4
mysql-test/misc/kill_master.sh
Normal file
@ -0,0 +1,4 @@
|
||||
kill -9 `cat var/run/master.pid`
|
||||
# The kill may fail if process has already gone away,
|
||||
# so don't use the exit code of the kill. Use 0.
|
||||
exit 0
|
@ -16,6 +16,7 @@ USE_MANAGER=0
|
||||
MY_TZ=GMT-3
|
||||
TZ=$MY_TZ; export TZ # for UNIX_TIMESTAMP tests to work
|
||||
LOCAL_SOCKET=@MYSQL_UNIX_ADDR@
|
||||
MYSQL_TCP_PORT=@MYSQL_TCP_PORT@
|
||||
|
||||
# For query_cache test
|
||||
case `uname` in
|
||||
@ -201,6 +202,7 @@ MASTER_MYPORT=9306
|
||||
SLAVE_RUNNING=0
|
||||
SLAVE_MYPORT=9307
|
||||
MYSQL_MANAGER_PORT=9305 # needs to be out of the way of slaves
|
||||
NDBCLUSTER_PORT=9350
|
||||
MYSQL_MANAGER_PW_FILE=$MYSQL_TEST_DIR/var/tmp/manager.pwd
|
||||
MYSQL_MANAGER_LOG=$MYSQL_TEST_DIR/var/log/manager.log
|
||||
MYSQL_MANAGER_USER=root
|
||||
@ -257,6 +259,7 @@ while test $# -gt 0; do
|
||||
--master_port=*) MASTER_MYPORT=`$ECHO "$1" | $SED -e "s;--master_port=;;"` ;;
|
||||
--slave_port=*) SLAVE_MYPORT=`$ECHO "$1" | $SED -e "s;--slave_port=;;"` ;;
|
||||
--manager-port=*) MYSQL_MANAGER_PORT=`$ECHO "$1" | $SED -e "s;--manager_port=;;"` ;;
|
||||
--ndbcluster_port=*) NDBCLUSTER_PORT=`$ECHO "$1" | $SED -e "s;--ndbcluster_port=;;"` ;;
|
||||
--with-openssl)
|
||||
EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT \
|
||||
--ssl-ca=$BASEDIR/SSL/cacert.pem \
|
||||
@ -367,7 +370,7 @@ while test $# -gt 0; do
|
||||
$ECHO "You need to have the 'valgrind' program in your PATH to run mysql-test-run with option --valgrind. Valgrind's home page is http://developer.kde.org/~sewardj ."
|
||||
exit 1
|
||||
fi
|
||||
VALGRIND="$VALGRIND --alignment=8 --leak-check=yes --num-callers=16"
|
||||
VALGRIND="$VALGRIND --tool=memcheck --alignment=8 --leak-check=yes --num-callers=16"
|
||||
EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT --skip-safemalloc --skip-bdb"
|
||||
EXTRA_SLAVE_MYSQLD_OPT="$EXTRA_SLAVE_MYSQLD_OPT --skip-safemalloc --skip-bdb"
|
||||
SLEEP_TIME_AFTER_RESTART=10
|
||||
@ -433,7 +436,7 @@ SLAVE_MYERR="$MYSQL_TEST_DIR/var/log/slave.err"
|
||||
CURRENT_TEST="$MYSQL_TEST_DIR/var/log/current_test"
|
||||
SMALL_SERVER="--key_buffer_size=1M --sort_buffer=256K --max_heap_table_size=1M"
|
||||
|
||||
export MASTER_MYPORT SLAVE_MYPORT
|
||||
export MASTER_MYPORT SLAVE_MYPORT MYSQL_TCP_PORT
|
||||
|
||||
if [ x$SOURCE_DIST = x1 ] ; then
|
||||
MY_BASEDIR=$MYSQL_TEST_DIR
|
||||
@ -522,10 +525,8 @@ fi
|
||||
|
||||
MYSQL_DUMP="$MYSQL_DUMP --no-defaults -uroot --socket=$MASTER_MYSOCK --password=$DBPASSWD $EXTRA_MYSQLDUMP_OPT"
|
||||
MYSQL_BINLOG="$MYSQL_BINLOG --no-defaults --local-load=$MYSQL_TMP_DIR $EXTRA_MYSQLBINLOG_OPT"
|
||||
MYSQL_FIX_SYSTEM_TABLES="$MYSQL_FIX_SYSTEM_TABLES --host=localhost --port=$MASTER_MYPORT --socket=$MASTER_MYSOCK --user=root --password=$DBPASSWD --basedir=$BASEDIR --bindir=$CLIENT_BINDIR --verbose=1"
|
||||
MYSQL_FIX_SYSTEM_TABLES="$MYSQL_FIX_SYSTEM_TABLES --no-defaults --host=localhost --port=$MASTER_MYPORT --socket=$MASTER_MYSOCK --user=root --password=$DBPASSWD --basedir=$BASEDIR --bindir=$CLIENT_BINDIR --verbose"
|
||||
MYSQL="$MYSQL --host=localhost --port=$MASTER_MYPORT --socket=$MASTER_MYSOCK --user=root --password=$DBPASSWD"
|
||||
export MYSQL MYSQL_DUMP MYSQL_BINLOG MYSQL_FIX_SYSTEM_TABLES CLIENT_BINDIR
|
||||
|
||||
|
||||
if [ -z "$MASTER_MYSQLD" ]
|
||||
then
|
||||
@ -577,6 +578,8 @@ if [ -n "$DO_CLIENT_GDB" -o -n "$DO_GDB" ] ; then
|
||||
XTERM=`which xterm`
|
||||
fi
|
||||
|
||||
export MYSQL MYSQL_DUMP MYSQL_BINLOG MYSQL_FIX_SYSTEM_TABLES CLIENT_BINDIR MASTER_MYSOCK
|
||||
|
||||
#++
|
||||
# Function Definitions
|
||||
#--
|
||||
@ -688,7 +691,7 @@ report_stats () {
|
||||
#
|
||||
$RM -f $MY_LOG_DIR/warnings $MY_LOG_DIR/warnings.tmp
|
||||
# Remove some non fatal warnings from the log files
|
||||
$SED -e 's!Warning: Table:.* on delete!!g' \
|
||||
$SED -e 's!Warning: Table:.* on delete!!g' -e 's!Warning: Setting lower_case_table_names=2!!g' -e 's!Warning: One can only use the --user.*root!!g' \
|
||||
$MY_LOG_DIR/*.err \
|
||||
| $SED -e 's!Warning: Table:.* on rename!!g' \
|
||||
> $MY_LOG_DIR/warnings.tmp
|
||||
@ -881,8 +884,12 @@ start_master()
|
||||
if [ x$MASTER_RUNNING = x1 ] || [ x$LOCAL_MASTER = x1 ] ; then
|
||||
return
|
||||
fi
|
||||
# Remove stale binary logs
|
||||
$RM -f $MYSQL_TEST_DIR/var/log/master-bin.*
|
||||
# Remove stale binary logs except for 2 tests which need them
|
||||
if [ "$tname" != "rpl_crash_binlog_ib_1b" ] && [ "$tname" != "rpl_crash_binlog_ib_2b" ] && [ "$tname" != "rpl_crash_binlog_ib_3b" ]
|
||||
then
|
||||
$RM -f $MYSQL_TEST_DIR/var/log/master-bin.*
|
||||
fi
|
||||
|
||||
# Remove old master.info and relay-log.info files
|
||||
$RM -f $MYSQL_TEST_DIR/var/master-data/master.info $MYSQL_TEST_DIR/var/master-data/relay-log.info
|
||||
|
||||
@ -1004,8 +1011,12 @@ start_slave()
|
||||
slave_sock="$SLAVE_MYSOCK"
|
||||
fi
|
||||
# Remove stale binary logs and old master.info files
|
||||
$RM -f $MYSQL_TEST_DIR/var/log/$slave_ident-*bin.*
|
||||
$RM -f $slave_datadir/master.info $slave_datadir/relay-log.info
|
||||
# except for too tests which need them
|
||||
if [ "$tname" != "rpl_crash_binlog_ib_1b" ] && [ "$tname" != "rpl_crash_binlog_ib_2b" ] && [ "$tname" != "rpl_crash_binlog_ib_3b" ]
|
||||
then
|
||||
$RM -f $MYSQL_TEST_DIR/var/log/$slave_ident-*bin.*
|
||||
$RM -f $slave_datadir/master.info $slave_datadir/relay-log.info
|
||||
fi
|
||||
|
||||
#run slave initialization shell script if one exists
|
||||
if [ -f "$slave_init_script" ] ;
|
||||
@ -1417,7 +1428,7 @@ then
|
||||
if [ -z "$USE_RUNNING_NDBCLUSTER" ]
|
||||
then
|
||||
# Kill any running ndbcluster stuff
|
||||
./ndb/stop_ndbcluster
|
||||
./ndb/ndbcluster --port-base=$NDBCLUSTER_PORT --stop
|
||||
fi
|
||||
fi
|
||||
|
||||
@ -1438,7 +1449,7 @@ then
|
||||
if [ -z "$USE_RUNNING_NDBCLUSTER" ]
|
||||
then
|
||||
echo "Starting ndbcluster"
|
||||
./ndb/install_ndbcluster --initial --data-dir=$MYSQL_TEST_DIR/var || exit 1
|
||||
./ndb/ndbcluster --port-base=$NDBCLUSTER_PORT --small --discless --initial --data-dir=$MYSQL_TEST_DIR/var || exit 1
|
||||
export NDB_CONNECTSTRING=`cat Ndb.cfg`
|
||||
else
|
||||
export NDB_CONNECTSTRING="$USE_RUNNING_NDBCLUSTER"
|
||||
@ -1470,16 +1481,23 @@ $ECHO "Starting Tests"
|
||||
#
|
||||
if [ "$DO_BENCH" = 1 ]
|
||||
then
|
||||
start_master
|
||||
|
||||
if [ ! -z "$USE_NDBCLUSTER" ]
|
||||
then
|
||||
EXTRA_BENCH_ARGS="--create-options=TYPE=ndb"
|
||||
fi
|
||||
|
||||
BENCHDIR=$BASEDIR/sql-bench/
|
||||
savedir=`pwd`
|
||||
cd $BENCHDIR
|
||||
if [ -z "$1" ]
|
||||
then
|
||||
./run-all-tests --socket=$MASTER_MYSOCK --user=root
|
||||
./run-all-tests --socket=$MASTER_MYSOCK --user=root $EXTRA_BENCH_ARGS
|
||||
else
|
||||
if [ -x "./$1" ]
|
||||
then
|
||||
./$1 --socket=$MASTER_MYSOCK --user=root
|
||||
./$1 --socket=$MASTER_MYSOCK --user=root $EXTRA_BENCH_ARGS
|
||||
else
|
||||
echo "benchmark $1 not found"
|
||||
fi
|
||||
@ -1531,7 +1549,7 @@ then
|
||||
if [ -z "$USE_RUNNING_NDBCLUSTER" ]
|
||||
then
|
||||
# Kill any running ndbcluster stuff
|
||||
./ndb/stop_ndbcluster
|
||||
./ndb/ndbcluster --port-base=$NDBCLUSTER_PORT --stop
|
||||
fi
|
||||
fi
|
||||
|
||||
|
23
mysql-test/ndb/Makefile.am
Normal file
23
mysql-test/ndb/Makefile.am
Normal file
@ -0,0 +1,23 @@
|
||||
|
||||
benchdir_root= $(prefix)
|
||||
testdir = $(benchdir_root)/mysql-test/ndb
|
||||
|
||||
test_SCRIPTS = ndbcluster
|
||||
|
||||
noinst_HEADERS = ndbcluster.sh
|
||||
|
||||
dist_test_DATA = ndb_config_2_node.ini
|
||||
|
||||
SUFFIXES = .sh
|
||||
|
||||
.sh:
|
||||
@RM@ -f $@ $@-t
|
||||
@SED@ \
|
||||
-e 's!@''ndbbindir''@!$(ndbbindir)!g' \
|
||||
-e 's!@''ndbtoolsdir''@!$(ndbtoolsdir)!g' \
|
||||
$< > $@-t
|
||||
@CHMOD@ +x $@-t
|
||||
@MV@ $@-t $@
|
||||
|
||||
# Don't update the files from bitkeeper
|
||||
%::SCCS/s.%
|
@ -1,148 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Copyright (C) 2004 MySQL AB
|
||||
# For a more info consult the file COPYRIGHT distributed with this file
|
||||
|
||||
# This scripts starts the table handler ndbcluster
|
||||
|
||||
# configurable parameters, make sure to change in mysqlcluterd as well
|
||||
port_base="22" # using ports port_base{"00","01", etc}
|
||||
fsdir=`pwd`
|
||||
# end configurable parameters
|
||||
|
||||
libdir=`pwd`/../ndb/lib
|
||||
bindir=`pwd`/../ndb/bin
|
||||
|
||||
pidfile=ndbcluster.pid
|
||||
|
||||
while test $# -gt 0; do
|
||||
case "$1" in
|
||||
--initial)
|
||||
flags_ndb=$flags_ndb" -i"
|
||||
initial_ndb=1
|
||||
;;
|
||||
--data-dir=*)
|
||||
fsdir=`echo "$1" | sed -e "s;--data-dir=;;"`
|
||||
;;
|
||||
--port-base=*)
|
||||
port_base=`echo "$1" | sed -e "s;--port-base=;;"`
|
||||
;;
|
||||
-- ) shift; break ;;
|
||||
--* ) $ECHO "Unrecognized option: $1"; exit 1 ;;
|
||||
* ) break ;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
exec_ndb=$bindir/ndb
|
||||
exec_mgmtsrvr=$bindir/mgmtsrvr
|
||||
fs_ndb=$fsdir/ndbcluster
|
||||
fs_mgm_1=$fs_ndb/1.ndb_mgm
|
||||
fs_ndb_2=$fs_ndb/2.ndb_db
|
||||
fs_ndb_3=$fs_ndb/3.ndb_db
|
||||
fs_name_2=$fs_ndb/node-2-fs
|
||||
fs_name_3=$fs_ndb/node-3-fs
|
||||
|
||||
NDB_HOME=
|
||||
export NDB_CONNECTSTRING
|
||||
if [ ! -x $fsdir ]; then
|
||||
echo "$fsdir missing"
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -x $exec_ndb ]; then
|
||||
echo "$exec_ndb missing"
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -x $exec_mgmtsrv ]; then
|
||||
echo "$exec_mgmtsrvr missing"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
start_default_ndbcluster() {
|
||||
|
||||
# do some checks
|
||||
|
||||
NDB_CONNECTSTRING=
|
||||
|
||||
if [ $initial_ndb ] ; then
|
||||
[ -d $fs_ndb ] || mkdir $fs_ndb
|
||||
[ -d $fs_mgm_1 ] || mkdir $fs_mgm_1
|
||||
[ -d $fs_ndb_2 ] || mkdir $fs_ndb_2
|
||||
[ -d $fs_ndb_3 ] || mkdir $fs_ndb_3
|
||||
[ -d $fs_name_2 ] || mkdir $fs_name_2
|
||||
[ -d $fs_name_3 ] || mkdir $fs_name_3
|
||||
fi
|
||||
if [ -d "$fs_ndb" -a -d "$fs_mgm_1" -a -d "$fs_ndb_2" -a -d "$fs_ndb_3" -a -d "$fs_name_2" -a -d "$fs_name_3" ]; then :; else
|
||||
echo "$fs_ndb filesystem directory does not exist"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# set som help variables
|
||||
|
||||
ndb_host="localhost"
|
||||
ndb_port=$port_base"00"
|
||||
NDB_CONNECTSTRING_BASE="host=$ndb_host:$ndb_port;nodeid="
|
||||
|
||||
|
||||
# Start management server as deamon
|
||||
|
||||
NDB_ID="1"
|
||||
NDB_CONNECTSTRING=$NDB_CONNECTSTRING_BASE$NDB_ID
|
||||
|
||||
# Edit file system path and ports in config file
|
||||
|
||||
if [ $initial_ndb ] ; then
|
||||
sed \
|
||||
-e s,"CHOOSE_HOSTNAME_".*,"$ndb_host",g \
|
||||
-e s,"CHOOSE_FILESYSTEM_NODE_2","$fs_name_2",g \
|
||||
-e s,"CHOOSE_FILESYSTEM_NODE_3","$fs_name_3",g \
|
||||
-e s,"CHOOSE_PORT_BASE",$port_base,g \
|
||||
< ndb/ndb_config_2_node.ini \
|
||||
> "$fs_mgm_1/config.ini"
|
||||
fi
|
||||
|
||||
if ( cd $fs_mgm_1 ; echo $NDB_CONNECTSTRING > Ndb.cfg ; $exec_mgmtsrvr -d -c config.ini ) ; then :; else
|
||||
echo "Unable to start $exec_mgmtsrvr from `pwd`"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cat `find $fs_ndb -name 'node*.pid'` > $pidfile
|
||||
|
||||
# Start database node
|
||||
|
||||
NDB_ID="2"
|
||||
NDB_CONNECTSTRING=$NDB_CONNECTSTRING_BASE$NDB_ID
|
||||
( cd $fs_ndb_2 ; echo $NDB_CONNECTSTRING > Ndb.cfg ; $exec_ndb -d $flags_ndb & )
|
||||
|
||||
cat `find $fs_ndb -name 'node*.pid'` > $pidfile
|
||||
|
||||
# Start database node
|
||||
|
||||
NDB_ID="3"
|
||||
NDB_CONNECTSTRING=$NDB_CONNECTSTRING_BASE$NDB_ID
|
||||
( cd $fs_ndb_3 ; echo $NDB_CONNECTSTRING > Ndb.cfg ; $exec_ndb -d $flags_ndb & )
|
||||
|
||||
cat `find $fs_ndb -name 'node*.pid'` > $pidfile
|
||||
|
||||
# Start management client
|
||||
|
||||
sleep 5
|
||||
echo "show" | $bindir/mgmtclient $ndb_host $ndb_port
|
||||
|
||||
# test if Ndb Cluster starts properly
|
||||
|
||||
NDB_ID="11"
|
||||
NDB_CONNECTSTRING=$NDB_CONNECTSTRING_BASE$NDB_ID
|
||||
#if ( export LD_LIBRARY_PATH=$libdir ; $bindir/list_tables ) | grep "NDBT_ProgramExit: 0 - OK"; then :; else
|
||||
if ( export LD_LIBRARY_PATH=$libdir ; $bindir/waiter ) | grep "NDBT_ProgramExit: 0 - OK"; then :; else
|
||||
echo "Ndbcluster startup failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo $NDB_CONNECTSTRING > Ndb.cfg
|
||||
|
||||
cat `find $fs_ndb -name 'node*.pid'` > $pidfile
|
||||
}
|
||||
|
||||
start_default_ndbcluster
|
||||
|
||||
exit 0
|
@ -1,7 +1,9 @@
|
||||
[DB DEFAULT]
|
||||
#NoOfFragmentLogfiles: 1
|
||||
#TimeBetweenLocalCheckpoints: 31
|
||||
NoOfReplicas: 2
|
||||
MaxNoOfConcurrentOperations: CHOOSE_MaxNoOfConcurrentOperations
|
||||
DataMemory: CHOOSE_DataMemory
|
||||
IndexMemory: CHOOSE_IndexMemory
|
||||
Discless: CHOOSE_Discless
|
||||
|
||||
[COMPUTER]
|
||||
Id: 1
|
||||
@ -41,9 +43,7 @@ HostName: CHOOSE_HOSTNAME_7
|
||||
[MGM]
|
||||
Id: 1
|
||||
ExecuteOnComputer: 1
|
||||
PortNumber: CHOOSE_PORT_BASE00
|
||||
PortNumberStats: CHOOSE_PORT_BASE01
|
||||
|
||||
PortNumber: CHOOSE_PORT_MGM
|
||||
|
||||
[DB]
|
||||
Id: 2
|
||||
@ -71,63 +71,5 @@ ExecuteOnComputer: 6
|
||||
Id: 14
|
||||
ExecuteOnComputer: 7
|
||||
|
||||
# Mgmtsrvr connections
|
||||
|
||||
[TCP]
|
||||
NodeId1: 1
|
||||
NodeId2: 2
|
||||
PortNumber: CHOOSE_PORT_BASE02
|
||||
|
||||
[TCP]
|
||||
NodeId1: 1
|
||||
NodeId2: 3
|
||||
PortNumber: CHOOSE_PORT_BASE03
|
||||
|
||||
# Ndb nodes connections
|
||||
|
||||
[TCP]
|
||||
NodeId1: 2
|
||||
NodeId2: 3
|
||||
PortNumber: CHOOSE_PORT_BASE04
|
||||
|
||||
# Api connections
|
||||
|
||||
[TCP]
|
||||
NodeId1: 11
|
||||
NodeId2: 2
|
||||
PortNumber: CHOOSE_PORT_BASE05
|
||||
|
||||
[TCP]
|
||||
NodeId1: 11
|
||||
NodeId2: 3
|
||||
PortNumber: CHOOSE_PORT_BASE06
|
||||
|
||||
[TCP]
|
||||
NodeId1: 12
|
||||
NodeId2: 2
|
||||
PortNumber: CHOOSE_PORT_BASE07
|
||||
|
||||
[TCP]
|
||||
NodeId1: 12
|
||||
NodeId2: 3
|
||||
PortNumber: CHOOSE_PORT_BASE08
|
||||
|
||||
[TCP]
|
||||
NodeId1: 13
|
||||
NodeId2: 2
|
||||
PortNumber: CHOOSE_PORT_BASE09
|
||||
|
||||
[TCP]
|
||||
NodeId1: 13
|
||||
NodeId2: 3
|
||||
PortNumber: CHOOSE_PORT_BASE10
|
||||
|
||||
[TCP]
|
||||
NodeId1: 14
|
||||
NodeId2: 2
|
||||
PortNumber: CHOOSE_PORT_BASE11
|
||||
|
||||
[TCP]
|
||||
NodeId1: 14
|
||||
NodeId2: 3
|
||||
PortNumber: CHOOSE_PORT_BASE12
|
||||
[TCP DEFAULT]
|
||||
PortNumber: CHOOSE_PORT_TRANSPORTER
|
||||
|
244
mysql-test/ndb/ndbcluster.sh
Normal file
244
mysql-test/ndb/ndbcluster.sh
Normal file
@ -0,0 +1,244 @@
|
||||
#!/bin/sh
|
||||
# Copyright (C) 2004 MySQL AB
|
||||
# For a more info consult the file COPYRIGHT distributed with this file
|
||||
|
||||
# This scripts starts the table handler ndbcluster
|
||||
|
||||
# configurable parameters, make sure to change in mysqlcluterd as well
|
||||
port_base="2200"
|
||||
fsdir=`pwd`
|
||||
# end configurable parameters
|
||||
|
||||
#BASEDIR is always one above mysql-test directory
|
||||
CWD=`pwd`
|
||||
cd ..
|
||||
BASEDIR=`pwd`
|
||||
cd $CWD
|
||||
|
||||
# Are we using a source or a binary distribution?
|
||||
if [ -d ../sql ] ; then
|
||||
SOURCE_DIST=1
|
||||
ndbtop=$BASEDIR/ndb
|
||||
exec_ndb=$ndbtop/src/kernel/ndbd
|
||||
exec_mgmtsrvr=$ndbtop/src/mgmsrv/ndb_mgmd
|
||||
exec_waiter=$ndbtop/tools/ndb_waiter
|
||||
exec_mgmtclient=$ndbtop/src/mgmclient/ndb_mgm
|
||||
else
|
||||
BINARY_DIST=1
|
||||
if test -x "$BASEDIR/libexec/ndbd"
|
||||
then
|
||||
exec_ndb=$BASEDIR/libexec/ndbd
|
||||
exec_mgmtsrvr=$BASEDIR/libexec/ndb_mgmd
|
||||
else
|
||||
exec_ndb=$BASEDIR/bin/ndbd
|
||||
exec_mgmtsrvr=$BASEDIR/bin/ndb_mgmd
|
||||
fi
|
||||
exec_waiter=$BASEDIR/bin/ndb_waiter
|
||||
exec_mgmtclient=$BASEDIR/bin/ndb_mgm
|
||||
fi
|
||||
|
||||
pidfile=ndbcluster.pid
|
||||
cfgfile=Ndb.cfg
|
||||
stop_ndb=
|
||||
initial_ndb=
|
||||
status_ndb=
|
||||
ndb_discless=0
|
||||
|
||||
ndb_con_op=100000
|
||||
ndb_dmem=80M
|
||||
ndb_imem=24M
|
||||
|
||||
while test $# -gt 0; do
|
||||
case "$1" in
|
||||
--stop)
|
||||
stop_ndb=1
|
||||
;;
|
||||
--initial)
|
||||
flags_ndb=$flags_ndb" -i"
|
||||
initial_ndb=1
|
||||
;;
|
||||
--status)
|
||||
status_ndb=1
|
||||
;;
|
||||
--small)
|
||||
ndb_con_op=10000
|
||||
ndb_dmem=40M
|
||||
ndb_imem=12M
|
||||
;;
|
||||
--discless)
|
||||
ndb_discless=1
|
||||
;;
|
||||
--data-dir=*)
|
||||
fsdir=`echo "$1" | sed -e "s;--data-dir=;;"`
|
||||
;;
|
||||
--port-base=*)
|
||||
port_base=`echo "$1" | sed -e "s;--port-base=;;"`
|
||||
;;
|
||||
-- ) shift; break ;;
|
||||
--* ) $ECHO "Unrecognized option: $1"; exit 1 ;;
|
||||
* ) break ;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
fs_ndb=$fsdir/ndbcluster
|
||||
fs_mgm_1=$fs_ndb/1.ndb_mgm
|
||||
fs_ndb_2=$fs_ndb/2.ndb_db
|
||||
fs_ndb_3=$fs_ndb/3.ndb_db
|
||||
fs_name_2=$fs_ndb/node-2-fs-$port_base
|
||||
fs_name_3=$fs_ndb/node-3-fs-$port_base
|
||||
|
||||
NDB_HOME=
|
||||
export NDB_CONNECTSTRING
|
||||
if [ ! -x $fsdir ]; then
|
||||
echo "$fsdir missing"
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -x $exec_ndb ]; then
|
||||
echo "$exec_ndb missing"
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -x $exec_mgmtsrvr ]; then
|
||||
echo "$exec_mgmtsrvr missing"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
start_default_ndbcluster() {
|
||||
|
||||
# do some checks
|
||||
|
||||
NDB_CONNECTSTRING=
|
||||
|
||||
if [ $initial_ndb ] ; then
|
||||
[ -d $fs_ndb ] || mkdir $fs_ndb
|
||||
[ -d $fs_mgm_1 ] || mkdir $fs_mgm_1
|
||||
[ -d $fs_ndb_2 ] || mkdir $fs_ndb_2
|
||||
[ -d $fs_ndb_3 ] || mkdir $fs_ndb_3
|
||||
[ -d $fs_name_2 ] || mkdir $fs_name_2
|
||||
[ -d $fs_name_3 ] || mkdir $fs_name_3
|
||||
fi
|
||||
if [ -d "$fs_ndb" -a -d "$fs_mgm_1" -a -d "$fs_ndb_2" -a -d "$fs_ndb_3" -a -d "$fs_name_2" -a -d "$fs_name_3" ]; then :; else
|
||||
echo "$fs_ndb filesystem directory does not exist"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# set som help variables
|
||||
|
||||
ndb_host="localhost"
|
||||
ndb_mgmd_port=$port_base
|
||||
port_transporter=`expr $ndb_mgmd_port + 2`
|
||||
NDB_CONNECTSTRING_BASE="host=$ndb_host:$ndb_mgmd_port;nodeid="
|
||||
|
||||
|
||||
# Start management server as deamon
|
||||
|
||||
NDB_ID="1"
|
||||
NDB_CONNECTSTRING=$NDB_CONNECTSTRING_BASE$NDB_ID
|
||||
|
||||
# Edit file system path and ports in config file
|
||||
|
||||
if [ $initial_ndb ] ; then
|
||||
sed \
|
||||
-e s,"CHOOSE_MaxNoOfConcurrentOperations",$ndb_con_op,g \
|
||||
-e s,"CHOOSE_DataMemory",$ndb_dmem,g \
|
||||
-e s,"CHOOSE_IndexMemory",$ndb_imem,g \
|
||||
-e s,"CHOOSE_Discless",$ndb_discless,g \
|
||||
-e s,"CHOOSE_HOSTNAME_".*,"$ndb_host",g \
|
||||
-e s,"CHOOSE_FILESYSTEM_NODE_2","$fs_name_2",g \
|
||||
-e s,"CHOOSE_FILESYSTEM_NODE_3","$fs_name_3",g \
|
||||
-e s,"CHOOSE_PORT_MGM",$ndb_mgmd_port,g \
|
||||
-e s,"CHOOSE_PORT_TRANSPORTER",$port_transporter,g \
|
||||
< ndb/ndb_config_2_node.ini \
|
||||
> "$fs_mgm_1/config.ini"
|
||||
fi
|
||||
|
||||
if ( cd $fs_mgm_1 ; echo $NDB_CONNECTSTRING > $cfgfile ; $exec_mgmtsrvr -d -c config.ini ) ; then :; else
|
||||
echo "Unable to start $exec_mgmtsrvr from `pwd`"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cat `find $fs_ndb -name 'node*.pid'` > $pidfile
|
||||
|
||||
# Start database node
|
||||
|
||||
NDB_ID="2"
|
||||
NDB_CONNECTSTRING=$NDB_CONNECTSTRING_BASE$NDB_ID
|
||||
echo "Starting ndbd connectstring=\""$NDB_CONNECTSTRING\"
|
||||
( cd $fs_ndb_2 ; echo $NDB_CONNECTSTRING > $cfgfile ; $exec_ndb -d $flags_ndb & )
|
||||
|
||||
cat `find $fs_ndb -name 'node*.pid'` > $pidfile
|
||||
|
||||
# Start database node
|
||||
|
||||
NDB_ID="3"
|
||||
NDB_CONNECTSTRING=$NDB_CONNECTSTRING_BASE$NDB_ID
|
||||
echo "Starting ndbd connectstring=\""$NDB_CONNECTSTRING\"
|
||||
( cd $fs_ndb_3 ; echo $NDB_CONNECTSTRING > $cfgfile ; $exec_ndb -d $flags_ndb & )
|
||||
|
||||
cat `find $fs_ndb -name 'node*.pid'` > $pidfile
|
||||
|
||||
# test if Ndb Cluster starts properly
|
||||
|
||||
echo "Waiting for started..."
|
||||
NDB_ID="11"
|
||||
NDB_CONNECTSTRING=$NDB_CONNECTSTRING_BASE$NDB_ID
|
||||
if ( $exec_waiter ) | grep "NDBT_ProgramExit: 0 - OK"; then :; else
|
||||
echo "Ndbcluster startup failed"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo $NDB_CONNECTSTRING > $cfgfile
|
||||
|
||||
cat `find $fs_ndb -name 'node*.pid'` > $pidfile
|
||||
|
||||
status_ndbcluster
|
||||
}
|
||||
|
||||
status_ndbcluster() {
|
||||
# Start management client
|
||||
|
||||
echo "show" | $exec_mgmtclient $ndb_host $ndb_mgmd_port
|
||||
}
|
||||
|
||||
stop_default_ndbcluster() {
|
||||
|
||||
#if [ ! -f $pidfile ] ; then
|
||||
# exit 0
|
||||
#fi
|
||||
|
||||
if [ ! -f $cfgfile ] ; then
|
||||
echo "$cfgfile missing"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
ndb_host=`cat $cfgfile | sed -e "s,.*host=\(.*\)\:.*,\1,1"`
|
||||
ndb_mgmd_port=`cat $cfgfile | sed -e "s,.*host=$ndb_host\:\([0-9]*\).*,\1,1"`
|
||||
|
||||
# Start management client
|
||||
|
||||
exec_mgmtclient="$exec_mgmtclient --try-reconnect=1 $ndb_host $ndb_mgmd_port"
|
||||
|
||||
echo "$exec_mgmtclient"
|
||||
echo "all stop" | $exec_mgmtclient
|
||||
|
||||
sleep 5
|
||||
|
||||
if [ -f $pidfile ] ; then
|
||||
kill `cat $pidfile` 2> /dev/null
|
||||
rm $pidfile
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
if [ $status_ndb ] ; then
|
||||
status_ndbcluster
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ $stop_ndb ] ; then
|
||||
stop_default_ndbcluster
|
||||
else
|
||||
start_default_ndbcluster
|
||||
fi
|
||||
|
||||
exit 0
|
@ -1,52 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Copyright (C) 2004 MySQL AB
|
||||
# For a more info consult the file COPYRIGHT distributed with this file
|
||||
|
||||
# This scripts stops the table handler ndbcluster
|
||||
|
||||
bindir=`pwd`/../ndb/bin
|
||||
pidfile=ndbcluster.pid
|
||||
cfgfile=Ndb.cfg
|
||||
|
||||
while test $# -gt 0; do
|
||||
case "$1" in
|
||||
--port-base=*)
|
||||
port_base=`echo "$1" | sed -e "s;--port-base=;;"`
|
||||
;;
|
||||
-- ) shift; break ;;
|
||||
--* ) $ECHO "Unrecognized option: $1"; exit 1 ;;
|
||||
* ) break ;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
stop_default_ndbcluster() {
|
||||
|
||||
if [ ! -f $pidfile ] ; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ ! -f $cfgfile ] ; then
|
||||
echo "$cfgfile missing"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
ndb_host=`cat $cfgfile | sed -e "s,.*host=\(.*\)\:.*,\1,1"`
|
||||
ndb_port=`cat $cfgfile | sed -e "s,.*host=$ndb_host\:\([0-9]*\).*,\1,1"`
|
||||
|
||||
# Start management client
|
||||
|
||||
exec_mgmtclient="$bindir/mgmtclient --try-reconnect=1 $ndb_host $ndb_port"
|
||||
|
||||
echo "$exec_mgmtclient"
|
||||
echo "all stop" | $exec_mgmtclient
|
||||
|
||||
sleep 5
|
||||
|
||||
kill `cat $pidfile`
|
||||
rm $pidfile
|
||||
}
|
||||
|
||||
stop_default_ndbcluster
|
||||
|
||||
exit 0
|
@ -121,9 +121,9 @@ create database mysqltest;
|
||||
create table mysqltest.t1 (a int,b int,c int);
|
||||
grant all on mysqltest.t1 to mysqltest_1@localhost;
|
||||
alter table t1 rename t2;
|
||||
ERROR 42000: insert command denied to user: 'mysqltest_1'@'localhost' for table 't2'
|
||||
ERROR 42000: insert command denied to user 'mysqltest_1'@'localhost' for table 't2'
|
||||
revoke all privileges on mysqltest.t1 from mysqltest_1@localhost;
|
||||
delete from mysql.user where user='mysqltest_1';
|
||||
delete from mysql.user where user=_binary'mysqltest_1';
|
||||
drop database mysqltest;
|
||||
create table t1 (n1 int not null, n2 int, n3 int, n4 float,
|
||||
unique(n1),
|
||||
@ -468,5 +468,11 @@ t1 CREATE TABLE `t1` (
|
||||
UNIQUE KEY `b` (`b`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
ALTER TABLE t1 DROP PRIMARY KEY;
|
||||
ERROR 42000: Can't DROP 'PRIMARY'. Check that column/key exists
|
||||
ERROR 42000: Can't DROP 'PRIMARY'; check that column/key exists
|
||||
DROP TABLE t1;
|
||||
create table t1 (a int, b int, key(a));
|
||||
insert into t1 values (1,1), (2,2);
|
||||
alter table t1 drop key no_such_key;
|
||||
ERROR 42000: Can't DROP 'no_such_key'; check that column/key exists
|
||||
alter table t1 drop key a;
|
||||
drop table t1;
|
||||
|
1396
mysql-test/r/archive.result
Normal file
1396
mysql-test/r/archive.result
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,4 +1,5 @@
|
||||
drop table if exists t1;
|
||||
drop table if exists t2;
|
||||
SET SQL_WARNINGS=1;
|
||||
create table t1 (a int not null auto_increment,b int, primary key (a)) engine=myisam auto_increment=3;
|
||||
insert into t1 values (1,1),(NULL,3),(NULL,4);
|
||||
@ -162,7 +163,7 @@ last_insert_id()
|
||||
255
|
||||
insert into t1 set i = null;
|
||||
Warnings:
|
||||
Warning 1264 Data truncated, out of range for column 'i' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'i' at row 1
|
||||
select last_insert_id();
|
||||
last_insert_id()
|
||||
255
|
||||
@ -213,7 +214,7 @@ a b
|
||||
delete from t1 where a=0;
|
||||
update t1 set a=NULL where b=6;
|
||||
Warnings:
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'a' at row 4
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 4
|
||||
update t1 set a=300 where b=7;
|
||||
SET SQL_MODE='';
|
||||
insert into t1(a,b)values(NULL,8);
|
||||
@ -255,7 +256,7 @@ a b
|
||||
delete from t1 where a=0;
|
||||
update t1 set a=NULL where b=13;
|
||||
Warnings:
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'a' at row 9
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 9
|
||||
update t1 set a=500 where b=14;
|
||||
select * from t1 order by b;
|
||||
a b
|
||||
|
@ -9,7 +9,7 @@ set autocommit=0;
|
||||
update t2 set x = 1 where id = 0;
|
||||
select x from t1 where id = 0;
|
||||
select x from t2 where id = 0;
|
||||
ERROR 40001: Deadlock found when trying to get lock; Try restarting transaction
|
||||
ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
|
||||
commit;
|
||||
x
|
||||
1
|
||||
|
@ -1181,3 +1181,73 @@ a
|
||||
A
|
||||
a
|
||||
drop table t1;
|
||||
create table t1(
|
||||
pk1 text not null, pk2 text not null, pk3 char(4),
|
||||
key1 int, key2 int,
|
||||
primary key(pk1(4), pk2(4), pk3), key(key1), key(key2)
|
||||
) engine=bdb;
|
||||
insert into t1 values (concat('aaa-', repeat('A', 4000)),
|
||||
concat('eee-', repeat('e', 4000)), 'a++a', 1, 1);
|
||||
insert into t1 values (concat('bbb-', repeat('B', 4000)),
|
||||
concat('ggg-', repeat('G', 4000)), 'b++b', 1, 1);
|
||||
select substring(pk1, 1, 4), substring(pk1, 4001),
|
||||
substring(pk2, 1, 4), substring(pk2, 4001), pk3, key1, key2
|
||||
from t1 force index(key1, key2) where key1 < 3 or key2 < 3;
|
||||
substring(pk1, 1, 4) substring(pk1, 4001) substring(pk2, 1, 4) substring(pk2, 4001) pk3 key1 key2
|
||||
aaa- AAAA eee- eeee a++a 1 1
|
||||
bbb- BBBB ggg- GGGG b++b 1 1
|
||||
drop table t1;
|
||||
create table t1 (
|
||||
pk1 varchar(8) not null default '',
|
||||
pk2 varchar(4) not null default '',
|
||||
key1 int(11) default null,
|
||||
key2 int(11) default null,
|
||||
primary key (pk1,pk2),
|
||||
key key1 (key1),
|
||||
key key2 (key2)) engine=bdb;
|
||||
insert into t1 values ('','empt',2,2), ('a','a--a',2,2),
|
||||
('bb','b--b',2,2), ('ccc','c--c',2,2), ('dddd','d--d',2,2);
|
||||
select * from t1 force index(key1, key2) where key1 < 3 or key2 < 3;
|
||||
pk1 pk2 key1 key2
|
||||
empt 2 2
|
||||
a a--a 2 2
|
||||
bb b--b 2 2
|
||||
ccc c--c 2 2
|
||||
dddd d--d 2 2
|
||||
drop table t1;
|
||||
set autocommit=0;
|
||||
create table t1(b varchar(30)) engine=bdb;
|
||||
insert into t1 values ('one');
|
||||
commit;
|
||||
select b FROM t1 outer_table where
|
||||
exists (select 'two' from t1 where 'two' = outer_table.b);
|
||||
b
|
||||
drop table t1;
|
||||
set autocommit=1;
|
||||
create table t1(a int primary key, b varchar(30)) engine=bdb;
|
||||
insert into t1 values (1,'one'), (2,'two'), (3,'three'), (4,'four');
|
||||
create table t2 like t1;
|
||||
insert t2 select * from t1;
|
||||
select a from t1 where a in (select a from t2);
|
||||
a
|
||||
1
|
||||
2
|
||||
3
|
||||
4
|
||||
delete from t2;
|
||||
insert into t2 (a, b)
|
||||
select a, b from t1 where (a, b) in (select a, b from t1);
|
||||
select * from t2;
|
||||
a b
|
||||
1 one
|
||||
2 two
|
||||
3 three
|
||||
4 four
|
||||
drop table t1, t2;
|
||||
create table t1 (a int, b varchar(30), primary key(a)) engine = bdb;
|
||||
insert into t1 values (1,'one');
|
||||
commit;
|
||||
truncate t1;
|
||||
select * from t1;
|
||||
a b
|
||||
drop table t1;
|
||||
|
@ -7,5 +7,5 @@ explain extended select count(distinct n) from t1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 index NULL n 4 NULL 200 Using index
|
||||
Warnings:
|
||||
Note 1003 select count(distinct test.t1.n) AS `count(distinct n)` from test.t1
|
||||
Note 1003 select count(distinct `test`.`t1`.`n`) AS `count(distinct n)` from `test`.`t1`
|
||||
drop table t1;
|
||||
|
@ -66,7 +66,7 @@ explain extended select case a when 1 then 2 when 2 then 3 else 0 end as fcase,
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 4 Using temporary; Using filesort
|
||||
Warnings:
|
||||
Note 1003 select (case test.t1.a when 1 then 2 when 2 then 3 else 0 end) AS `fcase`,count(0) AS `count(*)` from test.t1 group by (case test.t1.a when 1 then 2 when 2 then 3 else 0 end)
|
||||
Note 1003 select (case `test`.`t1`.`a` when 1 then 2 when 2 then 3 else 0 end) AS `fcase`,count(0) AS `count(*)` from `test`.`t1` group by (case `test`.`t1`.`a` when 1 then 2 when 2 then 3 else 0 end)
|
||||
select case a when 1 then "one" when 2 then "two" else "nothing" end as fcase, count(*) from t1 group by fcase;
|
||||
fcase count(*)
|
||||
nothing 2
|
||||
|
@ -1,52 +1,67 @@
|
||||
show tables;
|
||||
Tables_in_mysql
|
||||
columns_priv
|
||||
db
|
||||
func
|
||||
help_category
|
||||
help_keyword
|
||||
help_relation
|
||||
help_topic
|
||||
host
|
||||
proc
|
||||
tables_priv
|
||||
user
|
||||
Tables_in_mysql table_type
|
||||
columns_priv BASE TABLE
|
||||
db BASE TABLE
|
||||
func BASE TABLE
|
||||
help_category BASE TABLE
|
||||
help_keyword BASE TABLE
|
||||
help_relation BASE TABLE
|
||||
help_topic BASE TABLE
|
||||
host BASE TABLE
|
||||
proc BASE TABLE
|
||||
tables_priv BASE TABLE
|
||||
time_zone BASE TABLE
|
||||
time_zone_leap_second BASE TABLE
|
||||
time_zone_name BASE TABLE
|
||||
time_zone_transition BASE TABLE
|
||||
time_zone_transition_type BASE TABLE
|
||||
user BASE TABLE
|
||||
show tables;
|
||||
Tables_in_test
|
||||
Tables_in_test table_type
|
||||
grant ALL on *.* to test@localhost identified by "gambling";
|
||||
grant ALL on *.* to test@127.0.0.1 identified by "gambling";
|
||||
show tables;
|
||||
Tables_in_mysql
|
||||
columns_priv
|
||||
db
|
||||
func
|
||||
help_category
|
||||
help_keyword
|
||||
help_relation
|
||||
help_topic
|
||||
host
|
||||
proc
|
||||
tables_priv
|
||||
user
|
||||
Tables_in_mysql table_type
|
||||
columns_priv BASE TABLE
|
||||
db BASE TABLE
|
||||
func BASE TABLE
|
||||
help_category BASE TABLE
|
||||
help_keyword BASE TABLE
|
||||
help_relation BASE TABLE
|
||||
help_topic BASE TABLE
|
||||
host BASE TABLE
|
||||
proc BASE TABLE
|
||||
tables_priv BASE TABLE
|
||||
time_zone BASE TABLE
|
||||
time_zone_leap_second BASE TABLE
|
||||
time_zone_name BASE TABLE
|
||||
time_zone_transition BASE TABLE
|
||||
time_zone_transition_type BASE TABLE
|
||||
user BASE TABLE
|
||||
show tables;
|
||||
Tables_in_test
|
||||
update mysql.user set password=old_password("gambling2") where user="test";
|
||||
Tables_in_test table_type
|
||||
update mysql.user set password=old_password("gambling2") where user=_binary"test";
|
||||
flush privileges;
|
||||
set password=old_password('gambling3');
|
||||
show tables;
|
||||
Tables_in_mysql
|
||||
columns_priv
|
||||
db
|
||||
func
|
||||
help_category
|
||||
help_keyword
|
||||
help_relation
|
||||
help_topic
|
||||
host
|
||||
proc
|
||||
tables_priv
|
||||
user
|
||||
Tables_in_mysql table_type
|
||||
columns_priv BASE TABLE
|
||||
db BASE TABLE
|
||||
func BASE TABLE
|
||||
help_category BASE TABLE
|
||||
help_keyword BASE TABLE
|
||||
help_relation BASE TABLE
|
||||
help_topic BASE TABLE
|
||||
host BASE TABLE
|
||||
proc BASE TABLE
|
||||
tables_priv BASE TABLE
|
||||
time_zone BASE TABLE
|
||||
time_zone_leap_second BASE TABLE
|
||||
time_zone_name BASE TABLE
|
||||
time_zone_transition BASE TABLE
|
||||
time_zone_transition_type BASE TABLE
|
||||
user BASE TABLE
|
||||
show tables;
|
||||
Tables_in_test
|
||||
delete from mysql.user where user="test";
|
||||
Tables_in_test table_type
|
||||
delete from mysql.user where user=_binary"test";
|
||||
flush privileges;
|
||||
|
@ -11,7 +11,7 @@ create table t1 (b char(0) not null);
|
||||
create table if not exists t1 (b char(0) not null);
|
||||
insert into t1 values (""),(null);
|
||||
Warnings:
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'b' at row 2
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'b' at row 2
|
||||
select * from t1;
|
||||
b
|
||||
|
||||
@ -35,7 +35,7 @@ drop table if exists t1;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 't1'
|
||||
create table t1 (ordid int(8) not null auto_increment, ord varchar(50) not null, primary key (ord,ordid)) engine=heap;
|
||||
ERROR 42000: Incorrect table definition; There can only be one auto column and it must be defined as a key
|
||||
ERROR 42000: Incorrect table definition; there can be only one auto column and it must be defined as a key
|
||||
create table not_existing_database.test (a int);
|
||||
Got one of the listed errors
|
||||
create table `a/a` (a int);
|
||||
@ -47,7 +47,7 @@ ERROR 42000: Identifier name 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
create table test (a datetime default now());
|
||||
ERROR 42000: Invalid default value for 'a'
|
||||
create table test (a datetime on update now());
|
||||
ERROR HY000: Invalid ON UPDATE clause for 'a' field
|
||||
ERROR HY000: Invalid ON UPDATE clause for 'a' column
|
||||
create table test (a int default 100 auto_increment);
|
||||
ERROR 42000: Invalid default value for 'a'
|
||||
create table 1ea10 (1a20 int,1e int);
|
||||
@ -275,11 +275,11 @@ ERROR 42000: Incorrect database name 'db1 '
|
||||
create table t1(`a ` int);
|
||||
ERROR 42000: Incorrect column name 'a '
|
||||
create table t1 (a int,);
|
||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
|
||||
create table t1 (a int,,b int);
|
||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'b int)' at line 1
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'b int)' at line 1
|
||||
create table t1 (,b int);
|
||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'b int)' at line 1
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'b int)' at line 1
|
||||
create table t1 (a int, key(a));
|
||||
create table t2 (b int, foreign key(b) references t1(a), key(b));
|
||||
drop table if exists t1,t2;
|
||||
|
19
mysql-test/r/create_select_tmp.result
Normal file
19
mysql-test/r/create_select_tmp.result
Normal file
@ -0,0 +1,19 @@
|
||||
drop table if exists t1, t2;
|
||||
CREATE TABLE t1 ( a int );
|
||||
INSERT INTO t1 VALUES (1),(2),(1);
|
||||
CREATE TABLE t2 ( PRIMARY KEY (a) ) TYPE=INNODB SELECT a FROM t1;
|
||||
ERROR 23000: Duplicate entry '1' for key 1
|
||||
select * from t2;
|
||||
ERROR 42S02: Table 'test.t2' doesn't exist
|
||||
CREATE TEMPORARY TABLE t2 ( PRIMARY KEY (a) ) TYPE=INNODB SELECT a FROM t1;
|
||||
ERROR 23000: Duplicate entry '1' for key 1
|
||||
select * from t2;
|
||||
ERROR 42S02: Table 'test.t2' doesn't exist
|
||||
CREATE TABLE t2 ( PRIMARY KEY (a) ) TYPE=MYISAM SELECT a FROM t1;
|
||||
ERROR 23000: Duplicate entry '1' for key 1
|
||||
select * from t2;
|
||||
ERROR 42S02: Table 'test.t2' doesn't exist
|
||||
CREATE TEMPORARY TABLE t2 ( PRIMARY KEY (a) ) TYPE=MYISAM SELECT a FROM t1;
|
||||
ERROR 23000: Duplicate entry '1' for key 1
|
||||
select * from t2;
|
||||
ERROR 42S02: Table 'test.t2' doesn't exist
|
@ -1,15 +1,37 @@
|
||||
SET @@character_set_server=latin5;
|
||||
CREATE DATABASE db1 DEFAULT CHARACTER SET cp1251;
|
||||
USE db1;
|
||||
CREATE DATABASE db2;
|
||||
SHOW CREATE DATABASE db1;
|
||||
CREATE DATABASE mysqltest1 DEFAULT CHARACTER SET cp1251;
|
||||
USE mysqltest1;
|
||||
CREATE DATABASE mysqltest2;
|
||||
SHOW CREATE DATABASE mysqltest1;
|
||||
Database Create Database
|
||||
db1 CREATE DATABASE `db1` /*!40100 DEFAULT CHARACTER SET cp1251 */
|
||||
SHOW CREATE DATABASE db2;
|
||||
mysqltest1 CREATE DATABASE `mysqltest1` /*!40100 DEFAULT CHARACTER SET cp1251 */
|
||||
SHOW CREATE DATABASE mysqltest2;
|
||||
Database Create Database
|
||||
db2 CREATE DATABASE `db2` /*!40100 DEFAULT CHARACTER SET latin5 */
|
||||
DROP DATABASE db2;
|
||||
USE db1;
|
||||
mysqltest2 CREATE DATABASE `mysqltest2` /*!40100 DEFAULT CHARACTER SET latin5 */
|
||||
CREATE TABLE mysqltest2.t1 (a char(10));
|
||||
SHOW CREATE TABLE mysqltest2.t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` char(10) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin5
|
||||
DROP TABLE mysqltest2.t1;
|
||||
ALTER DATABASE mysqltest2 DEFAULT CHARACTER SET latin7;
|
||||
CREATE TABLE mysqltest2.t1 (a char(10));
|
||||
SHOW CREATE TABLE mysqltest2.t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` char(10) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin7
|
||||
DROP DATABASE mysqltest2;
|
||||
CREATE DATABASE mysqltest2 CHARACTER SET latin2;
|
||||
CREATE TABLE mysqltest2.t1 (a char(10));
|
||||
SHOW CREATE TABLE mysqltest2.t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` char(10) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin2
|
||||
DROP DATABASE mysqltest2;
|
||||
USE mysqltest1;
|
||||
CREATE TABLE t1 (a char(10));
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
@ -32,4 +54,4 @@ t1 CREATE TABLE `t1` (
|
||||
`a` char(10) collate latin1_german1_ci default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_german1_ci
|
||||
DROP TABLE t1;
|
||||
DROP DATABASE db1;
|
||||
DROP DATABASE mysqltest1;
|
||||
|
@ -45,8 +45,8 @@ CREATE TABLE `
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> CHAR(32) CHARACTER SET koi8r NOT NULL COMMENT "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>"
|
||||
) COMMENT "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
|
||||
SHOW TABLES;
|
||||
Tables_in_test
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
Tables_in_test table_type
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> BASE TABLE
|
||||
SHOW CREATE TABLE <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||||
Table Create Table
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CREATE TABLE `<60><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>` (
|
||||
@ -57,8 +57,8 @@ Field Type Null Key Default Extra
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> char(32)
|
||||
SET CHARACTER SET cp1251;
|
||||
SHOW TABLES;
|
||||
Tables_in_test
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
Tables_in_test table_type
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> BASE TABLE
|
||||
SHOW CREATE TABLE <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
|
||||
Table Create Table
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> CREATE TABLE `<60><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>` (
|
||||
@ -69,8 +69,8 @@ Field Type Null Key Default Extra
|
||||
<EFBFBD><EFBFBD><EFBFBD><EFBFBD> char(32)
|
||||
SET CHARACTER SET utf8;
|
||||
SHOW TABLES;
|
||||
Tables_in_test
|
||||
таблица
|
||||
Tables_in_test table_type
|
||||
таблица BASE TABLE
|
||||
SHOW CREATE TABLE таблица;
|
||||
Table Create Table
|
||||
таблица CREATE TABLE `таблица` (
|
||||
@ -93,14 +93,14 @@ SET CHARACTER SET koi8r;
|
||||
CREATE DATABASE <20><><EFBFBD><EFBFBD>;
|
||||
USE <20><><EFBFBD><EFBFBD>;
|
||||
SHOW TABLES;
|
||||
Tables_in_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
Tables_in_<EFBFBD><EFBFBD><EFBFBD><EFBFBD> table_type
|
||||
SHOW TABLES IN <20><><EFBFBD><EFBFBD>;
|
||||
Tables_in_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
Tables_in_<EFBFBD><EFBFBD><EFBFBD><EFBFBD> table_type
|
||||
SET CHARACTER SET cp1251;
|
||||
SHOW TABLES;
|
||||
Tables_in_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
Tables_in_<EFBFBD><EFBFBD><EFBFBD><EFBFBD> table_type
|
||||
SHOW TABLES IN <20><><EFBFBD><EFBFBD>;
|
||||
Tables_in_<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
Tables_in_<EFBFBD><EFBFBD><EFBFBD><EFBFBD> table_type
|
||||
SET CHARACTER SET koi8r;
|
||||
DROP DATABASE <20><><EFBFBD><EFBFBD>;
|
||||
SET NAMES koi8r;
|
||||
@ -111,3 +111,34 @@ SET character_set_connection=cp1251;
|
||||
SELECT hex('<27><><EFBFBD><EFBFBD>');
|
||||
hex('<27><><EFBFBD><EFBFBD>')
|
||||
F2E5F1F2
|
||||
USE test;
|
||||
SET NAMES binary;
|
||||
CREATE TABLE `тест` (`тест` int);
|
||||
SHOW CREATE TABLE `тест`;
|
||||
Table Create Table
|
||||
тест CREATE TABLE `тест` (
|
||||
`тест` int(11) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
SET NAMES utf8;
|
||||
SHOW CREATE TABLE `тест`;
|
||||
Table Create Table
|
||||
тест CREATE TABLE `тест` (
|
||||
`тест` int(11) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
DROP TABLE `тест`;
|
||||
SET NAMES binary;
|
||||
SET character_set_connection=utf8;
|
||||
SELECT 'тест' as s;
|
||||
s
|
||||
тест
|
||||
SET NAMES utf8;
|
||||
SET character_set_connection=binary;
|
||||
SELECT 'тест' as s;
|
||||
s
|
||||
тест
|
||||
SET NAMES binary;
|
||||
CREATE TABLE `good<6F><64><EFBFBD><EFBFBD><EFBFBD>` (a int);
|
||||
ERROR HY000: Invalid utf8 character string: '<27><><EFBFBD><EFBFBD><EFBFBD>'
|
||||
SET NAMES utf8;
|
||||
CREATE TABLE `good<6F><64><EFBFBD><EFBFBD><EFBFBD>` (a int);
|
||||
ERROR HY000: Invalid utf8 character string: '<27><><EFBFBD><EFBFBD><EFBFBD>` (a int)'
|
||||
|
1764
mysql-test/r/ctype_uca.result
Normal file
1764
mysql-test/r/ctype_uca.result
Normal file
File diff suppressed because it is too large
Load Diff
@ -47,6 +47,15 @@ t1 CREATE TABLE `t1` (
|
||||
`r` char(10) character set ucs2 NOT NULL default ''
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
DROP TABLE t1;
|
||||
create table t2(f1 Char(30));
|
||||
insert into t2 values ("103000"), ("22720000"), ("3401200"), ("78000");
|
||||
select lpad(f1, 12, "-o-/") from t2;
|
||||
lpad(f1, 12, "-o-/")
|
||||
-o-/-o103000
|
||||
-o-/22720000
|
||||
-o-/-3401200
|
||||
-o-/-o-78000
|
||||
drop table t2;
|
||||
SET NAMES koi8r;
|
||||
SET character_set_connection=ucs2;
|
||||
create table t1 (a varchar(10) character set ucs2, key(a));
|
||||
|
@ -111,3 +111,18 @@ no index
|
||||
<EFBFBD><EFBFBD>
|
||||
<EFBFBD><EFBFBD>
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (
|
||||
a char(1) NOT NULL default '',
|
||||
b enum('<27><>','<27><>') default NULL
|
||||
) CHARACTER SET ujis;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` char(1) NOT NULL default '',
|
||||
`b` enum('<27><>','<27><>') default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=ujis
|
||||
SHOW COLUMNS FROM t1;
|
||||
Field Type Null Key Default Extra
|
||||
a char(1)
|
||||
b enum('<27><>','<27><>') YES NULL
|
||||
DROP TABLE t1;
|
||||
|
@ -218,3 +218,28 @@ b
|
||||
select * from t1 where a = 'b' and a != 'b';
|
||||
a
|
||||
drop table t1;
|
||||
set names utf8;
|
||||
select 'вася' rlike '[[:<:]]вася[[:>:]]';
|
||||
'вася' rlike '[[:<:]]вася[[:>:]]'
|
||||
1
|
||||
select 'вася ' rlike '[[:<:]]вася[[:>:]]';
|
||||
'вася ' rlike '[[:<:]]вася[[:>:]]'
|
||||
1
|
||||
select ' вася' rlike '[[:<:]]вася[[:>:]]';
|
||||
' вася' rlike '[[:<:]]вася[[:>:]]'
|
||||
1
|
||||
select ' вася ' rlike '[[:<:]]вася[[:>:]]';
|
||||
' вася ' rlike '[[:<:]]вася[[:>:]]'
|
||||
1
|
||||
select 'васяz' rlike '[[:<:]]вася[[:>:]]';
|
||||
'васяz' rlike '[[:<:]]вася[[:>:]]'
|
||||
0
|
||||
select 'zвася' rlike '[[:<:]]вася[[:>:]]';
|
||||
'zвася' rlike '[[:<:]]вася[[:>:]]'
|
||||
0
|
||||
select 'zвасяz' rlike '[[:<:]]вася[[:>:]]';
|
||||
'zвасяz' rlike '[[:<:]]вася[[:>:]]'
|
||||
0
|
||||
CREATE TABLE t1 (a enum ('Y', 'N') DEFAULT 'N' COLLATE utf8_unicode_ci);
|
||||
ALTER TABLE t1 ADD COLUMN b CHAR(20);
|
||||
DROP TABLE t1;
|
||||
|
@ -303,14 +303,14 @@ date format str_to_date
|
||||
2003-01-02 10:11:12 %Y-%m-%d %h:%i:%S 2003-01-02 10:11:12
|
||||
03-01-02 10:11:12 PM %Y-%m-%d %h:%i:%S %p 0003-01-02 22:11:12
|
||||
Warnings:
|
||||
Note 1292 Truncated wrong string value: '10:20:10AM'
|
||||
Warning 1292 Truncated incorrect datetime value: '10:20:10AM'
|
||||
select date,format,concat(str_to_date(date, format),'') as con from t1;
|
||||
date format con
|
||||
10:20:10AM %h:%i:%s 0000-00-00 10:20:10
|
||||
2003-01-02 10:11:12 %Y-%m-%d %h:%i:%S 2003-01-02 10:11:12
|
||||
03-01-02 10:11:12 PM %Y-%m-%d %h:%i:%S %p 0003-01-02 22:11:12
|
||||
Warnings:
|
||||
Note 1292 Truncated wrong string value: '10:20:10AM'
|
||||
Warning 1292 Truncated incorrect datetime value: '10:20:10AM'
|
||||
drop table t1;
|
||||
select get_format(DATE, 'USA') as a;
|
||||
a
|
||||
@ -374,7 +374,7 @@ str_to_date("02 10", "%d %f") as f6;
|
||||
f1 f2 f3 f4 f5 f6
|
||||
2003-01-02 10:11:12.001200 2003-01-02 10:11:12 2003-01-02 58:11:12 58:11:12 48:00:00.100000
|
||||
Warnings:
|
||||
Note 1292 Truncated wrong datetime value: '2003-01-02 10:11:12.0012'
|
||||
Warning 1292 Truncated incorrect datetime value: '2003-01-02 10:11:12.0012'
|
||||
drop table t1, t2;
|
||||
select str_to_date("2003-01-02 10:11:12.0012ABCD", "%Y-%m-%d %H:%i:%S.%f") as f1,
|
||||
addtime("-01:01:01.01 GGG", "-23:59:59.1") as f2,
|
||||
@ -382,13 +382,13 @@ microsecond("1997-12-31 23:59:59.01XXXX") as f3;
|
||||
f1 f2 f3
|
||||
2003-01-02 10:11:12.001200 -25:01:00.110000 10000
|
||||
Warnings:
|
||||
Note 1292 Truncated wrong datetime value: '2003-01-02 10:11:12.0012ABCD'
|
||||
Note 1292 Truncated wrong time value: '-01:01:01.01 GG'
|
||||
Note 1292 Truncated wrong datetime value: '1997-12-31 23:59:59.01XXXX'
|
||||
Warning 1292 Truncated incorrect datetime value: '2003-01-02 10:11:12.0012ABCD'
|
||||
Warning 1292 Truncated incorrect time value: '-01:01:01.01 GGG'
|
||||
Warning 1292 Truncated incorrect time value: '1997-12-31 23:59:59.01XXXX'
|
||||
select str_to_date("2003-04-05 g", "%Y-%m-%d") as f1,
|
||||
str_to_date("2003-04-05 10:11:12.101010234567", "%Y-%m-%d %H:%i:%S.%f") as f2;
|
||||
f1 f2
|
||||
2003-04-05 2003-04-05 10:11:12.101010
|
||||
Warnings:
|
||||
Note 1292 Truncated wrong date value: '2003-04-05 g'
|
||||
Note 1292 Truncated wrong datetime value: '2003-04-05 10:11:12.101010234567'
|
||||
Warning 1292 Truncated incorrect date value: '2003-04-05 g'
|
||||
Warning 1292 Truncated incorrect datetime value: '2003-04-05 10:11:12.101010234567'
|
||||
|
@ -120,3 +120,13 @@ a b
|
||||
0 10
|
||||
1 11
|
||||
drop table t11, t12, t2;
|
||||
create table t1 (a int, b int, unique key (a), key (b));
|
||||
insert into t1 values (3, 3), (7, 7);
|
||||
delete t1 from t1 where a = 3;
|
||||
check table t1;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 check status OK
|
||||
select * from t1;
|
||||
a b
|
||||
7 7
|
||||
drop table t1;
|
||||
|
@ -27,7 +27,7 @@ a y
|
||||
SELECT a FROM (SELECT 1 FROM (SELECT 1) a HAVING a=1) b;
|
||||
ERROR 42S22: Unknown column 'a' in 'having clause'
|
||||
SELECT a,b as a FROM (SELECT '1' as a,'2' as b) b HAVING a=1;
|
||||
ERROR 23000: Column: 'a' in having clause is ambiguous
|
||||
ERROR 23000: Column 'a' in having clause is ambiguous
|
||||
SELECT a,2 as a FROM (SELECT '1' as a) b HAVING a=2;
|
||||
a a
|
||||
1 2
|
||||
@ -204,22 +204,22 @@ x
|
||||
1
|
||||
create table t1 select 1 as a;
|
||||
select 2 as a from (select * from t1) b;
|
||||
ERROR 3D000: No Database Selected
|
||||
ERROR 3D000: No database selected
|
||||
use test;
|
||||
select 2 as a from (select * from t1) b;
|
||||
a
|
||||
2
|
||||
drop table t1;
|
||||
select mail_id, if(folder.f_description!='', folder.f_description, folder.f_name) as folder_name, date, address_id, phrase, address, subject from folder, (select mail.mail_id as mail_id, date_format(mail.h_date, '%b %e, %Y %h:%i') as date, mail.folder_id, sender.address_id as address_id, sender.phrase as phrase, sender.address as address, mail.h_subject as subject from mail left join mxa as mxa_sender on mail.mail_id=mxa_sender.mail_id and mxa_sender.type='from' left join address as sender on mxa_sender.address_id=sender.address_id mxa as mxa_recipient, address as recipient, where 1 and mail.mail_id=mxa_recipient.mail_id and mxa_recipient.address_id=recipient.address_id and mxa_recipient.type='to' and match(sender.phrase, sender.address, sender.comment) against ('jeremy' in boolean mode) and match(recipient.phrase, recipient.address, recipient.comment) against ('monty' in boolean mode) order by mail.h_date desc limit 0, 25 ) as query where query.folder_id=folder.folder_id;
|
||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'mxa as mxa_recipient, address as recipient, where 1 and mail.mail_id=mxa_r' at line 1
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mxa as mxa_recipient, address as recipient, where 1 and mail.mail_id=mxa_r' at line 1
|
||||
create table t1 (a int);
|
||||
insert into t1 values (1),(2),(3);
|
||||
update (select * from t1) as t1 set a = 5;
|
||||
ERROR HY000: The target table t1 of the UPDATE is not updatable
|
||||
delete from (select * from t1);
|
||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '(select * from t1)' at line 1
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(select * from t1)' at line 1
|
||||
insert into (select * from t1) values (5);
|
||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '(select * from t1) values (5)' at line 1
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(select * from t1) values (5)' at line 1
|
||||
drop table t1;
|
||||
create table t1 (E1 INTEGER UNSIGNED NOT NULL, E2 INTEGER UNSIGNED NOT NULL, E3 INTEGER UNSIGNED NOT NULL, PRIMARY KEY(E1)
|
||||
);
|
||||
|
@ -52,6 +52,6 @@ ERROR HY000: Can't execute the query because you have a conflicting read lock
|
||||
unlock tables;
|
||||
create table t1(n int);
|
||||
show tables;
|
||||
Tables_in_test
|
||||
t1
|
||||
Tables_in_test table_type
|
||||
t1 BASE TABLE
|
||||
drop table t1;
|
||||
|
@ -157,7 +157,7 @@ teststring
|
||||
teststring
|
||||
explain select * from t1 order by text1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 index NULL key1 32 NULL 4 Using index
|
||||
1 SIMPLE t1 index NULL key1 32 NULL 3 Using index
|
||||
alter table t1 modify text1 char(32) binary not null;
|
||||
select * from t1 order by text1;
|
||||
text1
|
||||
|
66
mysql-test/r/flush_table.result
Normal file
66
mysql-test/r/flush_table.result
Normal file
@ -0,0 +1,66 @@
|
||||
drop table if exists t1,t2;
|
||||
create table t1 (a int not null auto_increment primary key);
|
||||
insert into t1 values(0);
|
||||
lock table t1 read;
|
||||
flush table t1;
|
||||
check table t1;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 check status OK
|
||||
drop table t1;
|
||||
create table t1(table_id char(20) primary key);
|
||||
create table t2(table_id char(20) primary key);
|
||||
insert into t1 values ('test.t1');
|
||||
insert into t1 values ('');
|
||||
insert into t2 values ('test.t2');
|
||||
insert into t2 values ('');
|
||||
handler t1 open as a1;
|
||||
handler t1 open as a2;
|
||||
handler t2 open;
|
||||
handler a1 read first limit 9;
|
||||
table_id
|
||||
test.t1
|
||||
|
||||
handler a2 read first limit 9;
|
||||
table_id
|
||||
test.t1
|
||||
|
||||
handler t2 read first limit 9;
|
||||
table_id
|
||||
test.t2
|
||||
|
||||
flush tables;
|
||||
handler a1 read first limit 9;
|
||||
ERROR 42S02: Unknown table 'a1' in HANDLER
|
||||
handler a2 read first limit 9;
|
||||
ERROR 42S02: Unknown table 'a2' in HANDLER
|
||||
handler t2 read first limit 9;
|
||||
ERROR 42S02: Unknown table 't2' in HANDLER
|
||||
handler t1 open as a1;
|
||||
handler t1 open as a2;
|
||||
handler t2 open;
|
||||
handler a1 read first limit 9;
|
||||
table_id
|
||||
test.t1
|
||||
|
||||
handler a2 read first limit 9;
|
||||
table_id
|
||||
test.t1
|
||||
|
||||
handler t2 read first limit 9;
|
||||
table_id
|
||||
test.t2
|
||||
|
||||
flush table t1;
|
||||
handler a1 read first limit 9;
|
||||
ERROR 42S02: Unknown table 'a1' in HANDLER
|
||||
handler a2 read first limit 9;
|
||||
ERROR 42S02: Unknown table 'a2' in HANDLER
|
||||
handler t2 read first limit 9;
|
||||
table_id
|
||||
test.t2
|
||||
|
||||
flush table t2;
|
||||
handler t2 close;
|
||||
ERROR 42S02: Unknown table 't2' in HANDLER
|
||||
drop table t1;
|
||||
drop table t2;
|
@ -7,8 +7,8 @@ INSERT INTO t1 VALUES('MySQL has now support', 'for full-text search'),
|
||||
('Full-text search in MySQL', 'implements vector space model');
|
||||
SHOW INDEX FROM t1;
|
||||
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
|
||||
t1 1 a 1 a A NULL NULL NULL YES FULLTEXT
|
||||
t1 1 a 2 b A NULL NULL NULL YES FULLTEXT
|
||||
t1 1 a 1 a NULL NULL NULL NULL YES FULLTEXT
|
||||
t1 1 a 2 b NULL NULL NULL NULL YES FULLTEXT
|
||||
select * from t1 where MATCH(a,b) AGAINST ("collections");
|
||||
a b
|
||||
Only MyISAM tables support collections
|
||||
@ -17,7 +17,7 @@ explain extended select * from t1 where MATCH(a,b) AGAINST ("collections");
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 fulltext a a 0 1 Using where
|
||||
Warnings:
|
||||
Note 1003 select test.t1.a AS `a`,test.t1.b AS `b` from test.t1 where (match test.t1.a,test.t1.b against (_latin1'collections'))
|
||||
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b` from `test`.`t1` where (match `test`.`t1`.`a`,`test`.`t1`.`b` against (_latin1'collections'))
|
||||
select * from t1 where MATCH(a,b) AGAINST ("indexes");
|
||||
a b
|
||||
Full-text indexes are called collections
|
||||
@ -78,7 +78,7 @@ explain extended select * from t1 where MATCH(a,b) AGAINST("support -collections
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 fulltext a a 0 1 Using where
|
||||
Warnings:
|
||||
Note 1003 select test.t1.a AS `a`,test.t1.b AS `b` from test.t1 where (match test.t1.a,test.t1.b against (_latin1'support -collections' in boolean mode))
|
||||
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b` from `test`.`t1` where (match `test`.`t1`.`a`,`test`.`t1`.`b` against (_latin1'support -collections' in boolean mode))
|
||||
select * from t1 where MATCH(a,b) AGAINST("support collections" IN BOOLEAN MODE);
|
||||
a b
|
||||
MySQL has now support for full-text search
|
||||
@ -223,7 +223,7 @@ id
|
||||
show keys from t2;
|
||||
Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
|
||||
t2 1 tig 1 ticket A NULL NULL NULL YES BTREE
|
||||
t2 1 tix 1 inhalt A NULL NULL NULL YES FULLTEXT
|
||||
t2 1 tix 1 inhalt NULL NULL NULL NULL YES FULLTEXT
|
||||
show create table t2;
|
||||
Table Create Table
|
||||
t2 CREATE TABLE `t2` (
|
||||
@ -253,11 +253,11 @@ KEY tig (ticket),
|
||||
fulltext index tix (inhalt)
|
||||
);
|
||||
select * from t2 where MATCH inhalt AGAINST (t2.inhalt);
|
||||
ERROR HY000: Wrong arguments to AGAINST
|
||||
ERROR HY000: Incorrect arguments to AGAINST
|
||||
select * from t2 where MATCH ticket AGAINST ('foobar');
|
||||
ERROR HY000: Can't find FULLTEXT index matching the column list
|
||||
select * from t2,t3 where MATCH (t2.inhalt,t3.inhalt) AGAINST ('foobar');
|
||||
ERROR HY000: Wrong arguments to MATCH
|
||||
ERROR HY000: Incorrect arguments to MATCH
|
||||
drop table t1,t2,t3;
|
||||
CREATE TABLE t1 (
|
||||
id int(11) auto_increment,
|
||||
@ -363,3 +363,14 @@ SELECT t, collation(t) FROM t1 WHERE MATCH t AGAINST ('Osnabrueck');
|
||||
t collation(t)
|
||||
aus Osnabr<62>ck latin1_german2_ci
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (s varchar(255), FULLTEXT (s)) DEFAULT CHARSET=utf8;
|
||||
insert into t1 (s) values ('p<>ra para para'),('para para para');
|
||||
select * from t1 where match(s) against('para' in boolean mode);
|
||||
s
|
||||
p<EFBFBD>ra para para
|
||||
para para para
|
||||
select * from t1 where match(s) against('par*' in boolean mode);
|
||||
s
|
||||
p<EFBFBD>ra para para
|
||||
para para para
|
||||
DROP TABLE t1;
|
||||
|
@ -66,5 +66,5 @@ NULL
|
||||
NULL
|
||||
Warnings:
|
||||
Error 1259 ZLIB: Input data corrupted
|
||||
Error 1256 Too big size of uncompressed data. The maximum size is 1048576. (probably, length of uncompressed data was corrupted)
|
||||
Error 1256 Uncompressed data size too large; the maximum size is 1048576 (probably, length of uncompressed data was corrupted)
|
||||
drop table t1;
|
||||
|
@ -8,7 +8,7 @@ explain extended select default(str), default(strnull), default(intg), default(r
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 system NULL NULL NULL NULL 1
|
||||
Warnings:
|
||||
Note 1003 select default(test.t1.str) AS `default(str)`,default(test.t1.strnull) AS `default(strnull)`,default(test.t1.intg) AS `default(intg)`,default(test.t1.rel) AS `default(rel)` from test.t1
|
||||
Note 1003 select default(`test`.`t1`.`str`) AS `default(str)`,default(`test`.`t1`.`strnull`) AS `default(strnull)`,default(`test`.`t1`.`intg`) AS `default(intg)`,default(`test`.`t1`.`rel`) AS `default(rel)` from `test`.`t1`
|
||||
select * from t1 where str <> default(str);
|
||||
str strnull intg rel
|
||||
0 0
|
||||
|
@ -18,7 +18,7 @@ explain extended select grp,group_concat(c) from t1 group by grp;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 9 Using filesort
|
||||
Warnings:
|
||||
Note 1003 select test.t1.grp AS `grp`,group_concat(test.t1.c seperator ',') AS `group_concat(c)` from test.t1 group by test.t1.grp
|
||||
Note 1003 select `test`.`t1`.`grp` AS `grp`,group_concat(`test`.`t1`.`c` seperator ',') AS `group_concat(c)` from `test`.`t1` group by `test`.`t1`.`grp`
|
||||
select grp,group_concat(a,c) from t1 group by grp;
|
||||
grp group_concat(a,c)
|
||||
1 1a
|
||||
@ -93,7 +93,7 @@ explain extended select grp,group_concat(distinct c order by c desc) from t1 gro
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 9 Using filesort
|
||||
Warnings:
|
||||
Note 1003 select test.t1.grp AS `grp`,group_concat(distinct test.t1.c order by test.t1.c seperator ',') AS `group_concat(distinct c order by c desc)` from test.t1 group by test.t1.grp
|
||||
Note 1003 select `test`.`t1`.`grp` AS `grp`,group_concat(distinct `test`.`t1`.`c` order by `test`.`t1`.`c` seperator ',') AS `group_concat(distinct c order by c desc)` from `test`.`t1` group by `test`.`t1`.`grp`
|
||||
select grp,group_concat(c order by c separator ",") from t1 group by grp;
|
||||
grp group_concat(c order by c separator ",")
|
||||
1 a
|
||||
@ -113,7 +113,7 @@ explain extended select grp,group_concat(distinct c order by c separator ",") fr
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 9 Using filesort
|
||||
Warnings:
|
||||
Note 1003 select test.t1.grp AS `grp`,group_concat(distinct test.t1.c order by test.t1.c seperator ',') AS `group_concat(distinct c order by c separator ",")` from test.t1 group by test.t1.grp
|
||||
Note 1003 select `test`.`t1`.`grp` AS `grp`,group_concat(distinct `test`.`t1`.`c` order by `test`.`t1`.`c` seperator ',') AS `group_concat(distinct c order by c separator ",")` from `test`.`t1` group by `test`.`t1`.`grp`
|
||||
select grp,group_concat(distinct c order by c desc separator ",") from t1 group by grp;
|
||||
grp group_concat(distinct c order by c desc separator ",")
|
||||
1 a
|
||||
@ -149,19 +149,19 @@ grp group_concat(c order by c)
|
||||
3 D,D,E
|
||||
4
|
||||
5 NULL
|
||||
set group_concat_max_len = 5;
|
||||
set group_concat_max_len = 4;
|
||||
select grp,group_concat(c) from t1 group by grp;
|
||||
grp group_concat(c)
|
||||
1 NULL
|
||||
2 b
|
||||
3 D,D,E
|
||||
3 D,D,
|
||||
4
|
||||
5 NULL
|
||||
Warnings:
|
||||
Warning 1260 1 line(s) was(were) cut by group_concat()
|
||||
Warning 1260 1 line(s) were cut by GROUP_CONCAT()
|
||||
show warnings;
|
||||
Level Code Message
|
||||
Warning 1260 1 line(s) was(were) cut by group_concat()
|
||||
Warning 1260 1 line(s) were cut by GROUP_CONCAT()
|
||||
set group_concat_max_len = 1024;
|
||||
select group_concat(sum(a)) from t1 group by grp;
|
||||
ERROR HY000: Invalid use of group function
|
||||
@ -172,7 +172,7 @@ create table t1 ( URL_ID int(11), URL varchar(80));
|
||||
create table t2 ( REQ_ID int(11), URL_ID int(11));
|
||||
insert into t1 values (4,'www.host.com'), (5,'www.google.com'),(5,'www.help.com');
|
||||
insert into t2 values (1,4), (5,4), (5,5);
|
||||
select REQ_ID, Group_Concat(URL) as URL from t1, t2 where
|
||||
select REQ_ID, Group_Concat(URL) as URL from t1, t2 where
|
||||
t2.URL_ID = t1.URL_ID group by REQ_ID;
|
||||
REQ_ID URL
|
||||
1 X
|
||||
@ -310,3 +310,14 @@ GROUP_CONCAT(t1.a*t2.a ORDER BY t2.a)
|
||||
1,2
|
||||
2,4
|
||||
DROP TABLE t1, t2;
|
||||
CREATE TABLE t1 (a char(4));
|
||||
INSERT INTO t1 VALUES ('John'), ('Anna'), ('Bill');
|
||||
SELECT GROUP_CONCAT(a SEPARATOR '||') AS names FROM t1
|
||||
HAVING names LIKE '%An%';
|
||||
names
|
||||
John||Anna||Bill
|
||||
SELECT GROUP_CONCAT(a SEPARATOR '###') AS names FROM t1
|
||||
HAVING LEFT(names, 1) ='J';
|
||||
names
|
||||
John###Anna###Bill
|
||||
DROP TABLE t1;
|
||||
|
@ -265,7 +265,7 @@ explain extended select SQL_BIG_RESULT a,count(b), sum(b), avg(b), std(b), min(b
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 5 Using filesort
|
||||
Warnings:
|
||||
Note 1003 select sql_big_result test.t1.a AS `a`,count(test.t1.b) AS `count(b)`,sum(test.t1.b) AS `sum(b)`,avg(test.t1.b) AS `avg(b)`,std(test.t1.b) AS `std(b)`,min(test.t1.b) AS `min(b)`,max(test.t1.b) AS `max(b)`,bit_and(test.t1.b) AS `bit_and(b)`,bit_or(test.t1.b) AS `bit_or(b)`,bit_xor(test.t1.b) AS `bit_xor(b)` from test.t1 group by test.t1.a
|
||||
Note 1003 select sql_big_result `test`.`t1`.`a` AS `a`,count(`test`.`t1`.`b`) AS `count(b)`,sum(`test`.`t1`.`b`) AS `sum(b)`,avg(`test`.`t1`.`b`) AS `avg(b)`,std(`test`.`t1`.`b`) AS `std(b)`,min(`test`.`t1`.`b`) AS `min(b)`,max(`test`.`t1`.`b`) AS `max(b)`,bit_and(`test`.`t1`.`b`) AS `bit_and(b)`,bit_or(`test`.`t1`.`b`) AS `bit_or(b)`,bit_xor(`test`.`t1`.`b`) AS `bit_xor(b)` from `test`.`t1` group by `test`.`t1`.`a`
|
||||
drop table t1;
|
||||
create table t1 (col int);
|
||||
insert into t1 values (-1), (-2), (-3);
|
||||
@ -321,6 +321,7 @@ insert into t2 values('DEN','Denver','CO','BDL');
|
||||
insert into t2 values('SDC','San Diego','CA','TWU');
|
||||
insert into t2 values('NOL','New Orleans','LA','GTM');
|
||||
insert into t2 values('LAK','Los Angeles','CA','TWU');
|
||||
insert into t2 values('AAA','AAA','AA','AME');
|
||||
select * from t1;
|
||||
a1 a2 a3 a4 a5
|
||||
AME 0 SEA 0.1 1942-02-19
|
||||
@ -345,6 +346,7 @@ DEN Denver CO BDL
|
||||
SDC San Diego CA TWU
|
||||
NOL New Orleans LA GTM
|
||||
LAK Los Angeles CA TWU
|
||||
AAA AAA AA AME
|
||||
explain
|
||||
select min(a1) from t1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
@ -656,3 +658,31 @@ select stddev(2) from t1;
|
||||
stddev(2)
|
||||
NULL
|
||||
drop table t1;
|
||||
create table t1 (a int);
|
||||
insert into t1 values (1),(2);
|
||||
prepare stmt1 from 'SELECT COUNT(*) FROM t1';
|
||||
execute stmt1;
|
||||
COUNT(*)
|
||||
2
|
||||
execute stmt1;
|
||||
COUNT(*)
|
||||
2
|
||||
execute stmt1;
|
||||
COUNT(*)
|
||||
2
|
||||
deallocate prepare stmt1;
|
||||
drop table t1;
|
||||
create table t1 (a int, primary key(a));
|
||||
insert into t1 values (1),(2);
|
||||
prepare stmt1 from 'SELECT max(a) FROM t1';
|
||||
execute stmt1;
|
||||
max(a)
|
||||
2
|
||||
execute stmt1;
|
||||
max(a)
|
||||
2
|
||||
execute stmt1;
|
||||
max(a)
|
||||
2
|
||||
deallocate prepare stmt1;
|
||||
drop table t1;
|
||||
|
@ -43,7 +43,7 @@ explain extended select if(u=1,st,binary st) s from t1 where st like "%a%" order
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 7 Using where; Using filesort
|
||||
Warnings:
|
||||
Note 1003 select if((test.t1.u = 1),test.t1.st,(test.t1.st collate _latin1'BINARY')) AS `s` from test.t1 where (test.t1.st like _latin1'%a%') order by if((test.t1.u = 1),test.t1.st,(test.t1.st collate _latin1'BINARY'))
|
||||
Note 1003 select if((`test`.`t1`.`u` = 1),`test`.`t1`.`st`,(`test`.`t1`.`st` collate _latin1'BINARY')) AS `s` from `test`.`t1` where (`test`.`t1`.`st` like _latin1'%a%') order by if((`test`.`t1`.`u` = 1),`test`.`t1`.`st`,(`test`.`t1`.`st` collate _latin1'BINARY'))
|
||||
select nullif(u=0, 'test') from t1;
|
||||
nullif(u=0, 'test')
|
||||
NULL
|
||||
@ -57,7 +57,7 @@ explain extended select nullif(u=0, 'test') from t1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 7
|
||||
Warnings:
|
||||
Note 1003 select nullif((test.t1.u = 0),_latin1'test') AS `nullif(u=0, 'test')` from test.t1
|
||||
Note 1003 select nullif((`test`.`t1`.`u` = 0),_latin1'test') AS `nullif(u=0, 'test')` from `test`.`t1`
|
||||
drop table t1;
|
||||
select NULLIF(NULL,NULL), NULLIF(NULL,1), NULLIF(NULL,1.0), NULLIF(NULL,"test");
|
||||
NULLIF(NULL,NULL) NULLIF(NULL,1) NULLIF(NULL,1.0) NULLIF(NULL,"test")
|
||||
@ -77,3 +77,9 @@ select min(if(y -x > 5,y,NULL)), max(if(y - x > 5,y,NULL)) from t1;
|
||||
min(if(y -x > 5,y,NULL)) max(if(y - x > 5,y,NULL))
|
||||
6 56
|
||||
drop table t1;
|
||||
create table t1 (a int);
|
||||
insert t1 values (1),(2);
|
||||
select if(1>2,a,avg(a)) from t1;
|
||||
if(1>2,a,avg(a))
|
||||
1.5000
|
||||
drop table t1;
|
||||
|
@ -146,7 +146,7 @@ explain extended select * from t1 where 'a' in (a,b,c collate latin1_bin);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 2 Using where
|
||||
Warnings:
|
||||
Note 1003 select test.t1.a AS `a`,test.t1.b AS `b`,test.t1.c AS `c` from test.t1 where (_latin1'a' in (test.t1.a,test.t1.b,(test.t1.c collate _latin1'latin1_bin')))
|
||||
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t1`.`c` AS `c` from `test`.`t1` where (_latin1'a' in (`test`.`t1`.`a`,`test`.`t1`.`b`,(`test`.`t1`.`c` collate _latin1'latin1_bin')))
|
||||
drop table t1;
|
||||
select '1.0' in (1,2);
|
||||
'1.0' in (1,2)
|
||||
|
@ -45,6 +45,12 @@ a\b
|
||||
select * from t1 where a like 'a\\%' escape '#' and a like 'a\\\\b';
|
||||
a
|
||||
a\b
|
||||
prepare stmt1 from 'select * from t1 where a like \'a\\%\' escape ?';
|
||||
set @esc='#';
|
||||
execute stmt1 using @esc;
|
||||
a
|
||||
a\b
|
||||
deallocate prepare stmt1;
|
||||
drop table t1;
|
||||
create table t1 (a datetime);
|
||||
insert into t1 values ('2004-03-11 12:00:21');
|
||||
|
@ -40,7 +40,7 @@ explain extended select * from t1 where xxx regexp('is a test of some long text
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 system NULL NULL NULL NULL 1
|
||||
Warnings:
|
||||
Note 1003 select test.t1.xxx AS `xxx` from test.t1 where (test.t1.xxx regexp _latin1'is a test of some long text to')
|
||||
Note 1003 select `test`.`t1`.`xxx` AS `xxx` from `test`.`t1` where (`test`.`t1`.`xxx` regexp _latin1'is a test of some long text to')
|
||||
select * from t1 where xxx regexp('is a test of some long text to ');
|
||||
xxx
|
||||
this is a test of some long text to see what happens
|
||||
@ -81,3 +81,20 @@ _latin1'a' regexp _latin1'A' collate latin1_general_ci
|
||||
select _latin1'a' regexp _latin1'A' collate latin1_bin;
|
||||
_latin1'a' regexp _latin1'A' collate latin1_bin
|
||||
0
|
||||
create table t1 (a varchar(40));
|
||||
insert into t1 values ('C1'),('C2'),('R1'),('C3'),('R2'),('R3');
|
||||
prepare stmt1 from 'select a from t1 where a rlike ? order by a';
|
||||
set @a="^C.*";
|
||||
execute stmt1 using @a;
|
||||
a
|
||||
C1
|
||||
C2
|
||||
C3
|
||||
set @a="^R.*";
|
||||
execute stmt1 using @a;
|
||||
a
|
||||
R1
|
||||
R2
|
||||
R3
|
||||
deallocate prepare stmt1;
|
||||
drop table t1;
|
||||
|
@ -119,6 +119,8 @@ timestamp("2001-12-01", "01:01:01.999999")
|
||||
select timestamp("2001-13-01", "01:01:01.000001");
|
||||
timestamp("2001-13-01", "01:01:01.000001")
|
||||
NULL
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect datetime value: '2001-13-01'
|
||||
select timestamp("2001-12-01", "25:01:01");
|
||||
timestamp("2001-12-01", "25:01:01")
|
||||
2001-12-02 01:01:01
|
||||
@ -137,12 +139,16 @@ date("1997-12-31 23:59:59.000001")
|
||||
select date("1997-13-31 23:59:59.000001");
|
||||
date("1997-13-31 23:59:59.000001")
|
||||
NULL
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect datetime value: '1997-13-31 23:59:59.000001'
|
||||
select time("1997-12-31 23:59:59.000001");
|
||||
time("1997-12-31 23:59:59.000001")
|
||||
23:59:59.000001
|
||||
select time("1997-12-31 25:59:59.000001");
|
||||
time("1997-12-31 25:59:59.000001")
|
||||
NULL
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect time value: '1997-12-31 25:59:59.000001'
|
||||
select microsecond("1997-12-31 23:59:59.000001");
|
||||
microsecond("1997-12-31 23:59:59.000001")
|
||||
1
|
||||
|
@ -192,9 +192,9 @@ length(quote(concat(char(0),"test")))
|
||||
select hex(quote(concat(char(224),char(227),char(230),char(231),char(232),char(234),char(235))));
|
||||
hex(quote(concat(char(224),char(227),char(230),char(231),char(232),char(234),char(235))))
|
||||
27E0E3E6E7E8EAEB27
|
||||
select unhex(hex("foobar")), hex(unhex("1234567890ABCDEF")), unhex("345678");
|
||||
unhex(hex("foobar")) hex(unhex("1234567890ABCDEF")) unhex("345678")
|
||||
foobar 1234567890ABCDEF 4Vx
|
||||
select unhex(hex("foobar")), hex(unhex("1234567890ABCDEF")), unhex("345678"), unhex(NULL);
|
||||
unhex(hex("foobar")) hex(unhex("1234567890ABCDEF")) unhex("345678") unhex(NULL)
|
||||
foobar 1234567890ABCDEF 4Vx NULL
|
||||
select hex(unhex("1")), hex(unhex("12")), hex(unhex("123")), hex(unhex("1234")), hex(unhex("12345")), hex(unhex("123456"));
|
||||
hex(unhex("1")) hex(unhex("12")) hex(unhex("123")) hex(unhex("1234")) hex(unhex("12345")) hex(unhex("123456"))
|
||||
01 12 0123 1234 012345 123456
|
||||
@ -225,6 +225,8 @@ substring_index("www.tcx.se","",3)
|
||||
select length(repeat("a",100000000)),length(repeat("a",1000*64));
|
||||
length(repeat("a",100000000)) length(repeat("a",1000*64))
|
||||
NULL 64000
|
||||
Warnings:
|
||||
Warning 1301 Result of repeat() was larger than max_allowed_packet (1048576) - truncated
|
||||
select position("0" in "baaa" in (1)),position("0" in "1" in (1,2,3)),position("sql" in ("mysql"));
|
||||
position("0" in "baaa" in (1)) position("0" in "1" in (1,2,3)) position("sql" in ("mysql"))
|
||||
1 0 3
|
||||
@ -528,6 +530,9 @@ latin2_general_ci 3
|
||||
select collation(replace(_latin2'abcd',_latin2'b',_latin2'B')), coercibility(replace(_latin2'abcd',_latin2'b',_latin2'B'));
|
||||
collation(replace(_latin2'abcd',_latin2'b',_latin2'B')) coercibility(replace(_latin2'abcd',_latin2'b',_latin2'B'))
|
||||
latin2_general_ci 3
|
||||
select collation(encode('abcd','ab')), coercibility(encode('abcd','ab'));
|
||||
collation(encode('abcd','ab')) coercibility(encode('abcd','ab'))
|
||||
binary 3
|
||||
create table t1
|
||||
select
|
||||
bin(130),
|
||||
@ -559,7 +564,8 @@ quote(_latin2'ab'),
|
||||
soundex(_latin2'ab'),
|
||||
substring(_latin2'ab',1),
|
||||
insert(_latin2'abcd',2,3,_latin2'ef'),
|
||||
replace(_latin2'abcd',_latin2'b',_latin2'B')
|
||||
replace(_latin2'abcd',_latin2'b',_latin2'B'),
|
||||
encode('abcd','ab')
|
||||
;
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'format(130,10)' at row 1
|
||||
@ -595,7 +601,8 @@ t1 CREATE TABLE `t1` (
|
||||
`soundex(_latin2'ab')` char(4) character set latin2 NOT NULL default '',
|
||||
`substring(_latin2'ab',1)` char(2) character set latin2 NOT NULL default '',
|
||||
`insert(_latin2'abcd',2,3,_latin2'ef')` char(6) character set latin2 NOT NULL default '',
|
||||
`replace(_latin2'abcd',_latin2'b',_latin2'B')` char(4) character set latin2 NOT NULL default ''
|
||||
`replace(_latin2'abcd',_latin2'b',_latin2'B')` char(4) character set latin2 NOT NULL default '',
|
||||
`encode('abcd','ab')` binary(4) NOT NULL default ''
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
drop table t1;
|
||||
select SUBSTR('abcdefg',3,2);
|
||||
|
@ -46,7 +46,7 @@ create table t1 (version char(40)) select database(), user(), version() as 'vers
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`database()` char(34) character set utf8 NOT NULL default '',
|
||||
`database()` char(34) character set utf8 default NULL,
|
||||
`user()` char(77) character set utf8 NOT NULL default '',
|
||||
`version` char(40) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
|
@ -79,7 +79,7 @@ explain extended select * from t1 where 1 xor 1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
|
||||
Warnings:
|
||||
Note 1003 select test.t1.a AS `a` from test.t1 where (1 xor 1)
|
||||
Note 1003 select `test`.`t1`.`a` AS `a` from `test`.`t1` where (1 xor 1)
|
||||
select - a from t1;
|
||||
- a
|
||||
-1
|
||||
@ -87,7 +87,7 @@ explain extended select - a from t1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 system NULL NULL NULL NULL 1
|
||||
Warnings:
|
||||
Note 1003 select -(test.t1.a) AS `- a` from test.t1
|
||||
Note 1003 select -(`test`.`t1`.`a`) AS `- a` from `test`.`t1`
|
||||
drop table t1;
|
||||
select 5 between 0 and 10 between 0 and 1,(5 between 0 and 10) between 0 and 1;
|
||||
5 between 0 and 10 between 0 and 1 (5 between 0 and 10) between 0 and 1
|
||||
|
@ -411,9 +411,13 @@ INSERT INTO t1 VALUES ('');
|
||||
SELECT month(updated) from t1;
|
||||
month(updated)
|
||||
NULL
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect datetime value: ''
|
||||
SELECT year(updated) from t1;
|
||||
year(updated)
|
||||
NULL
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect datetime value: ''
|
||||
drop table t1;
|
||||
create table t1 (d date, dt datetime, t timestamp, c char(10));
|
||||
insert into t1 values ("0000-00-00", "0000-00-00", "0000-00-00", "0000-00-00");
|
||||
@ -585,7 +589,9 @@ a1 a2 a3 a4
|
||||
28 28 29 29
|
||||
select date_add(time,INTERVAL 1 SECOND) from t1;
|
||||
date_add(time,INTERVAL 1 SECOND)
|
||||
2006-07-08 00:00:01
|
||||
NULL
|
||||
Warnings:
|
||||
Warning 1264 Data truncated; out of range for column 'time' at row 1
|
||||
drop table t1;
|
||||
select last_day('2000-02-05') as f1, last_day('2002-12-31') as f2,
|
||||
last_day('2003-03-32') as f3, last_day('2003-04-01') as f4,
|
||||
@ -593,6 +599,8 @@ last_day('2001-01-01 01:01:01') as f5, last_day(NULL),
|
||||
last_day('2001-02-12');
|
||||
f1 f2 f3 f4 f5 last_day(NULL) last_day('2001-02-12')
|
||||
2000-02-29 2002-12-31 NULL 2003-04-30 2001-01-31 NULL 2001-02-28
|
||||
Warnings:
|
||||
Warning 1292 Truncated incorrect datetime value: '2003-03-32'
|
||||
create table t1 select last_day('2000-02-05') as a,
|
||||
from_days(to_days("960101")) as b;
|
||||
describe t1;
|
||||
|
@ -167,12 +167,10 @@ count(*)
|
||||
150
|
||||
EXPLAIN SELECT fid, AsText(g) FROM t1 WHERE Within(g, GeomFromText('Polygon((140 140,160 140,160 160,140 160,140 140))'));
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range g g 32 NULL 4 Using where
|
||||
1 SIMPLE t1 range g g 32 NULL 7 Using where
|
||||
SELECT fid, AsText(g) FROM t1 WHERE Within(g, GeomFromText('Polygon((140 140,160 140,160 160,140 160,140 140))'));
|
||||
fid AsText(g)
|
||||
1 LINESTRING(150 150,150 150)
|
||||
11 LINESTRING(140 140,160 160)
|
||||
2 LINESTRING(149 149,151 151)
|
||||
3 LINESTRING(148 148,152 152)
|
||||
4 LINESTRING(147 147,153 153)
|
||||
5 LINESTRING(146 146,154 154)
|
||||
@ -181,6 +179,8 @@ fid AsText(g)
|
||||
8 LINESTRING(143 143,157 157)
|
||||
9 LINESTRING(142 142,158 158)
|
||||
10 LINESTRING(141 141,159 159)
|
||||
11 LINESTRING(140 140,160 160)
|
||||
2 LINESTRING(149 149,151 151)
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t2 (
|
||||
fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||
@ -305,10 +305,10 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
SELECT fid, AsText(g) FROM t2 WHERE Within(g,
|
||||
GeomFromText('Polygon((40 40,60 40,60 60,40 60,40 40))'));
|
||||
fid AsText(g)
|
||||
46 LINESTRING(51 41,60 50)
|
||||
56 LINESTRING(41 41,50 50)
|
||||
45 LINESTRING(51 51,60 60)
|
||||
55 LINESTRING(41 51,50 60)
|
||||
56 LINESTRING(41 41,50 50)
|
||||
46 LINESTRING(51 41,60 50)
|
||||
DELETE FROM t2 WHERE Within(g, Envelope(GeometryFromWKB(LineString(Point(10 * 10 - 9, 10 * 10 - 9), Point(10 * 10, 10 * 10)))));
|
||||
SELECT count(*) FROM t2;
|
||||
count(*)
|
||||
|
@ -228,7 +228,7 @@ explain extended select Dimension(g), GeometryType(g), IsEmpty(g), AsText(Envelo
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE gis_geometry ALL NULL NULL NULL NULL 21
|
||||
Warnings:
|
||||
Note 1003 select dimension(test.gis_geometry.g) AS `Dimension(g)`,geometrytype(test.gis_geometry.g) AS `GeometryType(g)`,isempty(test.gis_geometry.g) AS `IsEmpty(g)`,astext(envelope(test.gis_geometry.g)) AS `AsText(Envelope(g))` from test.gis_geometry
|
||||
Note 1003 select dimension(`test`.`gis_geometry`.`g`) AS `Dimension(g)`,geometrytype(`test`.`gis_geometry`.`g`) AS `GeometryType(g)`,isempty(`test`.`gis_geometry`.`g`) AS `IsEmpty(g)`,astext(envelope(`test`.`gis_geometry`.`g`)) AS `AsText(Envelope(g))` from `test`.`gis_geometry`
|
||||
SELECT fid, X(g) FROM gis_point;
|
||||
fid X(g)
|
||||
101 10
|
||||
@ -245,7 +245,7 @@ explain extended select X(g),Y(g) FROM gis_point;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE gis_point ALL NULL NULL NULL NULL 4
|
||||
Warnings:
|
||||
Note 1003 select x(test.gis_point.g) AS `X(g)`,y(test.gis_point.g) AS `Y(g)` from test.gis_point
|
||||
Note 1003 select x(`test`.`gis_point`.`g`) AS `X(g)`,y(`test`.`gis_point`.`g`) AS `Y(g)` from `test`.`gis_point`
|
||||
SELECT fid, AsText(StartPoint(g)) FROM gis_line;
|
||||
fid AsText(StartPoint(g))
|
||||
105 POINT(0 0)
|
||||
@ -280,7 +280,7 @@ explain extended select AsText(StartPoint(g)),AsText(EndPoint(g)),GLength(g),Num
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE gis_line ALL NULL NULL NULL NULL 3
|
||||
Warnings:
|
||||
Note 1003 select astext(startpoint(test.gis_line.g)) AS `AsText(StartPoint(g))`,astext(endpoint(test.gis_line.g)) AS `AsText(EndPoint(g))`,glength(test.gis_line.g) AS `GLength(g)`,numpoints(test.gis_line.g) AS `NumPoints(g)`,astext(pointn(test.gis_line.g,2)) AS `AsText(PointN(g, 2))`,isclosed(test.gis_line.g) AS `IsClosed(g)` from test.gis_line
|
||||
Note 1003 select astext(startpoint(`test`.`gis_line`.`g`)) AS `AsText(StartPoint(g))`,astext(endpoint(`test`.`gis_line`.`g`)) AS `AsText(EndPoint(g))`,glength(`test`.`gis_line`.`g`) AS `GLength(g)`,numpoints(`test`.`gis_line`.`g`) AS `NumPoints(g)`,astext(pointn(`test`.`gis_line`.`g`,2)) AS `AsText(PointN(g, 2))`,isclosed(`test`.`gis_line`.`g`) AS `IsClosed(g)` from `test`.`gis_line`
|
||||
SELECT fid, AsText(Centroid(g)) FROM gis_polygon;
|
||||
fid AsText(Centroid(g))
|
||||
108 POINT(15 15)
|
||||
@ -310,7 +310,7 @@ explain extended select AsText(Centroid(g)),Area(g),AsText(ExteriorRing(g)),NumI
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE gis_polygon ALL NULL NULL NULL NULL 3
|
||||
Warnings:
|
||||
Note 1003 select astext(centroid(test.gis_polygon.g)) AS `AsText(Centroid(g))`,area(test.gis_polygon.g) AS `Area(g)`,astext(exteriorring(test.gis_polygon.g)) AS `AsText(ExteriorRing(g))`,numinteriorrings(test.gis_polygon.g) AS `NumInteriorRings(g)`,astext(interiorringn(test.gis_polygon.g,1)) AS `AsText(InteriorRingN(g, 1))` from test.gis_polygon
|
||||
Note 1003 select astext(centroid(`test`.`gis_polygon`.`g`)) AS `AsText(Centroid(g))`,area(`test`.`gis_polygon`.`g`) AS `Area(g)`,astext(exteriorring(`test`.`gis_polygon`.`g`)) AS `AsText(ExteriorRing(g))`,numinteriorrings(`test`.`gis_polygon`.`g`) AS `NumInteriorRings(g)`,astext(interiorringn(`test`.`gis_polygon`.`g`,1)) AS `AsText(InteriorRingN(g, 1))` from `test`.`gis_polygon`
|
||||
SELECT fid, IsClosed(g) FROM gis_multi_line;
|
||||
fid IsClosed(g)
|
||||
114 0
|
||||
@ -349,7 +349,7 @@ explain extended SELECT fid, NumGeometries(g) from gis_multi_point;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
|
||||
Warnings:
|
||||
Note 1003 select test.gis_multi_point.fid AS `fid`,numgeometries(test.gis_multi_point.g) AS `NumGeometries(g)` from test.gis_multi_point
|
||||
Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,numgeometries(`test`.`gis_multi_point`.`g`) AS `NumGeometries(g)` from `test`.`gis_multi_point`
|
||||
SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point;
|
||||
fid AsText(GeometryN(g, 2))
|
||||
111 POINT(10 10)
|
||||
@ -377,7 +377,7 @@ explain extended SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE gis_multi_point ALL NULL NULL NULL NULL 3
|
||||
Warnings:
|
||||
Note 1003 select test.gis_multi_point.fid AS `fid`,astext(geometryn(test.gis_multi_point.g,2)) AS `AsText(GeometryN(g, 2))` from test.gis_multi_point
|
||||
Note 1003 select `test`.`gis_multi_point`.`fid` AS `fid`,astext(geometryn(`test`.`gis_multi_point`.`g`,2)) AS `AsText(GeometryN(g, 2))` from `test`.`gis_multi_point`
|
||||
SELECT g1.fid as first, g2.fid as second,
|
||||
Within(g1.g, g2.g) as w, Contains(g1.g, g2.g) as c, Overlaps(g1.g, g2.g) as o,
|
||||
Equals(g1.g, g2.g) as e, Disjoint(g1.g, g2.g) as d, Touches(g1.g, g2.g) as t,
|
||||
@ -397,7 +397,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE g1 ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
|
||||
1 SIMPLE g2 ALL NULL NULL NULL NULL 2
|
||||
Warnings:
|
||||
Note 1003 select test.g1.fid AS `first`,test.g2.fid AS `second`,within(test.g1.g,test.g2.g) AS `w`,contains(test.g1.g,test.g2.g) AS `c`,overlaps(test.g1.g,test.g2.g) AS `o`,equals(test.g1.g,test.g2.g) AS `e`,disjoint(test.g1.g,test.g2.g) AS `d`,touches(test.g1.g,test.g2.g) AS `t`,intersects(test.g1.g,test.g2.g) AS `i`,crosses(test.g1.g,test.g2.g) AS `r` from test.gis_geometrycollection g1 join test.gis_geometrycollection g2 order by test.g1.fid,test.g2.fid
|
||||
Note 1003 select `test`.`g1`.`fid` AS `first`,`test`.`g2`.`fid` AS `second`,within(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `w`,contains(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `c`,overlaps(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `o`,equals(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `e`,disjoint(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `d`,touches(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `t`,intersects(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `i`,crosses(`test`.`g1`.`g`,`test`.`g2`.`g`) AS `r` from `test`.`gis_geometrycollection` `g1` join `test`.`gis_geometrycollection` `g2` order by `test`.`g1`.`fid`,`test`.`g2`.`fid`
|
||||
DROP TABLE gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry;
|
||||
CREATE TABLE t1 (
|
||||
gp point,
|
||||
|
@ -1,4 +1,5 @@
|
||||
drop table if exists t1;
|
||||
SET NAMES binary;
|
||||
delete from mysql.user where user='mysqltest_1';
|
||||
delete from mysql.db where user='mysqltest_1';
|
||||
flush privileges;
|
||||
@ -9,8 +10,8 @@ GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3
|
||||
GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
|
||||
grant delete on mysqltest.* to mysqltest_1@localhost;
|
||||
select * from mysql.user where user="mysqltest_1";
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N SPECIFIED EDH-RSA-DES-CBC3-SHA 0 0 0
|
||||
Host User Password Select_priv Insert_priv Update_priv Delete_priv Create_priv Drop_priv Reload_priv Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv Show_db_priv Super_priv Create_tmp_table_priv Lock_tables_priv Execute_priv Repl_slave_priv Repl_client_priv Create_view_priv Show_view_priv ssl_type ssl_cipher x509_issuer x509_subject max_questions max_updates max_connections
|
||||
localhost mysqltest_1 N N N N N N N N N N N N N N N N N N N N N 0 0 0
|
||||
show grants for mysqltest_1@localhost;
|
||||
Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost' REQUIRE CIPHER 'EDH-RSA-DES-CBC3-SHA'
|
||||
@ -61,7 +62,7 @@ revoke LOCK TABLES, ALTER on mysqltest.* from mysqltest_1@localhost;
|
||||
show grants for mysqltest_1@localhost;
|
||||
Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
|
||||
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, CREATE TEMPORARY TABLES ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
|
||||
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, CREATE TEMPORARY TABLES, CREATE VIEW, SHOW VIEW ON `mysqltest`.* TO 'mysqltest_1'@'localhost' WITH GRANT OPTION
|
||||
revoke all privileges on mysqltest.* from mysqltest_1@localhost;
|
||||
delete from mysql.user where user='mysqltest_1';
|
||||
flush privileges;
|
||||
@ -129,7 +130,7 @@ delete from mysql.columns_priv where user='mysqltest_1' or user="mysqltest_2" or
|
||||
flush privileges;
|
||||
drop table t1;
|
||||
GRANT FILE on mysqltest.* to mysqltest_1@localhost;
|
||||
ERROR HY000: Wrong usage of DB GRANT and GLOBAL PRIVILEGES
|
||||
ERROR HY000: Incorrect usage of DB GRANT and GLOBAL PRIVILEGES
|
||||
select 1;
|
||||
1
|
||||
1
|
||||
@ -228,3 +229,28 @@ GRANT SELECT (
|
||||
REVOKE SELECT (<28><><EFBFBD>) ON <20><>.<2E><><EFBFBD> FROM <20><><EFBFBD><EFBFBD>@localhost;
|
||||
DROP DATABASE <20><>;
|
||||
SET NAMES latin1;
|
||||
SHOW PRIVILEGES;
|
||||
Privilege Context Comment
|
||||
Alter Tables To alter the table
|
||||
Create Databases,Tables,Indexes To create new databases and tables
|
||||
Create temporary tables Databases To use CREATE TEMPORARY TABLE
|
||||
Create view Tables To create new views
|
||||
Delete Tables To delete existing rows
|
||||
Drop Databases,Tables To drop databases, tables, and views
|
||||
File File access on server To read and write files on the server
|
||||
Grant option Databases,Tables To give to other users those privileges you possess
|
||||
Index Tables To create or drop indexes
|
||||
Insert Tables To insert data into tables
|
||||
Lock tables Databases To use LOCK TABLES (together with SELECT privilege)
|
||||
Process Server Admin To view the plain text of currently executing queries
|
||||
References Databases,Tables To have references on tables
|
||||
Reload Server Admin To reload or refresh tables, logs and privileges
|
||||
Replication client Server Admin To ask where the slave or master servers are
|
||||
Replication slave Server Admin To read binary log events from the master
|
||||
Select Tables To retrieve rows from table
|
||||
Show databases Server Admin To see all databases with SHOW DATABASES
|
||||
Show view Tables To see views with SHOW CREATE VIEW
|
||||
Shutdown Server Admin To shut down the server
|
||||
Super Server Admin To use KILL thread, SET GLOBAL, CHANGE MASTER, etc.
|
||||
Update Tables To update existing rows
|
||||
Usage Server Admin No privileges - allow connect only
|
||||
|
@ -1,3 +1,4 @@
|
||||
SET NAMES binary;
|
||||
delete from mysql.user where user like 'mysqltest\_%';
|
||||
delete from mysql.db where user like 'mysqltest\_%';
|
||||
flush privileges;
|
||||
@ -10,7 +11,7 @@ current_user
|
||||
mysqltest_1@localhost
|
||||
grant all privileges on `my\_1`.* to mysqltest_2@localhost with grant option;
|
||||
grant all privileges on `my_%`.* to mysqltest_3@localhost with grant option;
|
||||
ERROR 42000: Access denied for user: 'mysqltest_1'@'localhost' to database 'my_%'
|
||||
ERROR 42000: Access denied for user 'mysqltest_1'@'localhost' to database 'my_%'
|
||||
show grants for mysqltest_1@localhost;
|
||||
Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
|
||||
|
@ -134,7 +134,7 @@ a b c a
|
||||
1 1 1 test.t1
|
||||
2 2 2 test.t1
|
||||
select * from t2;
|
||||
ERROR 42000: select command denied to user: 'mysqltest_2'@'localhost' for table 't2'
|
||||
ERROR 42000: select command denied to user 'mysqltest_2'@'localhost' for table 't2'
|
||||
show status like "Qcache_queries_in_cache";
|
||||
Variable_name Value
|
||||
Qcache_queries_in_cache 6
|
||||
@ -148,17 +148,17 @@ select "user3";
|
||||
user3
|
||||
user3
|
||||
select * from t1;
|
||||
ERROR 42000: select command denied to user: 'mysqltest_3'@'localhost' for column 'b' in table 't1'
|
||||
ERROR 42000: select command denied to user 'mysqltest_3'@'localhost' for column 'b' in table 't1'
|
||||
select a from t1;
|
||||
a
|
||||
1
|
||||
2
|
||||
select c from t1;
|
||||
ERROR 42000: SELECT command denied to user: 'mysqltest_3'@'localhost' for column 'c' in table 't1'
|
||||
ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for column 'c' in table 't1'
|
||||
select * from t2;
|
||||
ERROR 42000: select command denied to user: 'mysqltest_3'@'localhost' for table 't2'
|
||||
ERROR 42000: select command denied to user 'mysqltest_3'@'localhost' for table 't2'
|
||||
select mysqltest.t1.c from test.t1,mysqltest.t1;
|
||||
ERROR 42000: SELECT command denied to user: 'mysqltest_3'@'localhost' for column 'c' in table 't1'
|
||||
ERROR 42000: SELECT command denied to user 'mysqltest_3'@'localhost' for column 'c' in table 't1'
|
||||
show status like "Qcache_queries_in_cache";
|
||||
Variable_name Value
|
||||
Qcache_queries_in_cache 6
|
||||
@ -176,7 +176,7 @@ Grants for mysqltest_1@localhost
|
||||
GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
|
||||
GRANT SELECT ON `mysqltest`.* TO 'mysqltest_1'@'localhost'
|
||||
select a from t1;
|
||||
ERROR 3D000: No Database Selected
|
||||
ERROR 3D000: No database selected
|
||||
select * from mysqltest.t1,test.t1;
|
||||
a b c a
|
||||
1 1 1 test.t1
|
||||
@ -198,6 +198,7 @@ Qcache_hits 8
|
||||
show status like "Qcache_not_cached";
|
||||
Variable_name Value
|
||||
Qcache_not_cached 8
|
||||
set names binary;
|
||||
delete from mysql.user where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
|
||||
delete from mysql.db where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
|
||||
delete from mysql.tables_priv where user in ("mysqltest_1","mysqltest_2","mysqltest_3");
|
||||
|
@ -209,7 +209,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 821.838037
|
||||
Last_query_cost 821.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
|
||||
@ -221,7 +221,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 821.838037
|
||||
Last_query_cost 821.837037
|
||||
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
|
||||
@ -233,7 +233,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 274.419727
|
||||
Last_query_cost 274.418727
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
|
||||
@ -245,7 +245,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 274.419727
|
||||
Last_query_cost 274.418727
|
||||
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
|
||||
@ -257,7 +257,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 274.419727
|
||||
Last_query_cost 274.418727
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
|
||||
@ -269,7 +269,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 274.419727
|
||||
Last_query_cost 274.418727
|
||||
set optimizer_search_depth=1;
|
||||
select @@optimizer_search_depth;
|
||||
@@optimizer_search_depth
|
||||
@ -285,7 +285,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 821.838037
|
||||
Last_query_cost 821.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
|
||||
@ -297,7 +297,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 821.838037
|
||||
Last_query_cost 821.837037
|
||||
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -309,7 +309,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -321,7 +321,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -333,7 +333,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -345,7 +345,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
set optimizer_search_depth=62;
|
||||
select @@optimizer_search_depth;
|
||||
@@optimizer_search_depth
|
||||
@ -361,7 +361,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 821.838037
|
||||
Last_query_cost 821.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
|
||||
@ -373,7 +373,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 821.838037
|
||||
Last_query_cost 821.837037
|
||||
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
|
||||
@ -385,7 +385,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 274.419727
|
||||
Last_query_cost 274.418727
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
|
||||
@ -397,7 +397,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 274.419727
|
||||
Last_query_cost 274.418727
|
||||
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
|
||||
@ -409,7 +409,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 274.419727
|
||||
Last_query_cost 274.418727
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ALL NULL NULL NULL NULL 6
|
||||
@ -421,7 +421,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 274.419727
|
||||
Last_query_cost 274.418727
|
||||
set optimizer_prune_level=1;
|
||||
select @@optimizer_prune_level;
|
||||
@@optimizer_prune_level
|
||||
@ -441,7 +441,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 821.838037
|
||||
Last_query_cost 821.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
|
||||
@ -453,7 +453,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 821.838037
|
||||
Last_query_cost 821.837037
|
||||
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -465,7 +465,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -477,7 +477,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -489,7 +489,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -501,7 +501,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
set optimizer_search_depth=1;
|
||||
select @@optimizer_search_depth;
|
||||
@@optimizer_search_depth
|
||||
@ -517,7 +517,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 821.838037
|
||||
Last_query_cost 821.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
|
||||
@ -529,7 +529,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 821.838037
|
||||
Last_query_cost 821.837037
|
||||
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -541,7 +541,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -553,7 +553,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -565,7 +565,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -577,7 +577,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t6 ALL NULL NULL NULL NULL 18 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
set optimizer_search_depth=62;
|
||||
select @@optimizer_search_depth;
|
||||
@@optimizer_search_depth
|
||||
@ -593,7 +593,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 821.838037
|
||||
Last_query_cost 821.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c12 = t2.c21 and t2.c22 = t3.c31 and t3.c32 = t4.c41 and t4.c42 = t5.c51 and t5.c52 = t6.c61 and t6.c62 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
|
||||
@ -605,7 +605,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t6.c62 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 821.838037
|
||||
Last_query_cost 821.837037
|
||||
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -617,7 +617,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -629,7 +629,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using index
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
explain select t1.c11 from t1, t2, t3, t4, t5, t6, t7 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -641,7 +641,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
explain select t1.c11 from t7, t6, t5, t4, t3, t2, t1 where t1.c11 = t2.c21 and t1.c12 = t3.c31 and t1.c13 = t4.c41 and t1.c14 = t5.c51 and t1.c15 = t6.c61 and t1.c16 = t7.c71 and t2.c22 = t3.c32 and t2.c23 = t4.c42 and t2.c24 = t5.c52 and t2.c25 = t6.c62 and t2.c26 = t7.c72 and t3.c33 = t4.c43 and t3.c34 = t5.c53 and t3.c35 = t6.c63 and t3.c36 = t7.c73 and t4.c42 = t5.c54 and t4.c43 = t6.c64 and t4.c44 = t7.c74 and t5.c52 = t6.c65 and t5.c53 = t7.c75 and t6.c62 = t7.c76;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL PRIMARY NULL NULL NULL 3
|
||||
@ -653,5 +653,5 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t7 eq_ref PRIMARY PRIMARY 4 test.t1.c16 1 Using where
|
||||
show status like 'Last_query_cost';
|
||||
Variable_name Value
|
||||
Last_query_cost 794.838037
|
||||
Last_query_cost 794.837037
|
||||
drop table t1,t2,t3,t4,t5,t6,t7;
|
||||
|
@ -288,7 +288,7 @@ explain extended select sql_big_result spid,sum(userid) from t1 group by spid de
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 8 Using filesort
|
||||
Warnings:
|
||||
Note 1003 select sql_big_result test.t1.spID AS `spid`,sum(test.t1.userID) AS `sum(userid)` from test.t1 group by test.t1.spID desc
|
||||
Note 1003 select sql_big_result `test`.`t1`.`spID` AS `spid`,sum(`test`.`t1`.`userID`) AS `sum(userid)` from `test`.`t1` group by `test`.`t1`.`spID` desc
|
||||
explain select sql_big_result spid,sum(userid) from t1 group by spid desc order by null;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 8 Using filesort
|
||||
|
@ -6,7 +6,7 @@ insert into t1 values
|
||||
(20,"ggg"),(21,"hhh"),(22,"iii");
|
||||
handler t1 open as t2;
|
||||
handler t2 read a=(SELECT 1);
|
||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT 1)' at line 1
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT 1)' at line 1
|
||||
handler t2 read a first;
|
||||
a b
|
||||
14 aaa
|
||||
@ -51,7 +51,7 @@ handler t2 read a=(16);
|
||||
a b
|
||||
16 ccc
|
||||
handler t2 read a=(19,"fff");
|
||||
ERROR 42000: Too many key parts specified. Max 1 parts allowed
|
||||
ERROR 42000: Too many key parts specified; max 1 parts allowed
|
||||
handler t2 read b=(19,"fff");
|
||||
a b
|
||||
19 fff
|
||||
@ -135,7 +135,7 @@ handler t2 read next;
|
||||
a b
|
||||
19 fff
|
||||
handler t2 read last;
|
||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
|
||||
handler t2 close;
|
||||
handler t1 open as t2;
|
||||
drop table t1;
|
||||
@ -173,7 +173,7 @@ handler t1 open;
|
||||
handler t1 read a=(W);
|
||||
ERROR 42S22: Unknown column 'W' in 'field list'
|
||||
handler t1 read a=(a);
|
||||
ERROR HY000: Wrong arguments to HANDLER ... READ
|
||||
ERROR HY000: Incorrect arguments to HANDLER ... READ
|
||||
drop table t1;
|
||||
create table t1 (a char(5));
|
||||
insert into t1 values ("Ok");
|
||||
|
2
mysql-test/r/have_archive.require
Normal file
2
mysql-test/r/have_archive.require
Normal file
@ -0,0 +1,2 @@
|
||||
Variable_name Value
|
||||
have_archive YES
|
2
mysql-test/r/have_debug.require
Normal file
2
mysql-test/r/have_debug.require
Normal file
@ -0,0 +1,2 @@
|
||||
debug
|
||||
1
|
2
mysql-test/r/have_geometry.require
Normal file
2
mysql-test/r/have_geometry.require
Normal file
@ -0,0 +1,2 @@
|
||||
Variable_name Value
|
||||
have_geometry YES
|
@ -12,7 +12,7 @@ explain extended select count(a) as b from t1 where a=0 having b >=0;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE noticed after reading const tables
|
||||
Warnings:
|
||||
Note 1003 select count(test.t1.a) AS `b` from test.t1 where (test.t1.a = 0) having (count(test.t1.a) >= 0)
|
||||
Note 1003 select count(`test`.`t1`.`a`) AS `b` from `test`.`t1` where (`test`.`t1`.`a` = 0) having (count(`test`.`t1`.`a`) >= 0)
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (
|
||||
raw_id int(10) NOT NULL default '0',
|
||||
|
@ -1345,6 +1345,18 @@ ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fail
|
||||
update t3 set t3.id=7 where t1.id =1 and t2.id = t1.id and t3.id = t2.id;
|
||||
ERROR 42S02: Unknown table 't1' in where clause
|
||||
drop table t3,t2,t1;
|
||||
create table t1(
|
||||
id int primary key,
|
||||
pid int,
|
||||
index(pid),
|
||||
foreign key(pid) references t1(id) on delete cascade) engine=innodb;
|
||||
insert into t1 values(0,0),(1,0),(2,1),(3,2),(4,3),(5,4),(6,5),(7,6),
|
||||
(8,7),(9,8),(10,9),(11,10),(12,11),(13,12),(14,13),(15,14);
|
||||
delete from t1 where id=0;
|
||||
ERROR 23000: Cannot delete or update a parent row: a foreign key constraint fails
|
||||
delete from t1 where id=15;
|
||||
delete from t1 where id=0;
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (col1 int(1))ENGINE=InnoDB;
|
||||
CREATE TABLE t2 (col1 int(1),stamp TIMESTAMP,INDEX stamp_idx
|
||||
(stamp))ENGINE=InnoDB;
|
||||
|
@ -98,7 +98,7 @@ commit;
|
||||
show status like "Qcache_queries_in_cache";
|
||||
Variable_name Value
|
||||
Qcache_queries_in_cache 1
|
||||
drop table if exists t1;
|
||||
drop table t3,t2,t1;
|
||||
CREATE TABLE t1 (id int(11) NOT NULL auto_increment, PRIMARY KEY (id)) ENGINE=InnoDB;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
@ -108,3 +108,22 @@ select count(*) from t1;
|
||||
count(*)
|
||||
1
|
||||
drop table t1;
|
||||
set GLOBAL query_cache_size=1355776;
|
||||
CREATE TABLE t1 ( id int(10) NOT NULL auto_increment, a varchar(25) default NULL, PRIMARY KEY (id), UNIQUE KEY a (a)) ENGINE=innodb;
|
||||
CREATE TABLE t2 ( id int(10) NOT NULL auto_increment, b varchar(25) default NULL, PRIMARY KEY (id), UNIQUE KEY b (b)) ENGINE=innodb;
|
||||
CREATE TABLE t3 ( id int(10) NOT NULL auto_increment, t1_id int(10) NOT NULL default '0', t2_id int(10) NOT NULL default '0', state int(11) default NULL, PRIMARY KEY (id), UNIQUE KEY t1_id (t1_id,t2_id), KEY t2_id (t2_id,t1_id), CONSTRAINT `t3_ibfk_1` FOREIGN KEY (`t1_id`) REFERENCES `t1` (`id`), CONSTRAINT `t3_ibfk_2` FOREIGN KEY (`t2_id`) REFERENCES `t2` (`id`)) ENGINE=innodb;
|
||||
INSERT INTO t1 VALUES (1,'me');
|
||||
INSERT INTO t2 VALUES (1,'you');
|
||||
INSERT INTO t3 VALUES (2,1,1,2);
|
||||
delete from t3 where t1_id = 1 and t2_id = 1;
|
||||
select t1.* from t1, t2, t3 where t3.state & 1 = 0 and t3.t1_id = t1.id and t3.t2_id = t2.id and t1.id = 1 order by t1.a asc;
|
||||
id a
|
||||
begin;
|
||||
insert into t3 VALUES ( NULL, 1, 1, 2 );
|
||||
insert into t3 VALUES ( NULL, 1, 1, 2 );
|
||||
ERROR 23000: Duplicate entry '1-1' for key 2
|
||||
commit;
|
||||
select t1.* from t1, t2, t3 where t3.state & 1 = 0 and t3.t1_id = t1.id and t3.t2_id = t2.id and t1.id = 1 order by t1.a asc;
|
||||
id a
|
||||
1 me
|
||||
drop table t3,t2,t1;
|
||||
|
@ -49,7 +49,7 @@ handler t2 read a=(16);
|
||||
a b
|
||||
16 ccc
|
||||
handler t2 read a=(19,"fff");
|
||||
ERROR 42000: Too many key parts specified. Max 1 parts allowed
|
||||
ERROR 42000: Too many key parts specified; max 1 parts allowed
|
||||
handler t2 read b=(19,"fff");
|
||||
a b
|
||||
19 fff
|
||||
@ -130,7 +130,7 @@ handler t2 read next;
|
||||
a b
|
||||
18 eee
|
||||
handler t2 read last;
|
||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
|
||||
handler t2 close;
|
||||
handler t1 open as t2;
|
||||
handler t2 read first;
|
||||
|
@ -63,7 +63,7 @@ insert into t1 values(NULL);
|
||||
ERROR 23000: Column 'id' cannot be null
|
||||
insert into t1 values (1), (NULL), (2);
|
||||
Warnings:
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'id' at row 2
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'id' at row 2
|
||||
select * from t1;
|
||||
id
|
||||
1
|
||||
@ -159,18 +159,18 @@ insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@val
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'f_double' at row 1
|
||||
Warning 1265 Data truncated for column 'f_float' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float' at row 1
|
||||
Warning 1265 Data truncated for column 'f_double_7_2' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_7_2' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_7_2' at row 1
|
||||
Warning 1265 Data truncated for column 'f_float_4_3' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_4_3' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_4_3' at row 1
|
||||
Warning 1265 Data truncated for column 'f_double_u' at row 1
|
||||
Warning 1265 Data truncated for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_u' at row 1
|
||||
Warning 1265 Data truncated for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1265 Data truncated for column 'f_float_3_1_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_3_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_3_1_u' at row 1
|
||||
select * from t1 where number =last_insert_id();
|
||||
number 4
|
||||
original_value 1e+1111111111a
|
||||
@ -187,19 +187,19 @@ insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@val
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'f_double' at row 1
|
||||
Warning 1265 Data truncated for column 'f_float' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float' at row 1
|
||||
Warning 1265 Data truncated for column 'f_double_7_2' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_7_2' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_7_2' at row 1
|
||||
Warning 1265 Data truncated for column 'f_float_4_3' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_4_3' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_4_3' at row 1
|
||||
Warning 1265 Data truncated for column 'f_double_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_u' at row 1
|
||||
Warning 1265 Data truncated for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_u' at row 1
|
||||
Warning 1265 Data truncated for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1265 Data truncated for column 'f_float_3_1_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_3_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_3_1_u' at row 1
|
||||
select * from t1 where number =last_insert_id();
|
||||
number 5
|
||||
original_value -1e+1111111111a
|
||||
@ -214,12 +214,12 @@ f_float_3_1_u 0.0
|
||||
set @value= 1e+1111111111;
|
||||
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
|
||||
Warnings:
|
||||
Warning 1264 Data truncated, out of range for column 'f_float' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_7_2' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_4_3' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_3_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_7_2' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_4_3' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_3_1_u' at row 1
|
||||
select * from t1 where number =last_insert_id();
|
||||
number 6
|
||||
original_value 1.7976931348623e+308
|
||||
@ -234,13 +234,13 @@ f_float_3_1_u 99.9
|
||||
set @value= -1e+1111111111;
|
||||
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
|
||||
Warnings:
|
||||
Warning 1264 Data truncated, out of range for column 'f_float' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_7_2' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_4_3' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_3_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_7_2' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_4_3' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_3_1_u' at row 1
|
||||
select * from t1 where number =last_insert_id();
|
||||
number 7
|
||||
original_value -1.7976931348623e+308
|
||||
@ -255,12 +255,12 @@ f_float_3_1_u 0.0
|
||||
set @value= 1e+111;
|
||||
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
|
||||
Warnings:
|
||||
Warning 1264 Data truncated, out of range for column 'f_float' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_7_2' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_4_3' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_3_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_7_2' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_4_3' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_3_1_u' at row 1
|
||||
select * from t1 where number =last_insert_id();
|
||||
number 8
|
||||
original_value 1e+111
|
||||
@ -275,13 +275,13 @@ f_float_3_1_u 99.9
|
||||
set @value= -1e+111;
|
||||
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
|
||||
Warnings:
|
||||
Warning 1264 Data truncated, out of range for column 'f_float' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_7_2' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_4_3' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_3_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_7_2' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_4_3' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_3_1_u' at row 1
|
||||
select * from t1 where number =last_insert_id();
|
||||
number 9
|
||||
original_value -1e+111
|
||||
@ -309,10 +309,10 @@ f_float_3_1_u 1.0
|
||||
set @value= -1;
|
||||
insert into t1 values(null,@value,@value,@value,@value,@value,@value,@value,@value,@value);
|
||||
Warnings:
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated, out of range for column 'f_float_3_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_double_15_1_u' at row 1
|
||||
Warning 1264 Data truncated; out of range for column 'f_float_3_1_u' at row 1
|
||||
select * from t1 where number =last_insert_id();
|
||||
number 11
|
||||
original_value -1
|
||||
|
@ -622,8 +622,8 @@ NULL 2 100
|
||||
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;
|
||||
Warnings:
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'No' at row 1
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'No' at row 2
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'No' at row 1
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'No' at row 2
|
||||
select * from t2;
|
||||
No Field Count
|
||||
0 1 100
|
||||
|
@ -60,12 +60,12 @@ explain extended SELECT *, VALUES(a) FROM t1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 5
|
||||
Warnings:
|
||||
Note 1003 select test.t1.a AS `a`,test.t1.b AS `b`,test.t1.c AS `c`,values(test.t1.a) AS `VALUES(a)` from test.t1
|
||||
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t1`.`c` AS `c`,values(`test`.`t1`.`a`) AS `VALUES(a)` from `test`.`t1`
|
||||
explain extended select * from t1 where values(a);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE
|
||||
Warnings:
|
||||
Note 1003 select test.t1.a AS `a`,test.t1.b AS `b`,test.t1.c AS `c` from test.t1
|
||||
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t1`.`c` AS `c` from `test`.`t1`
|
||||
DROP TABLE t1;
|
||||
create table t1(a int primary key, b int);
|
||||
insert into t1 values(1,1),(2,2),(3,3),(4,4),(5,5);
|
||||
|
@ -34,7 +34,7 @@ ERROR 42000: Column 'a' is used with UNIQUE or INDEX but is not defined as NOT N
|
||||
create table t1 (a int,b text, index(b)) engine=isam;
|
||||
ERROR 42000: BLOB column 'b' can't be used in key specification with the used table type
|
||||
create table t1 (ordid int(8) not null auto_increment, ord varchar(50) not null, primary key (ord,ordid)) engine=isam;
|
||||
ERROR 42000: Incorrect table definition; There can only be one auto column and it must be defined as a key
|
||||
ERROR 42000: Incorrect table definition; there can be only one auto column and it must be defined as a key
|
||||
create table t1 (ordid int(8), unique (ordid)) engine=isam;
|
||||
ERROR 42000: Column 'ordid' is used with UNIQUE or INDEX but is not defined as NOT NULL
|
||||
drop table if exists t1;
|
||||
|
@ -126,7 +126,7 @@ a
|
||||
1
|
||||
2
|
||||
select t1.a from t1 as t1 left join t1 as t2 using (a) left join t1 as t3 using (a) left join t1 as t4 using (a) left join t1 as t5 using (a) left join t1 as t6 using (a) left join t1 as t7 using (a) left join t1 as t8 using (a) left join t1 as t9 using (a) left join t1 as t10 using (a) left join t1 as t11 using (a) left join t1 as t12 using (a) left join t1 as t13 using (a) left join t1 as t14 using (a) left join t1 as t15 using (a) left join t1 as t16 using (a) left join t1 as t17 using (a) left join t1 as t18 using (a) left join t1 as t19 using (a) left join t1 as t20 using (a) left join t1 as t21 using (a) left join t1 as t22 using (a) left join t1 as t23 using (a) left join t1 as t24 using (a) left join t1 as t25 using (a) left join t1 as t26 using (a) left join t1 as t27 using (a) left join t1 as t28 using (a) left join t1 as t29 using (a) left join t1 as t30 using (a) left join t1 as t31 using (a) left join t1 as t32 using (a) left join t1 as t33 using (a) left join t1 as t34 using (a) left join t1 as t35 using (a) left join t1 as t36 using (a) left join t1 as t37 using (a) left join t1 as t38 using (a) left join t1 as t39 using (a) left join t1 as t40 using (a) left join t1 as t41 using (a) left join t1 as t42 using (a) left join t1 as t43 using (a) left join t1 as t44 using (a) left join t1 as t45 using (a) left join t1 as t46 using (a) left join t1 as t47 using (a) left join t1 as t48 using (a) left join t1 as t49 using (a) left join t1 as t50 using (a) left join t1 as t51 using (a) left join t1 as t52 using (a) left join t1 as t53 using (a) left join t1 as t54 using (a) left join t1 as t55 using (a) left join t1 as t56 using (a) left join t1 as t57 using (a) left join t1 as t58 using (a) left join t1 as t59 using (a) left join t1 as t60 using (a) left join t1 as t61 using (a) left join t1 as t62 using (a) left join t1 as t63 using (a) left join t1 as t64 using (a) left join t1 as t65 using (a);
|
||||
ERROR HY000: Too many tables. MySQL can only use XX tables in a join
|
||||
ERROR HY000: Too many tables; MySQL can only use XX tables in a join
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (
|
||||
a int(11) NOT NULL,
|
||||
|
@ -76,7 +76,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t3 ALL NULL NULL NULL NULL 2 Using where
|
||||
1 SIMPLE t4 ALL NULL NULL NULL NULL 2
|
||||
Warnings:
|
||||
Note 1003 select test.t2.a AS `a`,test.t2.b AS `b`,test.t3.a AS `a`,test.t3.b AS `b`,test.t4.a AS `a`,test.t4.b AS `b` from test.t2 left join (test.t3 join test.t4) on((test.t2.b = test.t4.b)) where ((test.t3.a = 1) or isnull(test.t3.c))
|
||||
Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b` from `test`.`t2` left join (`test`.`t3` join `test`.`t4`) on((`test`.`t2`.`b` = `test`.`t4`.`b`)) where ((`test`.`t3`.`a` = 1) or isnull(`test`.`t3`.`c`))
|
||||
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
||||
FROM t2
|
||||
LEFT JOIN
|
||||
@ -153,7 +153,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t4 ALL NULL NULL NULL NULL 2
|
||||
1 SIMPLE t5 ALL NULL NULL NULL NULL 3
|
||||
Warnings:
|
||||
Note 1003 select test.t2.a AS `a`,test.t2.b AS `b`,test.t3.a AS `a`,test.t3.b AS `b`,test.t4.a AS `a`,test.t4.b AS `b`,test.t5.a AS `a`,test.t5.b AS `b` from test.t2 left join (test.t3 join test.t4 join test.t5) on((test.t2.b = test.t4.b)) where ((test.t3.a > 1) or isnull(test.t3.c))
|
||||
Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b` from `test`.`t2` left join (`test`.`t3` join `test`.`t4` join `test`.`t5`) on((`test`.`t2`.`b` = `test`.`t4`.`b`)) where ((`test`.`t3`.`a` > 1) or isnull(`test`.`t3`.`c`))
|
||||
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,t5.a,t5.b
|
||||
FROM t2
|
||||
LEFT JOIN
|
||||
@ -183,7 +183,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t4 ALL NULL NULL NULL NULL 2
|
||||
1 SIMPLE t5 ALL NULL NULL NULL NULL 3 Using where
|
||||
Warnings:
|
||||
Note 1003 select test.t2.a AS `a`,test.t2.b AS `b`,test.t3.a AS `a`,test.t3.b AS `b`,test.t4.a AS `a`,test.t4.b AS `b`,test.t5.a AS `a`,test.t5.b AS `b` from test.t2 left join (test.t3 join test.t4 join test.t5) on((test.t2.b = test.t4.b)) where (((test.t3.a > 1) or isnull(test.t3.c)) and ((test.t5.a < 3) or isnull(test.t5.c)))
|
||||
Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b` from `test`.`t2` left join (`test`.`t3` join `test`.`t4` join `test`.`t5`) on((`test`.`t2`.`b` = `test`.`t4`.`b`)) where (((`test`.`t3`.`a` > 1) or isnull(`test`.`t3`.`c`)) and ((`test`.`t5`.`a` < 3) or isnull(`test`.`t5`.`c`)))
|
||||
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,t5.a,t5.b
|
||||
FROM t2
|
||||
LEFT JOIN
|
||||
@ -233,7 +233,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t6 ALL NULL NULL NULL NULL 3
|
||||
1 SIMPLE t8 ALL NULL NULL NULL NULL 2
|
||||
Warnings:
|
||||
Note 1003 select test.t6.a AS `a`,test.t6.b AS `b`,test.t7.a AS `a`,test.t7.b AS `b`,test.t8.a AS `a`,test.t8.b AS `b` from test.t6 join test.t7 left join test.t8 on(((test.t7.b = test.t8.b) and (test.t6.b < 10))) where 1
|
||||
Note 1003 select `test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b` from `test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t7`.`b` = `test`.`t8`.`b`) and (`test`.`t6`.`b` < 10))) where 1
|
||||
SELECT t6.a,t6.b,t7.a,t7.b,t8.a,t8.b
|
||||
FROM t6,
|
||||
t7
|
||||
@ -562,7 +562,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t6 ALL NULL NULL NULL NULL 3
|
||||
1 SIMPLE t8 ALL NULL NULL NULL NULL 2
|
||||
Warnings:
|
||||
Note 1003 select test.t0.a AS `a`,test.t0.b AS `b`,test.t1.a AS `a`,test.t1.b AS `b`,test.t2.a AS `a`,test.t2.b AS `b`,test.t3.a AS `a`,test.t3.b AS `b`,test.t4.a AS `a`,test.t4.b AS `b`,test.t5.a AS `a`,test.t5.b AS `b`,test.t6.a AS `a`,test.t6.b AS `b`,test.t7.a AS `a`,test.t7.b AS `b`,test.t8.a AS `a`,test.t8.b AS `b` from test.t0 join test.t1 left join (test.t2 left join (test.t3 join test.t4) on(((test.t3.a = 1) and (test.t2.b = test.t4.b))) join test.t5 left join (test.t6 join test.t7 left join test.t8 on(((test.t7.b = test.t8.b) and (test.t6.b < 10)))) on(((test.t6.b >= 2) and (test.t5.b = test.t7.b)))) on((((test.t3.b = 2) or isnull(test.t3.c)) and ((test.t6.b = 2) or isnull(test.t6.c)) and ((test.t1.b = test.t5.b) or isnull(test.t3.c) or isnull(test.t6.c) or isnull(test.t8.c)) and (test.t1.a <> 2))) where ((test.t0.a = 1) and (test.t0.b = test.t1.b) and ((test.t2.a >= 4) or isnull(test.t2.c)))
|
||||
Note 1003 select `test`.`t0`.`a` AS `a`,`test`.`t0`.`b` AS `b`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b`,`test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b` from `test`.`t0` join `test`.`t1` left join (`test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t3`.`a` = 1) and (`test`.`t2`.`b` = `test`.`t4`.`b`))) join `test`.`t5` left join (`test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t7`.`b` = `test`.`t8`.`b`) and (`test`.`t6`.`b` < 10)))) on(((`test`.`t6`.`b` >= 2) and (`test`.`t5`.`b` = `test`.`t7`.`b`)))) on((((`test`.`t3`.`b` = 2) or isnull(`test`.`t3`.`c`)) and ((`test`.`t6`.`b` = 2) or isnull(`test`.`t6`.`c`)) and ((`test`.`t1`.`b` = `test`.`t5`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t6`.`c`) or isnull(`test`.`t8`.`c`)) and (`test`.`t1`.`a` <> 2))) where ((`test`.`t0`.`a` = 1) and (`test`.`t0`.`b` = `test`.`t1`.`b`) and ((`test`.`t2`.`a` >= 4) or isnull(`test`.`t2`.`c`)))
|
||||
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
||||
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b
|
||||
FROM t0,t1
|
||||
@ -660,7 +660,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t8 ALL NULL NULL NULL NULL 2 Using where
|
||||
1 SIMPLE t9 ALL NULL NULL NULL NULL 3 Using where
|
||||
Warnings:
|
||||
Note 1003 select test.t0.a AS `a`,test.t0.b AS `b`,test.t1.a AS `a`,test.t1.b AS `b`,test.t2.a AS `a`,test.t2.b AS `b`,test.t3.a AS `a`,test.t3.b AS `b`,test.t4.a AS `a`,test.t4.b AS `b`,test.t5.a AS `a`,test.t5.b AS `b`,test.t6.a AS `a`,test.t6.b AS `b`,test.t7.a AS `a`,test.t7.b AS `b`,test.t8.a AS `a`,test.t8.b AS `b`,test.t9.a AS `a`,test.t9.b AS `b` from test.t0 join test.t1 left join (test.t2 left join (test.t3 join test.t4) on(((test.t3.a = 1) and (test.t2.b = test.t4.b))) join test.t5 left join (test.t6 join test.t7 left join test.t8 on(((test.t7.b = test.t8.b) and (test.t6.b < 10)))) on(((test.t6.b >= 2) and (test.t5.b = test.t7.b)))) on((((test.t3.b = 2) or isnull(test.t3.c)) and ((test.t6.b = 2) or isnull(test.t6.c)) and ((test.t1.b = test.t5.b) or isnull(test.t3.c) or isnull(test.t6.c) or isnull(test.t8.c)) and (test.t1.a <> 2))) join test.t9 where ((test.t0.a = 1) and (test.t0.b = test.t1.b) and ((test.t2.a >= 4) or isnull(test.t2.c)) and ((test.t3.a < 5) or isnull(test.t3.c)) and ((test.t3.b = test.t4.b) or isnull(test.t3.c) or isnull(test.t4.c)) and ((test.t5.a >= 2) or isnull(test.t5.c)) and ((test.t6.a >= 4) or isnull(test.t6.c)) and ((test.t7.a <= 2) or isnull(test.t7.c)) and ((test.t8.a < 1) or isnull(test.t8.c)) and ((test.t8.b = test.t9.b) or isnull(test.t8.c)) and (test.t9.a = 1))
|
||||
Note 1003 select `test`.`t0`.`a` AS `a`,`test`.`t0`.`b` AS `b`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b`,`test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b`,`test`.`t9`.`a` AS `a`,`test`.`t9`.`b` AS `b` from `test`.`t0` join `test`.`t1` left join (`test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t3`.`a` = 1) and (`test`.`t2`.`b` = `test`.`t4`.`b`))) join `test`.`t5` left join (`test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t7`.`b` = `test`.`t8`.`b`) and (`test`.`t6`.`b` < 10)))) on(((`test`.`t6`.`b` >= 2) and (`test`.`t5`.`b` = `test`.`t7`.`b`)))) on((((`test`.`t3`.`b` = 2) or isnull(`test`.`t3`.`c`)) and ((`test`.`t6`.`b` = 2) or isnull(`test`.`t6`.`c`)) and ((`test`.`t1`.`b` = `test`.`t5`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t6`.`c`) or isnull(`test`.`t8`.`c`)) and (`test`.`t1`.`a` <> 2))) join `test`.`t9` where ((`test`.`t0`.`a` = 1) and (`test`.`t0`.`b` = `test`.`t1`.`b`) and ((`test`.`t2`.`a` >= 4) or isnull(`test`.`t2`.`c`)) and ((`test`.`t3`.`a` < 5) or isnull(`test`.`t3`.`c`)) and ((`test`.`t3`.`b` = `test`.`t4`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t4`.`c`)) and ((`test`.`t5`.`a` >= 2) or isnull(`test`.`t5`.`c`)) and ((`test`.`t6`.`a` >= 4) or isnull(`test`.`t6`.`c`)) and ((`test`.`t7`.`a` <= 2) or isnull(`test`.`t7`.`c`)) and ((`test`.`t8`.`a` < 1) or isnull(`test`.`t8`.`c`)) and ((`test`.`t8`.`b` = `test`.`t9`.`b`) or isnull(`test`.`t8`.`c`)) and (`test`.`t9`.`a` = 1))
|
||||
SELECT t9.a,t9.b
|
||||
FROM t9;
|
||||
a b
|
||||
@ -858,7 +858,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ALL NULL NULL NULL NULL 3
|
||||
1 SIMPLE t4 ALL NULL NULL NULL NULL 2
|
||||
Warnings:
|
||||
Note 1003 select test.t1.a AS `a`,test.t1.b AS `b`,test.t2.a AS `a`,test.t2.b AS `b`,test.t3.a AS `a`,test.t3.b AS `b`,test.t4.a AS `a`,test.t4.b AS `b` from test.t1 join test.t3 join test.t2 left join test.t4 on(((test.t3.a = 1) and (test.t2.b = test.t4.b))) where (test.t1.a <= 2)
|
||||
Note 1003 select `test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b` from `test`.`t1` join `test`.`t3` join `test`.`t2` left join `test`.`t4` on(((`test`.`t3`.`a` = 1) and (`test`.`t2`.`b` = `test`.`t4`.`b`))) where (`test`.`t1`.`a` <= 2)
|
||||
CREATE INDEX idx_b ON t2(b);
|
||||
EXPLAIN EXTENDED
|
||||
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
||||
@ -872,7 +872,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ref idx_b idx_b 5 test.t3.b 2
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 3
|
||||
Warnings:
|
||||
Note 1003 select test.t2.a AS `a`,test.t2.b AS `b`,test.t3.a AS `a`,test.t3.b AS `b`,test.t4.a AS `a`,test.t4.b AS `b` from test.t3 join test.t4 left join (test.t1 join test.t2) on(((test.t3.a = 1) and (test.t3.b = test.t2.b) and (test.t2.b = test.t4.b))) where 1
|
||||
Note 1003 select `test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b` from `test`.`t3` join `test`.`t4` left join (`test`.`t1` join `test`.`t2`) on(((`test`.`t3`.`a` = 1) and (`test`.`t3`.`b` = `test`.`t2`.`b`) and (`test`.`t2`.`b` = `test`.`t4`.`b`))) where 1
|
||||
SELECT t2.a,t2.b,t3.a,t3.b,t4.a,t4.b
|
||||
FROM t3,t4
|
||||
LEFT JOIN
|
||||
@ -935,7 +935,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t8 ALL NULL NULL NULL NULL 2 Using where
|
||||
1 SIMPLE t9 ALL NULL NULL NULL NULL 3 Using where
|
||||
Warnings:
|
||||
Note 1003 select test.t0.a AS `a`,test.t0.b AS `b`,test.t1.a AS `a`,test.t1.b AS `b`,test.t2.a AS `a`,test.t2.b AS `b`,test.t3.a AS `a`,test.t3.b AS `b`,test.t4.a AS `a`,test.t4.b AS `b`,test.t5.a AS `a`,test.t5.b AS `b`,test.t6.a AS `a`,test.t6.b AS `b`,test.t7.a AS `a`,test.t7.b AS `b`,test.t8.a AS `a`,test.t8.b AS `b`,test.t9.a AS `a`,test.t9.b AS `b` from test.t0 join test.t1 left join (test.t2 left join (test.t3 join test.t4) on(((test.t3.a = 1) and (test.t2.b = test.t4.b))) join test.t5 left join (test.t6 join test.t7 left join test.t8 on(((test.t7.b = test.t8.b) and (test.t6.b < 10)))) on(((test.t6.b >= 2) and (test.t5.b = test.t7.b)))) on((((test.t3.b = 2) or isnull(test.t3.c)) and ((test.t6.b = 2) or isnull(test.t6.c)) and ((test.t1.b = test.t5.b) or isnull(test.t3.c) or isnull(test.t6.c) or isnull(test.t8.c)) and (test.t1.a <> 2))) join test.t9 where ((test.t0.a = 1) and (test.t0.b = test.t1.b) and ((test.t2.a >= 4) or isnull(test.t2.c)) and ((test.t3.a < 5) or isnull(test.t3.c)) and ((test.t3.b = test.t4.b) or isnull(test.t3.c) or isnull(test.t4.c)) and ((test.t5.a >= 2) or isnull(test.t5.c)) and ((test.t6.a >= 4) or isnull(test.t6.c)) and ((test.t7.a <= 2) or isnull(test.t7.c)) and ((test.t8.a < 1) or isnull(test.t8.c)) and ((test.t8.b = test.t9.b) or isnull(test.t8.c)) and (test.t9.a = 1))
|
||||
Note 1003 select `test`.`t0`.`a` AS `a`,`test`.`t0`.`b` AS `b`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b`,`test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b`,`test`.`t9`.`a` AS `a`,`test`.`t9`.`b` AS `b` from `test`.`t0` join `test`.`t1` left join (`test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t3`.`a` = 1) and (`test`.`t2`.`b` = `test`.`t4`.`b`))) join `test`.`t5` left join (`test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t7`.`b` = `test`.`t8`.`b`) and (`test`.`t6`.`b` < 10)))) on(((`test`.`t6`.`b` >= 2) and (`test`.`t5`.`b` = `test`.`t7`.`b`)))) on((((`test`.`t3`.`b` = 2) or isnull(`test`.`t3`.`c`)) and ((`test`.`t6`.`b` = 2) or isnull(`test`.`t6`.`c`)) and ((`test`.`t1`.`b` = `test`.`t5`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t6`.`c`) or isnull(`test`.`t8`.`c`)) and (`test`.`t1`.`a` <> 2))) join `test`.`t9` where ((`test`.`t0`.`a` = 1) and (`test`.`t0`.`b` = `test`.`t1`.`b`) and ((`test`.`t2`.`a` >= 4) or isnull(`test`.`t2`.`c`)) and ((`test`.`t3`.`a` < 5) or isnull(`test`.`t3`.`c`)) and ((`test`.`t3`.`b` = `test`.`t4`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t4`.`c`)) and ((`test`.`t5`.`a` >= 2) or isnull(`test`.`t5`.`c`)) and ((`test`.`t6`.`a` >= 4) or isnull(`test`.`t6`.`c`)) and ((`test`.`t7`.`a` <= 2) or isnull(`test`.`t7`.`c`)) and ((`test`.`t8`.`a` < 1) or isnull(`test`.`t8`.`c`)) and ((`test`.`t8`.`b` = `test`.`t9`.`b`) or isnull(`test`.`t8`.`c`)) and (`test`.`t9`.`a` = 1))
|
||||
CREATE INDEX idx_b ON t4(b);
|
||||
CREATE INDEX idx_b ON t5(b);
|
||||
EXPLAIN EXTENDED
|
||||
@ -986,7 +986,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t8 ALL NULL NULL NULL NULL 2 Using where
|
||||
1 SIMPLE t9 ALL NULL NULL NULL NULL 3 Using where
|
||||
Warnings:
|
||||
Note 1003 select test.t0.a AS `a`,test.t0.b AS `b`,test.t1.a AS `a`,test.t1.b AS `b`,test.t2.a AS `a`,test.t2.b AS `b`,test.t3.a AS `a`,test.t3.b AS `b`,test.t4.a AS `a`,test.t4.b AS `b`,test.t5.a AS `a`,test.t5.b AS `b`,test.t6.a AS `a`,test.t6.b AS `b`,test.t7.a AS `a`,test.t7.b AS `b`,test.t8.a AS `a`,test.t8.b AS `b`,test.t9.a AS `a`,test.t9.b AS `b` from test.t0 join test.t1 left join (test.t2 left join (test.t3 join test.t4) on(((test.t3.a = 1) and (test.t2.b = test.t4.b))) join test.t5 left join (test.t6 join test.t7 left join test.t8 on(((test.t7.b = test.t8.b) and (test.t6.b < 10)))) on(((test.t6.b >= 2) and (test.t5.b = test.t7.b)))) on((((test.t3.b = 2) or isnull(test.t3.c)) and ((test.t6.b = 2) or isnull(test.t6.c)) and ((test.t1.b = test.t5.b) or isnull(test.t3.c) or isnull(test.t6.c) or isnull(test.t8.c)) and (test.t1.a <> 2))) join test.t9 where ((test.t0.a = 1) and (test.t0.b = test.t1.b) and ((test.t2.a >= 4) or isnull(test.t2.c)) and ((test.t3.a < 5) or isnull(test.t3.c)) and ((test.t3.b = test.t4.b) or isnull(test.t3.c) or isnull(test.t4.c)) and ((test.t5.a >= 2) or isnull(test.t5.c)) and ((test.t6.a >= 4) or isnull(test.t6.c)) and ((test.t7.a <= 2) or isnull(test.t7.c)) and ((test.t8.a < 1) or isnull(test.t8.c)) and ((test.t8.b = test.t9.b) or isnull(test.t8.c)) and (test.t9.a = 1))
|
||||
Note 1003 select `test`.`t0`.`a` AS `a`,`test`.`t0`.`b` AS `b`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b`,`test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b`,`test`.`t9`.`a` AS `a`,`test`.`t9`.`b` AS `b` from `test`.`t0` join `test`.`t1` left join (`test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t3`.`a` = 1) and (`test`.`t2`.`b` = `test`.`t4`.`b`))) join `test`.`t5` left join (`test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t7`.`b` = `test`.`t8`.`b`) and (`test`.`t6`.`b` < 10)))) on(((`test`.`t6`.`b` >= 2) and (`test`.`t5`.`b` = `test`.`t7`.`b`)))) on((((`test`.`t3`.`b` = 2) or isnull(`test`.`t3`.`c`)) and ((`test`.`t6`.`b` = 2) or isnull(`test`.`t6`.`c`)) and ((`test`.`t1`.`b` = `test`.`t5`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t6`.`c`) or isnull(`test`.`t8`.`c`)) and (`test`.`t1`.`a` <> 2))) join `test`.`t9` where ((`test`.`t0`.`a` = 1) and (`test`.`t0`.`b` = `test`.`t1`.`b`) and ((`test`.`t2`.`a` >= 4) or isnull(`test`.`t2`.`c`)) and ((`test`.`t3`.`a` < 5) or isnull(`test`.`t3`.`c`)) and ((`test`.`t3`.`b` = `test`.`t4`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t4`.`c`)) and ((`test`.`t5`.`a` >= 2) or isnull(`test`.`t5`.`c`)) and ((`test`.`t6`.`a` >= 4) or isnull(`test`.`t6`.`c`)) and ((`test`.`t7`.`a` <= 2) or isnull(`test`.`t7`.`c`)) and ((`test`.`t8`.`a` < 1) or isnull(`test`.`t8`.`c`)) and ((`test`.`t8`.`b` = `test`.`t9`.`b`) or isnull(`test`.`t8`.`c`)) and (`test`.`t9`.`a` = 1))
|
||||
CREATE INDEX idx_b ON t8(b);
|
||||
EXPLAIN EXTENDED
|
||||
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
||||
@ -1036,7 +1036,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t8 ref idx_b idx_b 5 test.t7.b 2 Using where
|
||||
1 SIMPLE t9 ALL NULL NULL NULL NULL 3 Using where
|
||||
Warnings:
|
||||
Note 1003 select test.t0.a AS `a`,test.t0.b AS `b`,test.t1.a AS `a`,test.t1.b AS `b`,test.t2.a AS `a`,test.t2.b AS `b`,test.t3.a AS `a`,test.t3.b AS `b`,test.t4.a AS `a`,test.t4.b AS `b`,test.t5.a AS `a`,test.t5.b AS `b`,test.t6.a AS `a`,test.t6.b AS `b`,test.t7.a AS `a`,test.t7.b AS `b`,test.t8.a AS `a`,test.t8.b AS `b`,test.t9.a AS `a`,test.t9.b AS `b` from test.t0 join test.t1 left join (test.t2 left join (test.t3 join test.t4) on(((test.t3.a = 1) and (test.t2.b = test.t4.b))) join test.t5 left join (test.t6 join test.t7 left join test.t8 on(((test.t7.b = test.t8.b) and (test.t6.b < 10)))) on(((test.t6.b >= 2) and (test.t5.b = test.t7.b)))) on((((test.t3.b = 2) or isnull(test.t3.c)) and ((test.t6.b = 2) or isnull(test.t6.c)) and ((test.t1.b = test.t5.b) or isnull(test.t3.c) or isnull(test.t6.c) or isnull(test.t8.c)) and (test.t1.a <> 2))) join test.t9 where ((test.t0.a = 1) and (test.t0.b = test.t1.b) and ((test.t2.a >= 4) or isnull(test.t2.c)) and ((test.t3.a < 5) or isnull(test.t3.c)) and ((test.t3.b = test.t4.b) or isnull(test.t3.c) or isnull(test.t4.c)) and ((test.t5.a >= 2) or isnull(test.t5.c)) and ((test.t6.a >= 4) or isnull(test.t6.c)) and ((test.t7.a <= 2) or isnull(test.t7.c)) and ((test.t8.a < 1) or isnull(test.t8.c)) and ((test.t8.b = test.t9.b) or isnull(test.t8.c)) and (test.t9.a = 1))
|
||||
Note 1003 select `test`.`t0`.`a` AS `a`,`test`.`t0`.`b` AS `b`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b`,`test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b`,`test`.`t9`.`a` AS `a`,`test`.`t9`.`b` AS `b` from `test`.`t0` join `test`.`t1` left join (`test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t3`.`a` = 1) and (`test`.`t2`.`b` = `test`.`t4`.`b`))) join `test`.`t5` left join (`test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t7`.`b` = `test`.`t8`.`b`) and (`test`.`t6`.`b` < 10)))) on(((`test`.`t6`.`b` >= 2) and (`test`.`t5`.`b` = `test`.`t7`.`b`)))) on((((`test`.`t3`.`b` = 2) or isnull(`test`.`t3`.`c`)) and ((`test`.`t6`.`b` = 2) or isnull(`test`.`t6`.`c`)) and ((`test`.`t1`.`b` = `test`.`t5`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t6`.`c`) or isnull(`test`.`t8`.`c`)) and (`test`.`t1`.`a` <> 2))) join `test`.`t9` where ((`test`.`t0`.`a` = 1) and (`test`.`t0`.`b` = `test`.`t1`.`b`) and ((`test`.`t2`.`a` >= 4) or isnull(`test`.`t2`.`c`)) and ((`test`.`t3`.`a` < 5) or isnull(`test`.`t3`.`c`)) and ((`test`.`t3`.`b` = `test`.`t4`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t4`.`c`)) and ((`test`.`t5`.`a` >= 2) or isnull(`test`.`t5`.`c`)) and ((`test`.`t6`.`a` >= 4) or isnull(`test`.`t6`.`c`)) and ((`test`.`t7`.`a` <= 2) or isnull(`test`.`t7`.`c`)) and ((`test`.`t8`.`a` < 1) or isnull(`test`.`t8`.`c`)) and ((`test`.`t8`.`b` = `test`.`t9`.`b`) or isnull(`test`.`t8`.`c`)) and (`test`.`t9`.`a` = 1))
|
||||
CREATE INDEX idx_b ON t1(b);
|
||||
CREATE INDEX idx_a ON t0(a);
|
||||
EXPLAIN EXTENDED
|
||||
@ -1087,7 +1087,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t8 ref idx_b idx_b 5 test.t7.b 2 Using where
|
||||
1 SIMPLE t9 ALL NULL NULL NULL NULL 3 Using where
|
||||
Warnings:
|
||||
Note 1003 select test.t0.a AS `a`,test.t0.b AS `b`,test.t1.a AS `a`,test.t1.b AS `b`,test.t2.a AS `a`,test.t2.b AS `b`,test.t3.a AS `a`,test.t3.b AS `b`,test.t4.a AS `a`,test.t4.b AS `b`,test.t5.a AS `a`,test.t5.b AS `b`,test.t6.a AS `a`,test.t6.b AS `b`,test.t7.a AS `a`,test.t7.b AS `b`,test.t8.a AS `a`,test.t8.b AS `b`,test.t9.a AS `a`,test.t9.b AS `b` from test.t0 join test.t1 left join (test.t2 left join (test.t3 join test.t4) on(((test.t3.a = 1) and (test.t2.b = test.t4.b))) join test.t5 left join (test.t6 join test.t7 left join test.t8 on(((test.t7.b = test.t8.b) and (test.t6.b < 10)))) on(((test.t6.b >= 2) and (test.t5.b = test.t7.b)))) on((((test.t3.b = 2) or isnull(test.t3.c)) and ((test.t6.b = 2) or isnull(test.t6.c)) and ((test.t1.b = test.t5.b) or isnull(test.t3.c) or isnull(test.t6.c) or isnull(test.t8.c)) and (test.t1.a <> 2))) join test.t9 where ((test.t0.a = 1) and (test.t0.b = test.t1.b) and ((test.t2.a >= 4) or isnull(test.t2.c)) and ((test.t3.a < 5) or isnull(test.t3.c)) and ((test.t3.b = test.t4.b) or isnull(test.t3.c) or isnull(test.t4.c)) and ((test.t5.a >= 2) or isnull(test.t5.c)) and ((test.t6.a >= 4) or isnull(test.t6.c)) and ((test.t7.a <= 2) or isnull(test.t7.c)) and ((test.t8.a < 1) or isnull(test.t8.c)) and ((test.t8.b = test.t9.b) or isnull(test.t8.c)) and (test.t9.a = 1))
|
||||
Note 1003 select `test`.`t0`.`a` AS `a`,`test`.`t0`.`b` AS `b`,`test`.`t1`.`a` AS `a`,`test`.`t1`.`b` AS `b`,`test`.`t2`.`a` AS `a`,`test`.`t2`.`b` AS `b`,`test`.`t3`.`a` AS `a`,`test`.`t3`.`b` AS `b`,`test`.`t4`.`a` AS `a`,`test`.`t4`.`b` AS `b`,`test`.`t5`.`a` AS `a`,`test`.`t5`.`b` AS `b`,`test`.`t6`.`a` AS `a`,`test`.`t6`.`b` AS `b`,`test`.`t7`.`a` AS `a`,`test`.`t7`.`b` AS `b`,`test`.`t8`.`a` AS `a`,`test`.`t8`.`b` AS `b`,`test`.`t9`.`a` AS `a`,`test`.`t9`.`b` AS `b` from `test`.`t0` join `test`.`t1` left join (`test`.`t2` left join (`test`.`t3` join `test`.`t4`) on(((`test`.`t3`.`a` = 1) and (`test`.`t2`.`b` = `test`.`t4`.`b`))) join `test`.`t5` left join (`test`.`t6` join `test`.`t7` left join `test`.`t8` on(((`test`.`t7`.`b` = `test`.`t8`.`b`) and (`test`.`t6`.`b` < 10)))) on(((`test`.`t6`.`b` >= 2) and (`test`.`t5`.`b` = `test`.`t7`.`b`)))) on((((`test`.`t3`.`b` = 2) or isnull(`test`.`t3`.`c`)) and ((`test`.`t6`.`b` = 2) or isnull(`test`.`t6`.`c`)) and ((`test`.`t1`.`b` = `test`.`t5`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t6`.`c`) or isnull(`test`.`t8`.`c`)) and (`test`.`t1`.`a` <> 2))) join `test`.`t9` where ((`test`.`t0`.`a` = 1) and (`test`.`t0`.`b` = `test`.`t1`.`b`) and ((`test`.`t2`.`a` >= 4) or isnull(`test`.`t2`.`c`)) and ((`test`.`t3`.`a` < 5) or isnull(`test`.`t3`.`c`)) and ((`test`.`t3`.`b` = `test`.`t4`.`b`) or isnull(`test`.`t3`.`c`) or isnull(`test`.`t4`.`c`)) and ((`test`.`t5`.`a` >= 2) or isnull(`test`.`t5`.`c`)) and ((`test`.`t6`.`a` >= 4) or isnull(`test`.`t6`.`c`)) and ((`test`.`t7`.`a` <= 2) or isnull(`test`.`t7`.`c`)) and ((`test`.`t8`.`a` < 1) or isnull(`test`.`t8`.`c`)) and ((`test`.`t8`.`b` = `test`.`t9`.`b`) or isnull(`test`.`t8`.`c`)) and (`test`.`t9`.`a` = 1))
|
||||
SELECT t0.a,t0.b,t1.a,t1.b,t2.a,t2.b,t3.a,t3.b,t4.a,t4.b,
|
||||
t5.a,t5.b,t6.a,t6.b,t7.a,t7.b,t8.a,t8.b,t9.a,t9.b
|
||||
FROM t0,t1
|
||||
|
@ -106,11 +106,11 @@ grp a c id a c d a
|
||||
3 6 D 3 6 C 6 6
|
||||
NULL NULL NULL NULL NULL NULL NULL
|
||||
explain select t1.*,t2.*,t3.a from t1 left join t2 on (t3.a=t2.a) left join t1 as t3 on (t1.a=t3.a);
|
||||
ERROR 42000: Cross dependency found in OUTER JOIN. Examine your ON conditions
|
||||
ERROR 42000: Cross dependency found in OUTER JOIN; examine your ON conditions
|
||||
select t1.*,t2.*,t3.a from t1 left join t2 on (t3.a=t2.a) left join t1 as t3 on (t1.a=t3.a);
|
||||
ERROR 42000: Cross dependency found in OUTER JOIN. Examine your ON conditions
|
||||
ERROR 42000: Cross dependency found in OUTER JOIN; examine your ON conditions
|
||||
select t1.*,t2.*,t3.a from t1 left join t2 on (t3.a=t2.a) left join t1 as t3 on (t2.a=t3.a);
|
||||
ERROR 42000: Cross dependency found in OUTER JOIN. Examine your ON conditions
|
||||
ERROR 42000: Cross dependency found in OUTER JOIN; examine your ON conditions
|
||||
select t1.*,t2.* from t1 inner join t2 using (a);
|
||||
grp a c id a c d
|
||||
1 1 a 1 1 a 1
|
||||
@ -400,7 +400,7 @@ insert into t3 values (1);
|
||||
insert into t4 values (1,1);
|
||||
insert into t5 values (1,1);
|
||||
explain select * from t3 left join t4 on t4.seq_1_id = t2.t2_id left join t1 on t1.t1_id = t4.seq_0_id left join t5 on t5.seq_0_id = t1.t1_id left join t2 on t2.t2_id = t5.seq_1_id where t3.t3_id = 23;
|
||||
ERROR 42000: Cross dependency found in OUTER JOIN. Examine your ON conditions
|
||||
ERROR 42000: Cross dependency found in OUTER JOIN; examine your ON conditions
|
||||
drop table t1,t2,t3,t4,t5;
|
||||
create table t1 (n int, m int, o int, key(n));
|
||||
create table t2 (n int not null, m int, o int, primary key(n));
|
||||
|
@ -156,8 +156,8 @@ CREATE TABLE t1 (c CHAR(10) NOT NULL,i INT NOT NULL AUTO_INCREMENT,
|
||||
UNIQUE (c,i));
|
||||
INSERT INTO t1 (c) VALUES (NULL),(NULL);
|
||||
Warnings:
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'c' at row 1
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'c' at row 2
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'c' at row 1
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'c' at row 2
|
||||
SELECT * FROM t1;
|
||||
c i
|
||||
1
|
||||
|
@ -39,9 +39,9 @@ SELECT @@medium.key_buffer_size;
|
||||
0
|
||||
SET @@global.key_buffer_size=@save_key_buffer;
|
||||
SELECT @@default.key_buffer_size;
|
||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'default.key_buffer_size' at line 1
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'default.key_buffer_size' at line 1
|
||||
SELECT @@skr.storage_engine="test";
|
||||
ERROR HY000: Variable 'storage_engine' is not a variable component (Can't be used as XXXX.variable_name)
|
||||
ERROR HY000: Variable 'storage_engine' is not a variable component (can't be used as XXXX.variable_name)
|
||||
select @@keycache1.key_cache_block_size;
|
||||
@@keycache1.key_cache_block_size
|
||||
0
|
||||
|
@ -44,9 +44,9 @@ create table t1 (a int, b char(10));
|
||||
load data infile '../../std_data/loaddata3.dat' into table t1 fields terminated by '' enclosed by '' ignore 1 lines;
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'a' at row 3
|
||||
Warning 1262 Row 3 was truncated; It contained more data than there were input columns
|
||||
Warning 1262 Row 3 was truncated; it contained more data than there were input columns
|
||||
Warning 1265 Data truncated for column 'a' at row 5
|
||||
Warning 1262 Row 5 was truncated; It contained more data than there were input columns
|
||||
Warning 1262 Row 5 was truncated; it contained more data than there were input columns
|
||||
select * from t1;
|
||||
a b
|
||||
1 row 1
|
||||
|
@ -24,9 +24,9 @@ RENAME TABLE T1 TO T2;
|
||||
ALTER TABLE T2 ADD new_col int not null;
|
||||
ALTER TABLE T2 RENAME T3;
|
||||
show tables like 't_';
|
||||
Tables_in_test (t_)
|
||||
t3
|
||||
t4
|
||||
Tables_in_test (t_) table_type
|
||||
t3 BASE TABLE
|
||||
t4 BASE TABLE
|
||||
drop table t3,t4;
|
||||
create table t1 (a int);
|
||||
select count(*) from T1;
|
||||
@ -57,4 +57,4 @@ select C.a, c.a from t1 c, t2 C;
|
||||
ERROR 42000: Not unique table/alias: 'C'
|
||||
drop table t1, t2;
|
||||
show tables;
|
||||
Tables_in_test
|
||||
Tables_in_test table_type
|
||||
|
@ -4,11 +4,11 @@ DROP DATABASE IF EXISTS `test_$1`;
|
||||
CREATE TABLE T1 (a int);
|
||||
INSERT INTO T1 VALUES (1);
|
||||
SHOW TABLES LIKE "T1";
|
||||
Tables_in_test (T1)
|
||||
T1
|
||||
Tables_in_test (T1) table_type
|
||||
T1 BASE TABLE
|
||||
SHOW TABLES LIKE "t1";
|
||||
Tables_in_test (t1)
|
||||
T1
|
||||
Tables_in_test (t1) table_type
|
||||
T1 BASE TABLE
|
||||
SHOW CREATE TABLE T1;
|
||||
Table Create Table
|
||||
T1 CREATE TABLE `T1` (
|
||||
@ -16,37 +16,37 @@ T1 CREATE TABLE `T1` (
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
RENAME TABLE T1 TO T2;
|
||||
SHOW TABLES LIKE "T2";
|
||||
Tables_in_test (T2)
|
||||
T2
|
||||
Tables_in_test (T2) table_type
|
||||
T2 BASE TABLE
|
||||
SELECT * FROM t2;
|
||||
a
|
||||
1
|
||||
RENAME TABLE T2 TO t3;
|
||||
SHOW TABLES LIKE "T3";
|
||||
Tables_in_test (T3)
|
||||
t3
|
||||
Tables_in_test (T3) table_type
|
||||
t3 BASE TABLE
|
||||
RENAME TABLE T3 TO T1;
|
||||
SHOW TABLES LIKE "T1";
|
||||
Tables_in_test (T1)
|
||||
T1
|
||||
Tables_in_test (T1) table_type
|
||||
T1 BASE TABLE
|
||||
ALTER TABLE T1 add b int;
|
||||
SHOW TABLES LIKE "T1";
|
||||
Tables_in_test (T1)
|
||||
t1
|
||||
Tables_in_test (T1) table_type
|
||||
T1 BASE TABLE
|
||||
ALTER TABLE T1 RENAME T2;
|
||||
SHOW TABLES LIKE "T2";
|
||||
Tables_in_test (T2)
|
||||
T2
|
||||
Tables_in_test (T2) table_type
|
||||
T2 BASE TABLE
|
||||
LOCK TABLE T2 WRITE;
|
||||
ALTER TABLE T2 drop b;
|
||||
SHOW TABLES LIKE "T2";
|
||||
Tables_in_test (T2)
|
||||
t2
|
||||
Tables_in_test (T2) table_type
|
||||
T2 BASE TABLE
|
||||
UNLOCK TABLES;
|
||||
RENAME TABLE T2 TO T1;
|
||||
SHOW TABLES LIKE "T1";
|
||||
Tables_in_test (T1)
|
||||
T1
|
||||
Tables_in_test (T1) table_type
|
||||
T1 BASE TABLE
|
||||
SELECT * from T1;
|
||||
a
|
||||
1
|
||||
@ -59,11 +59,11 @@ DROP DATABASE `test_$1`;
|
||||
CREATE TABLE T1 (a int) engine=innodb;
|
||||
INSERT INTO T1 VALUES (1);
|
||||
SHOW TABLES LIKE "T1";
|
||||
Tables_in_test (T1)
|
||||
T1
|
||||
Tables_in_test (T1) table_type
|
||||
T1 BASE TABLE
|
||||
SHOW TABLES LIKE "t1";
|
||||
Tables_in_test (t1)
|
||||
T1
|
||||
Tables_in_test (t1) table_type
|
||||
T1 BASE TABLE
|
||||
SHOW CREATE TABLE T1;
|
||||
Table Create Table
|
||||
T1 CREATE TABLE `T1` (
|
||||
@ -71,37 +71,37 @@ T1 CREATE TABLE `T1` (
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1
|
||||
RENAME TABLE T1 TO T2;
|
||||
SHOW TABLES LIKE "T2";
|
||||
Tables_in_test (T2)
|
||||
t2
|
||||
Tables_in_test (T2) table_type
|
||||
t2 BASE TABLE
|
||||
SELECT * FROM t2;
|
||||
a
|
||||
1
|
||||
RENAME TABLE T2 TO t3;
|
||||
SHOW TABLES LIKE "T3";
|
||||
Tables_in_test (T3)
|
||||
t3
|
||||
Tables_in_test (T3) table_type
|
||||
t3 BASE TABLE
|
||||
RENAME TABLE T3 TO T1;
|
||||
SHOW TABLES LIKE "T1";
|
||||
Tables_in_test (T1)
|
||||
t1
|
||||
Tables_in_test (T1) table_type
|
||||
t1 BASE TABLE
|
||||
ALTER TABLE T1 add b int;
|
||||
SHOW TABLES LIKE "T1";
|
||||
Tables_in_test (T1)
|
||||
t1
|
||||
Tables_in_test (T1) table_type
|
||||
t1 BASE TABLE
|
||||
ALTER TABLE T1 RENAME T2;
|
||||
SHOW TABLES LIKE "T2";
|
||||
Tables_in_test (T2)
|
||||
t2
|
||||
Tables_in_test (T2) table_type
|
||||
t2 BASE TABLE
|
||||
LOCK TABLE T2 WRITE;
|
||||
ALTER TABLE T2 drop b;
|
||||
SHOW TABLES LIKE "T2";
|
||||
Tables_in_test (T2)
|
||||
t2
|
||||
Tables_in_test (T2) table_type
|
||||
t2 BASE TABLE
|
||||
UNLOCK TABLES;
|
||||
RENAME TABLE T2 TO T1;
|
||||
SHOW TABLES LIKE "T1";
|
||||
Tables_in_test (T1)
|
||||
t1
|
||||
Tables_in_test (T1) table_type
|
||||
t1 BASE TABLE
|
||||
SELECT * from T1;
|
||||
a
|
||||
1
|
||||
@ -121,3 +121,13 @@ LOCATION
|
||||
Mic-5
|
||||
Mic-6
|
||||
drop table T1;
|
||||
create table T1 (A int);
|
||||
alter table T1 add index (A);
|
||||
show tables like 'T1%';
|
||||
Tables_in_test (T1%) table_type
|
||||
T1 BASE TABLE
|
||||
alter table t1 add index (A);
|
||||
show tables like 't1%';
|
||||
Tables_in_test (t1%) table_type
|
||||
t1 BASE TABLE
|
||||
drop table t1;
|
||||
|
@ -4,7 +4,7 @@ SELECT * from T1;
|
||||
a
|
||||
drop table t1;
|
||||
flush tables;
|
||||
CREATE TABLE t1 (a int) type=INNODB;
|
||||
CREATE TABLE t1 (a int) ENGINE=INNODB;
|
||||
SELECT * from T1;
|
||||
Can't open file: 'T1.InnoDB'. (errno: 1)
|
||||
ERROR HY000: Can't open file: 'T1.InnoDB' (errno: 1)
|
||||
drop table t1;
|
||||
|
@ -544,6 +544,24 @@ insert into t1 values (99,NULL);
|
||||
select * from t4 where a+0 > 90;
|
||||
a b
|
||||
99 1
|
||||
insert t5 values (1,1);
|
||||
ERROR 23000: Duplicate entry '1-1' for key 1
|
||||
insert t6 values (2,1);
|
||||
ERROR 23000: Duplicate entry '2-1' for key 1
|
||||
insert t5 values (1,1) on duplicate key update b=b+10;
|
||||
insert t6 values (2,1) on duplicate key update b=b+20;
|
||||
select * from t5 where a < 3;
|
||||
a b
|
||||
1 2
|
||||
1 3
|
||||
1 4
|
||||
1 5
|
||||
1 11
|
||||
2 2
|
||||
2 3
|
||||
2 4
|
||||
2 5
|
||||
2 21
|
||||
drop table t6, t5, t4, t3, t2, t1;
|
||||
CREATE TABLE t1 ( a int(11) NOT NULL default '0', b int(11) NOT NULL default '0', PRIMARY KEY (a,b)) ENGINE=MyISAM;
|
||||
INSERT INTO t1 VALUES (1,1), (2,1);
|
||||
|
@ -191,7 +191,7 @@ n d unix_timestamp(t)
|
||||
1 10 1038401397
|
||||
2 20 1038401397
|
||||
UPDATE t1,t2 SET 1=2 WHERE t1.n=t2.n;
|
||||
ERROR 42000: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '1=2 WHERE t1.n=t2.n' at line 1
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1=2 WHERE t1.n=t2.n' at line 1
|
||||
drop table t1,t2;
|
||||
set timestamp=0;
|
||||
set sql_safe_updates=0;
|
||||
@ -446,7 +446,8 @@ grant update on mysqltest.t1 to mysqltest_1@localhost;
|
||||
update t1, t2 set t1.b=1 where t1.a=t2.a;
|
||||
update t1, t2 set t1.b=(select t3.b from t3 where t1.a=t3.a) where t1.a=t2.a;
|
||||
revoke all privileges on mysqltest.t1 from mysqltest_1@localhost;
|
||||
delete from mysql.user where user='mysqltest_1';
|
||||
revoke all privileges on mysqltest.* from mysqltest_1@localhost;
|
||||
delete from mysql.user where user=_binary'mysqltest_1';
|
||||
drop database mysqltest;
|
||||
create table t1 (a int, primary key (a));
|
||||
create table t2 (a int, primary key (a));
|
||||
|
@ -1,5 +1,5 @@
|
||||
drop table if exists t1,t2;
|
||||
set timestamp=1000000000;
|
||||
drop table if exists t1,t2;
|
||||
create table t1 (word varchar(20));
|
||||
create table t2 (id int auto_increment not null primary key);
|
||||
insert into t1 values ("abirvalg");
|
||||
@ -19,6 +19,8 @@ use test;
|
||||
SET TIMESTAMP=1000000000;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
drop table if exists t1,t2;
|
||||
SET TIMESTAMP=1000000000;
|
||||
create table t1 (word varchar(20));
|
||||
SET TIMESTAMP=1000000000;
|
||||
create table t2 (id int auto_increment not null primary key);
|
||||
@ -59,6 +61,8 @@ use test;
|
||||
SET TIMESTAMP=1000000000;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
drop table if exists t1,t2;
|
||||
SET TIMESTAMP=1000000000;
|
||||
create table t1 (word varchar(20));
|
||||
SET TIMESTAMP=1000000000;
|
||||
create table t2 (id int auto_increment not null primary key);
|
||||
|
@ -54,7 +54,10 @@ CREATE TABLE `t1` (
|
||||
);
|
||||
INSERT INTO `t1` VALUES ('1.23450',2.3456),('1.23450',2.3456),('1.23450',2.3456),('1.23450',2.3456),('1.23450',2.3456);
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT, CHARACTER_SET_CLIENT=utf8 */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||
/*!40101 SET NAMES utf8 */;
|
||||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE="NO_AUTO_VALUE_ON_ZERO" */;
|
||||
@ -75,6 +78,8 @@ UNLOCK TABLES;
|
||||
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||
|
||||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||
@ -136,9 +141,12 @@ INSERT INTO t1 VALUES ("1\""), ("\"2");
|
||||
</mysqldump>
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (a VARCHAR(255)) DEFAULT CHARSET koi8r;
|
||||
INSERT INTO t1 VALUES (_koi8r x'C1C2C3C4C5');
|
||||
INSERT INTO t1 VALUES (_koi8r x'C1C2C3C4C5'), (NULL);
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT, CHARACTER_SET_CLIENT=utf8 */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||
/*!40101 SET NAMES utf8 */;
|
||||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE="NO_AUTO_VALUE_ON_ZERO" */;
|
||||
@ -151,6 +159,7 @@ CREATE TABLE `t1` (
|
||||
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
|
||||
LOCK TABLES `t1` WRITE;
|
||||
INSERT INTO `t1` VALUES ('абцде');
|
||||
INSERT INTO `t1` VALUES (NULL);
|
||||
UNLOCK TABLES;
|
||||
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
|
||||
|
||||
@ -158,6 +167,8 @@ UNLOCK TABLES;
|
||||
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (a int) ENGINE=MYISAM;
|
||||
@ -208,7 +219,10 @@ CREATE TABLE ```a` (
|
||||
drop table ```a`;
|
||||
create table t1(a int);
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT, CHARACTER_SET_CLIENT=utf8 */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||
/*!40101 SET NAMES utf8 */;
|
||||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE="NO_AUTO_VALUE_ON_ZERO" */;
|
||||
@ -227,6 +241,8 @@ UNLOCK TABLES;
|
||||
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||
|
||||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||
@ -248,7 +264,10 @@ UNLOCK TABLES;
|
||||
|
||||
set global sql_mode='ANSI_QUOTES';
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT, CHARACTER_SET_CLIENT=utf8 */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||
/*!40101 SET NAMES utf8 */;
|
||||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE="NO_AUTO_VALUE_ON_ZERO" */;
|
||||
@ -267,6 +286,8 @@ UNLOCK TABLES;
|
||||
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||
|
||||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||
@ -291,7 +312,10 @@ drop table t1;
|
||||
create table t1(a int);
|
||||
insert into t1 values (1),(2),(3);
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT, CHARACTER_SET_CLIENT=utf8 */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||
/*!40101 SET NAMES utf8 */;
|
||||
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE="" */;
|
||||
DROP TABLE IF EXISTS `t1`;
|
||||
CREATE TABLE `t1` (
|
||||
@ -301,6 +325,8 @@ CREATE TABLE `t1` (
|
||||
|
||||
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||
|
||||
1
|
||||
2
|
||||
|
29
mysql-test/r/ndb_alter_table.result
Normal file
29
mysql-test/r/ndb_alter_table.result
Normal file
@ -0,0 +1,29 @@
|
||||
DROP TABLE IF EXISTS t1;
|
||||
CREATE TABLE t1 (
|
||||
a INT NOT NULL,
|
||||
b INT NOT NULL
|
||||
) ENGINE=ndbcluster;
|
||||
INSERT INTO t1 VALUES (9410,9412);
|
||||
ALTER TABLE t1 ADD COLUMN c int not null;
|
||||
SELECT * FROM t1;
|
||||
a b c
|
||||
9410 9412 0
|
||||
DROP TABLE t1;
|
||||
create table t1 (
|
||||
col1 int not null auto_increment primary key,
|
||||
col2 varchar(30) not null,
|
||||
col3 varchar (20) not null,
|
||||
col4 varchar(4) not null,
|
||||
col5 enum('PENDING', 'ACTIVE', 'DISABLED') not null,
|
||||
col6 int not null, to_be_deleted int);
|
||||
insert into t1 values (2,4,3,5,"PENDING",1,7);
|
||||
alter table t1
|
||||
add column col4_5 varchar(20) not null after col4,
|
||||
add column col7 varchar(30) not null after col5,
|
||||
add column col8 datetime not null, drop column to_be_deleted,
|
||||
change column col2 fourth varchar(30) not null after col3,
|
||||
modify column col6 int not null first;
|
||||
select * from t1;
|
||||
col6 col1 col3 fourth col4 col4_5 col5 col7 col8
|
||||
1 2 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
drop table t1;
|
183
mysql-test/r/ndb_autodiscover.result
Normal file
183
mysql-test/r/ndb_autodiscover.result
Normal file
@ -0,0 +1,183 @@
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t9;
|
||||
flush status;
|
||||
create table t1(
|
||||
id int not null primary key,
|
||||
name char(20)
|
||||
) engine=ndb;
|
||||
insert into t1 values(1, "Autodiscover");
|
||||
flush tables;
|
||||
select * from t1;
|
||||
id name
|
||||
1 Autodiscover
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 1
|
||||
flush tables;
|
||||
insert into t1 values (2, "Auto 2");
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 2
|
||||
insert into t1 values (3, "Discover 3");
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 2
|
||||
flush tables;
|
||||
select * from t1 order by id;
|
||||
id name
|
||||
1 Autodiscover
|
||||
2 Auto 2
|
||||
3 Discover 3
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 3
|
||||
flush tables;
|
||||
update t1 set name="Autodiscover" where id = 2;
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 4
|
||||
select * from t1 order by name;
|
||||
id name
|
||||
2 Autodiscover
|
||||
1 Autodiscover
|
||||
3 Discover 3
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 4
|
||||
flush tables;
|
||||
delete from t1 where id = 3;
|
||||
select * from t1 order by id;
|
||||
id name
|
||||
1 Autodiscover
|
||||
2 Autodiscover
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 5
|
||||
drop table t1;
|
||||
flush status;
|
||||
create table t2(
|
||||
id int not null primary key,
|
||||
name char(22)
|
||||
) engine=ndb;
|
||||
insert into t2 values (1, "Discoverer");
|
||||
select * from t2;
|
||||
id name
|
||||
1 Discoverer
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 0
|
||||
flush tables;
|
||||
select * from t2;
|
||||
id name
|
||||
1 Discoverer
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 1
|
||||
drop table t2;
|
||||
flush status;
|
||||
create table t3(
|
||||
id int not null primary key,
|
||||
name char(255)
|
||||
) engine=ndb;
|
||||
insert into t3 values (1, "Explorer");
|
||||
select * from t3;
|
||||
id name
|
||||
1 Explorer
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 0
|
||||
flush tables;
|
||||
create table t3(
|
||||
id int not null primary key,
|
||||
name char(20), a int, b float, c char(24)
|
||||
) engine=ndb;
|
||||
ERROR 42S01: Table 't3' already exists
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 1
|
||||
SHOW TABLES FROM test;
|
||||
Tables_in_test
|
||||
create table IF NOT EXISTS t3(
|
||||
id int not null primary key,
|
||||
id2 int not null,
|
||||
name char(20)
|
||||
) engine=ndb;
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 2
|
||||
SHOW CREATE TABLE t3;
|
||||
Table Create Table
|
||||
t3 CREATE TABLE `t3` (
|
||||
`id` int(11) NOT NULL default '0',
|
||||
`name` char(255) default NULL,
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=ndbcluster DEFAULT CHARSET=latin1
|
||||
select * from t3;
|
||||
id name
|
||||
1 Explorer
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 2
|
||||
drop table t3;
|
||||
flush status;
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 0
|
||||
create table t5(
|
||||
id int not null primary key,
|
||||
name char(200)
|
||||
) engine=ndb;
|
||||
insert into t5 values (1, "Magnus");
|
||||
select * from t5;
|
||||
id name
|
||||
1 Magnus
|
||||
ALTER TABLE t5 ADD COLUMN adress char(255) FIRST;
|
||||
select * from t5;
|
||||
adress id name
|
||||
NULL 1 Magnus
|
||||
insert into t5 values
|
||||
("Adress for record 2", 2, "Carl-Gustav"),
|
||||
("Adress for record 3", 3, "Karl-Emil");
|
||||
update t5 set name="Bertil" where id = 2;
|
||||
select * from t5 order by id;
|
||||
adress id name
|
||||
NULL 1 Magnus
|
||||
Adress for record 2 2 Bertil
|
||||
Adress for record 3 3 Karl-Emil
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 0
|
||||
drop table t5;
|
||||
flush status;
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 0
|
||||
create table t6(
|
||||
id int not null primary key,
|
||||
name char(20)
|
||||
) engine=ndb;
|
||||
insert into t6 values (1, "Magnus");
|
||||
select * from t6;
|
||||
id name
|
||||
1 Magnus
|
||||
ALTER TABLE t6 ADD COLUMN adress char(255) FIRST;
|
||||
select * from t6;
|
||||
adress id name
|
||||
NULL 1 Magnus
|
||||
insert into t6 values
|
||||
("Adress for record 2", 2, "Carl-Gustav"),
|
||||
("Adress for record 3", 3, "Karl-Emil");
|
||||
update t6 set name="Bertil" where id = 2;
|
||||
select * from t6 order by id;
|
||||
adress id name
|
||||
NULL 1 Magnus
|
||||
Adress for record 2 2 Bertil
|
||||
Adress for record 3 3 Karl-Emil
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 0
|
||||
drop table t6;
|
||||
CREATE TABLE t9 (
|
||||
a int NOT NULL PRIMARY KEY,
|
||||
b int
|
||||
) engine=ndb;
|
||||
insert t9 values(1, 2), (2,3), (3, 4), (4, 5);
|
10
mysql-test/r/ndb_autodiscover2.result
Normal file
10
mysql-test/r/ndb_autodiscover2.result
Normal file
@ -0,0 +1,10 @@
|
||||
select * from t9 order by a;
|
||||
a b
|
||||
1 2
|
||||
2 3
|
||||
3 4
|
||||
4 5
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
Handler_discover 1
|
||||
drop table t9;
|
@ -1,4 +1,4 @@
|
||||
DROP TABLE IF EXISTS t1;
|
||||
DROP TABLE IF EXISTS t1,t2,t3,t4,t5,t6,t7;
|
||||
CREATE TABLE t1 (
|
||||
pk1 INT NOT NULL PRIMARY KEY,
|
||||
attr1 INT NOT NULL
|
||||
@ -25,11 +25,59 @@ pk1 attr1
|
||||
DELETE FROM t1;
|
||||
SELECT * FROM t1;
|
||||
pk1 attr1
|
||||
INSERT INTO t1 VALUES (9410,9412);
|
||||
DELETE FROM t1 WHERE pk1 = 9410;
|
||||
SELECT * FROM t1;
|
||||
INSERT INTO t1 VALUES (9410,9412), (9411, 9413), (9408, 8765),
|
||||
(7,8), (8,9), (9,10), (10,11), (11,12), (12,13), (13,14);
|
||||
UPDATE t1 SET attr1 = 9999;
|
||||
SELECT * FROM t1 ORDER BY pk1;
|
||||
pk1 attr1
|
||||
INSERT INTO t1 VALUES (9410,9412), (9411, 9413), (9408, 8765);
|
||||
7 9999
|
||||
8 9999
|
||||
9 9999
|
||||
10 9999
|
||||
11 9999
|
||||
12 9999
|
||||
13 9999
|
||||
9408 9999
|
||||
9410 9999
|
||||
9411 9999
|
||||
UPDATE t1 SET attr1 = 9998 WHERE pk1 < 1000;
|
||||
SELECT * FROM t1 ORDER BY pk1;
|
||||
pk1 attr1
|
||||
7 9998
|
||||
8 9998
|
||||
9 9998
|
||||
10 9998
|
||||
11 9998
|
||||
12 9998
|
||||
13 9998
|
||||
9408 9999
|
||||
9410 9999
|
||||
9411 9999
|
||||
UPDATE t1 SET attr1 = 9997 WHERE attr1 = 9999;
|
||||
SELECT * FROM t1 ORDER BY pk1;
|
||||
pk1 attr1
|
||||
7 9998
|
||||
8 9998
|
||||
9 9998
|
||||
10 9998
|
||||
11 9998
|
||||
12 9998
|
||||
13 9998
|
||||
9408 9997
|
||||
9410 9997
|
||||
9411 9997
|
||||
DELETE FROM t1 WHERE pk1 = 9410;
|
||||
SELECT * FROM t1 ORDER BY pk1;
|
||||
pk1 attr1
|
||||
7 9998
|
||||
8 9998
|
||||
9 9998
|
||||
10 9998
|
||||
11 9998
|
||||
12 9998
|
||||
13 9998
|
||||
9408 9997
|
||||
9411 9997
|
||||
DELETE FROM t1;
|
||||
SELECT * FROM t1;
|
||||
pk1 attr1
|
||||
@ -80,3 +128,213 @@ attr1 INT NOT NULL
|
||||
) ENGINE=NDB;
|
||||
INSERT INTO t1 values(1, 9999);
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t2 (
|
||||
a bigint unsigned NOT NULL PRIMARY KEY,
|
||||
b int unsigned not null,
|
||||
c int unsigned
|
||||
) engine=ndbcluster;
|
||||
CREATE TABLE t3 (
|
||||
a bigint unsigned NOT NULL,
|
||||
b bigint unsigned not null,
|
||||
c bigint unsigned,
|
||||
PRIMARY KEY(a)
|
||||
) engine=ndbcluster;
|
||||
CREATE TABLE t4 (
|
||||
a bigint unsigned NOT NULL,
|
||||
b bigint unsigned not null,
|
||||
c bigint unsigned NOT NULL,
|
||||
d int unsigned,
|
||||
PRIMARY KEY(a, b, c)
|
||||
) engine=ndbcluster;
|
||||
select * from t2 where a = 7 order by b;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t2 where a = 7 order by a;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t2 where a = 7 order by 2;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t2 where a = 7 order by c;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t2 where a = 7 and b = 16 order by b;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t2 where a = 7 and b = 16 order by a;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t2 where a = 7 and b = 17 order by a;
|
||||
a b c
|
||||
select * from t2 where a = 7 and b != 16 order by b;
|
||||
a b c
|
||||
select * from t2 where a = 7 and b = 16 and c = 5 order by b;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t2 where a = 7 and b = 16 and c = 5 order by a;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t2 where a = 7 and b = 16 and c = 6 order by a;
|
||||
a b c
|
||||
select * from t2 where a = 7 and b != 16 and c = 5 order by b;
|
||||
a b c
|
||||
select * from t3 where a = 7 order by b;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t3 where a = 7 order by a;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t3 where a = 7 order by 2;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t3 where a = 7 order by c;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t3 where a = 7 and b = 16 order by b;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t3 where a = 7 and b = 16 order by a;
|
||||
a b c
|
||||
7 16 5
|
||||
select * from t3 where a = 7 and b = 17 order by a;
|
||||
a b c
|
||||
select * from t3 where a = 7 and b != 16 order by b;
|
||||
a b c
|
||||
select * from t4 where a = 7 order by b;
|
||||
a b c d
|
||||
7 16 5 26007
|
||||
select * from t4 where a = 7 order by a;
|
||||
a b c d
|
||||
7 16 5 26007
|
||||
select * from t4 where a = 7 order by 2;
|
||||
a b c d
|
||||
7 16 5 26007
|
||||
select * from t4 where a = 7 order by c;
|
||||
a b c d
|
||||
7 16 5 26007
|
||||
select * from t4 where a = 7 and b = 16 order by b;
|
||||
a b c d
|
||||
7 16 5 26007
|
||||
select * from t4 where a = 7 and b = 16 order by a;
|
||||
a b c d
|
||||
7 16 5 26007
|
||||
select * from t4 where a = 7 and b = 17 order by a;
|
||||
a b c d
|
||||
select * from t4 where a = 7 and b != 16 order by b;
|
||||
a b c d
|
||||
delete from t2;
|
||||
delete from t3;
|
||||
delete from t4;
|
||||
drop table t2;
|
||||
drop table t3;
|
||||
drop table t4;
|
||||
CREATE TABLE t5 (
|
||||
a bigint unsigned NOT NULL,
|
||||
b bigint unsigned not null,
|
||||
c bigint unsigned NOT NULL,
|
||||
d int unsigned,
|
||||
PRIMARY KEY(a, b, c)
|
||||
) engine=ndbcluster;
|
||||
insert into t5 values(10, 19, 5, 26010);
|
||||
delete from t5 where a=10 and b=19 and c=5;
|
||||
select * from t5;
|
||||
a b c d
|
||||
insert into t5 values(10, 19, 5, 26010);
|
||||
update t5 set d=21997 where a=10 and b=19 and c=5;
|
||||
select * from t5;
|
||||
a b c d
|
||||
10 19 5 21997
|
||||
delete from t5;
|
||||
drop table t5;
|
||||
CREATE TABLE t6 (
|
||||
adress char(255),
|
||||
a int NOT NULL PRIMARY KEY,
|
||||
b int
|
||||
) engine = NDB;
|
||||
insert into t6 values
|
||||
("Nice road 3456", 1, 23),
|
||||
("Street Road 78", 3, 92),
|
||||
("Road street 89C", 5, 71),
|
||||
(NULL, 7, NULL);
|
||||
select * from t6 order by a;
|
||||
adress a b
|
||||
Nice road 3456 1 23
|
||||
Street Road 78 3 92
|
||||
Road street 89C 5 71
|
||||
NULL 7 NULL
|
||||
select a, b from t6 order by a;
|
||||
a b
|
||||
1 23
|
||||
3 92
|
||||
5 71
|
||||
7 NULL
|
||||
update t6 set adress="End of road 09" where a=3;
|
||||
update t6 set b=181, adress="Street 76" where a=7;
|
||||
select * from t6 order by a;
|
||||
adress a b
|
||||
Nice road 3456 1 23
|
||||
End of road 09 3 92
|
||||
Road street 89C 5 71
|
||||
Street 76 7 181
|
||||
select * from t6 where a=1;
|
||||
adress a b
|
||||
Nice road 3456 1 23
|
||||
delete from t6 where a=1;
|
||||
select * from t6 order by a;
|
||||
adress a b
|
||||
End of road 09 3 92
|
||||
Road street 89C 5 71
|
||||
Street 76 7 181
|
||||
delete from t6 where b=71;
|
||||
select * from t6 order by a;
|
||||
adress a b
|
||||
End of road 09 3 92
|
||||
Street 76 7 181
|
||||
drop table t6;
|
||||
CREATE TABLE t7 (
|
||||
adress char(255),
|
||||
a int NOT NULL,
|
||||
b int,
|
||||
c int NOT NULL,
|
||||
PRIMARY KEY(a, c)
|
||||
) engine = NDB;
|
||||
insert into t7 values
|
||||
("Highway 3456", 1, 23, 2),
|
||||
("Street Road 78", 3, 92, 3),
|
||||
("Main street 89C", 5, 71, 4),
|
||||
(NULL, 8, NULL, 12);
|
||||
select * from t7 order by a;
|
||||
adress a b c
|
||||
Highway 3456 1 23 2
|
||||
Street Road 78 3 92 3
|
||||
Main street 89C 5 71 4
|
||||
NULL 8 NULL 12
|
||||
select a, b from t7 order by a;
|
||||
a b
|
||||
1 23
|
||||
3 92
|
||||
5 71
|
||||
8 NULL
|
||||
update t7 set adress="End of road 09" where a=3;
|
||||
update t7 set adress="Gatuvägen 90C" where a=5 and c=4;
|
||||
update t7 set adress="No adress" where adress is NULL;
|
||||
select * from t7 order by a;
|
||||
adress a b c
|
||||
Highway 3456 1 23 2
|
||||
End of road 09 3 92 3
|
||||
Gatuvägen 90C 5 71 4
|
||||
No adress 8 NULL 12
|
||||
select * from t7 where a=1 and c=2;
|
||||
adress a b c
|
||||
Highway 3456 1 23 2
|
||||
delete from t7 where a=1;
|
||||
delete from t7 where a=3 and c=3;
|
||||
delete from t7 where a=5 and c=4;
|
||||
select * from t7;
|
||||
adress a b c
|
||||
No adress 8 NULL 12
|
||||
delete from t7 where b=23;
|
||||
select * from t7;
|
||||
adress a b c
|
||||
No adress 8 NULL 12
|
||||
drop table t7;
|
||||
|
154
mysql-test/r/ndb_index.result
Normal file
154
mysql-test/r/ndb_index.result
Normal file
@ -0,0 +1,154 @@
|
||||
drop table if exists t1;
|
||||
CREATE TABLE t1 (
|
||||
PORT varchar(16) NOT NULL,
|
||||
ACCESSNODE varchar(16) NOT NULL,
|
||||
POP varchar(48) NOT NULL,
|
||||
ACCESSTYPE int unsigned NOT NULL,
|
||||
CUSTOMER_ID varchar(20) NOT NULL,
|
||||
PROVIDER varchar(16),
|
||||
TEXPIRE int unsigned,
|
||||
NUM_IP int unsigned,
|
||||
LEASED_NUM_IP int unsigned,
|
||||
LOCKED_IP int unsigned,
|
||||
STATIC_DNS int unsigned,
|
||||
SUSPENDED_SERVICE int unsigned,
|
||||
SUSPENDED_REASON int unsigned,
|
||||
BGP_COMMUNITY int unsigned,
|
||||
INDEX CUSTOMER_ID_INDEX(CUSTOMER_ID),
|
||||
INDEX FQPN_INDEX(POP,ACCESSNODE,PORT),
|
||||
PRIMARY KEY(POP,ACCESSNODE,PORT,ACCESSTYPE)
|
||||
) engine=ndbcluster;
|
||||
INSERT INTO t1 VALUES ('port67', 'node78', 'pop98', 1, 'kllopmn', 'pr_43', 121212, 1, 2, 3, 8, NULL, NULL, NULL);
|
||||
INSERT INTO t1 VALUES ('port67', 'node78', 'pop99', 2, 'klkighh', 'pr_44', 121213, 3, 3, 6, 7, NULL, NULL, NULL);
|
||||
INSERT INTO t1 VALUES ('port79', 'node79', 'pop79', 2, 'kpongfaa', 'pr_44', 981213, 2, 4, 10, 11, 2, 99, 1278);
|
||||
select port, accessnode, pop, accesstype from t1 where port='port67' order by accesstype;
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
port67 node78 pop99 2
|
||||
select port, accessnode, pop, accesstype from t1 where port='foo';
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where accessnode='node78' order by accesstype;
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
port67 node78 pop99 2
|
||||
select port, accessnode, pop, accesstype from t1 where accessnode='foo';
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where pop='pop98';
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where pop='pop98';
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where pop='pop98';
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where pop='pop98' order by accesstype;
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where pop='foo';
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where accesstype=1;
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where accesstype=2 order by port;
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop99 2
|
||||
port79 node79 pop79 2
|
||||
select port, accessnode, pop, accesstype from t1 where accesstype=98 order by port;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where customer_id='kllopmn';
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where customer_id='KLLOPMN';
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where customer_id='kLLoPMn';
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where customer_id='foo';
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where provider='pr_43';
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where provider='foo';
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode from t1 where texpire=121212;
|
||||
port accessnode
|
||||
port67 node78
|
||||
select port, accessnode from t1 where texpire=2323;
|
||||
port accessnode
|
||||
select port, accessnode, pop, accesstype from t1 where num_ip=1;
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where num_ip=89;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where leased_num_ip=2;
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where leased_num_ip=89;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where locked_ip=3;
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where locked_ip=89;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where static_dns=8;
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where static_dns=89;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where suspended_service=8;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where suspended_service=89;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where suspended_reason=NULL;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where suspended_reason=89;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where suspended_reason=0;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where bgp_community=NULL;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where bgp_community=89;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where bgp_community=0;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where port='port67' and accessnode='node78' and pop='pop98' and accesstype=1;
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where port='port67' and accesstype=1 and accessnode='node78' and pop='pop98';
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where pop='pop98' and port='port67' and accesstype=1 and accessnode='node78';
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode from t1 where port='foo' and accessnode='foo' and pop='foo' and accesstype=99;
|
||||
port accessnode
|
||||
select port, accessnode, pop, accesstype from t1 where port='port67' and pop='pop98' and accesstype=1;
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where accesstype=1 and accessnode='node78' and pop='pop98';
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where port='port67' and accesstype=1 and accessnode='node78';
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode from t1 where port='foo' and accessnode='foo' and pop='foo';
|
||||
port accessnode
|
||||
select port, accessnode, pop, accesstype from t1 where customer_id='kllopmn';
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where customer_id='kllopmn' and accesstype=1;
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where customer_id='kllopmn' and accesstype=2;
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where accesstype=2 and customer_id='kllopmn';
|
||||
port accessnode pop accesstype
|
||||
select port, accessnode, pop, accesstype from t1 where pop='pop98' and accessnode='node78' and port='port67';
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where pop='pop98' and accessnode='node78' and port='port67' and customer_id='kllopmn';
|
||||
port accessnode pop accesstype
|
||||
port67 node78 pop98 1
|
||||
select port, accessnode, pop, accesstype from t1 where pop='pop98' and accessnode='node78' and port='port67' and customer_id='foo';
|
||||
port accessnode pop accesstype
|
||||
drop table t1;
|
190
mysql-test/r/ndb_index_ordered.result
Normal file
190
mysql-test/r/ndb_index_ordered.result
Normal file
@ -0,0 +1,190 @@
|
||||
drop table if exists t1;
|
||||
CREATE TABLE t1 (
|
||||
a int unsigned NOT NULL PRIMARY KEY,
|
||||
b int unsigned not null,
|
||||
c int unsigned,
|
||||
KEY(b)
|
||||
) engine=ndbcluster;
|
||||
insert t1 values(1, 2, 3), (2,3, 5), (3, 4, 6), (4, 5, 8), (5,6, 2), (6,7, 2);
|
||||
select * from t1 order by b;
|
||||
a b c
|
||||
1 2 3
|
||||
2 3 5
|
||||
3 4 6
|
||||
4 5 8
|
||||
5 6 2
|
||||
6 7 2
|
||||
select * from t1 where b >= 4 order by b;
|
||||
a b c
|
||||
3 4 6
|
||||
4 5 8
|
||||
5 6 2
|
||||
6 7 2
|
||||
select * from t1 where b = 4 order by b;
|
||||
a b c
|
||||
3 4 6
|
||||
select * from t1 where b > 4 order by b;
|
||||
a b c
|
||||
4 5 8
|
||||
5 6 2
|
||||
6 7 2
|
||||
select * from t1 where b < 4 order by b;
|
||||
a b c
|
||||
1 2 3
|
||||
2 3 5
|
||||
select * from t1 where b <= 4 order by b;
|
||||
a b c
|
||||
1 2 3
|
||||
2 3 5
|
||||
3 4 6
|
||||
update t1 set c = 3 where b = 3;
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
1 2 3
|
||||
2 3 3
|
||||
3 4 6
|
||||
4 5 8
|
||||
5 6 2
|
||||
6 7 2
|
||||
update t1 set c = 10 where b >= 6;
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
1 2 3
|
||||
2 3 3
|
||||
3 4 6
|
||||
4 5 8
|
||||
5 6 10
|
||||
6 7 10
|
||||
update t1 set c = 11 where b < 5;
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
1 2 11
|
||||
2 3 11
|
||||
3 4 11
|
||||
4 5 8
|
||||
5 6 10
|
||||
6 7 10
|
||||
update t1 set c = 12 where b > 0;
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
1 2 12
|
||||
2 3 12
|
||||
3 4 12
|
||||
4 5 12
|
||||
5 6 12
|
||||
6 7 12
|
||||
update t1 set c = 13 where b <= 3;
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
1 2 13
|
||||
2 3 13
|
||||
3 4 12
|
||||
4 5 12
|
||||
5 6 12
|
||||
6 7 12
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (
|
||||
a int unsigned NOT NULL PRIMARY KEY,
|
||||
b int unsigned not null,
|
||||
c int unsigned,
|
||||
KEY(b)
|
||||
) engine=ndbcluster;
|
||||
insert t1 values(1, 2, 13), (2,3, 13), (3, 4, 12), (4, 5, 12), (5,6, 12), (6,7, 12);
|
||||
delete from t1 where b = 3;
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
1 2 13
|
||||
3 4 12
|
||||
4 5 12
|
||||
5 6 12
|
||||
6 7 12
|
||||
delete from t1 where b >= 6;
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
1 2 13
|
||||
3 4 12
|
||||
4 5 12
|
||||
delete from t1 where b < 4;
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
3 4 12
|
||||
4 5 12
|
||||
delete from t1 where b > 5;
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
3 4 12
|
||||
4 5 12
|
||||
delete from t1 where b <= 4;
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
4 5 12
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (
|
||||
a int unsigned NOT NULL PRIMARY KEY,
|
||||
b int unsigned not null,
|
||||
c int unsigned not null
|
||||
) engine = ndb;
|
||||
create index a1 on t1 (b, c);
|
||||
insert into t1 values (1, 2, 13);
|
||||
insert into t1 values (2,3, 13);
|
||||
insert into t1 values (3, 4, 12);
|
||||
insert into t1 values (4, 5, 12);
|
||||
insert into t1 values (5,6, 12);
|
||||
insert into t1 values (6,7, 12);
|
||||
insert into t1 values (7, 2, 1);
|
||||
insert into t1 values (8,3, 6);
|
||||
insert into t1 values (9, 4, 12);
|
||||
insert into t1 values (14, 5, 4);
|
||||
insert into t1 values (15,5,5);
|
||||
insert into t1 values (16,5, 6);
|
||||
insert into t1 values (17,4,4);
|
||||
insert into t1 values (18,1, 7);
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
1 2 13
|
||||
2 3 13
|
||||
3 4 12
|
||||
4 5 12
|
||||
5 6 12
|
||||
6 7 12
|
||||
7 2 1
|
||||
8 3 6
|
||||
9 4 12
|
||||
14 5 4
|
||||
15 5 5
|
||||
16 5 6
|
||||
17 4 4
|
||||
18 1 7
|
||||
select * from t1 where b<=5 order by a;
|
||||
a b c
|
||||
1 2 13
|
||||
2 3 13
|
||||
3 4 12
|
||||
4 5 12
|
||||
7 2 1
|
||||
8 3 6
|
||||
9 4 12
|
||||
14 5 4
|
||||
15 5 5
|
||||
16 5 6
|
||||
17 4 4
|
||||
18 1 7
|
||||
select * from t1 where b<=5 and c=0;
|
||||
a b c
|
||||
insert into t1 values (19,4, 0);
|
||||
select * from t1 where b<=5 and c=0;
|
||||
a b c
|
||||
19 4 0
|
||||
select * from t1 where b=4 and c<=5 order by a;
|
||||
a b c
|
||||
17 4 4
|
||||
19 4 0
|
||||
select * from t1 where b<=4 and c<=5 order by a;
|
||||
a b c
|
||||
7 2 1
|
||||
17 4 4
|
||||
19 4 0
|
||||
select * from t1 where b<=5 and c=0 or b<=5 and c=2;
|
||||
a b c
|
||||
19 4 0
|
||||
drop table t1;
|
413
mysql-test/r/ndb_index_unique.result
Normal file
413
mysql-test/r/ndb_index_unique.result
Normal file
@ -0,0 +1,413 @@
|
||||
drop table if exists t1, t2, t3, t4, t5, t6, t7;
|
||||
CREATE TABLE t1 (
|
||||
a int unsigned NOT NULL PRIMARY KEY,
|
||||
b int unsigned not null,
|
||||
c int unsigned,
|
||||
UNIQUE(b)
|
||||
) engine=ndbcluster;
|
||||
insert t1 values(1, 2, 3), (2, 3, 5), (3, 4, 6), (4, 5, 8), (5,6, 2), (6,7, 2);
|
||||
select * from t1 order by b;
|
||||
a b c
|
||||
1 2 3
|
||||
2 3 5
|
||||
3 4 6
|
||||
4 5 8
|
||||
5 6 2
|
||||
6 7 2
|
||||
select * from t1 where b = 4 order by b;
|
||||
a b c
|
||||
3 4 6
|
||||
insert into t1 values(7,8,3);
|
||||
select * from t1 where b = 4 order by a;
|
||||
a b c
|
||||
3 4 6
|
||||
drop table t1;
|
||||
CREATE TABLE t2 (
|
||||
a int unsigned NOT NULL PRIMARY KEY,
|
||||
b int unsigned not null,
|
||||
c int unsigned not null,
|
||||
UNIQUE USING HASH (b, c)
|
||||
) engine=ndbcluster;
|
||||
insert t2 values(1, 2, 3), (2, 3, 5), (3, 4, 6), (4, 5, 8), (5,6, 2), (6,7, 2);
|
||||
select * from t2 where a = 3;
|
||||
a b c
|
||||
3 4 6
|
||||
select * from t2 where b = 4;
|
||||
a b c
|
||||
3 4 6
|
||||
select * from t2 where c = 6;
|
||||
a b c
|
||||
3 4 6
|
||||
insert into t2 values(7,8,3);
|
||||
select * from t2 where b = 4 order by a;
|
||||
a b c
|
||||
3 4 6
|
||||
drop table t2;
|
||||
CREATE TABLE t3 (
|
||||
a int unsigned NOT NULL,
|
||||
b int unsigned not null,
|
||||
c int unsigned,
|
||||
PRIMARY KEY USING HASH (a, b)
|
||||
) engine=ndbcluster;
|
||||
insert t3 values(1, 2, 3), (2, 3, 5), (3, 4, 6), (4, 5, 8), (5,6, 2), (6,7, 2);
|
||||
select * from t3 where a = 3;
|
||||
a b c
|
||||
3 4 6
|
||||
select * from t3 where b = 4;
|
||||
a b c
|
||||
3 4 6
|
||||
select * from t3 where c = 6;
|
||||
a b c
|
||||
3 4 6
|
||||
insert into t3 values(7,8,3);
|
||||
select * from t3 where b = 4 order by a;
|
||||
a b c
|
||||
3 4 6
|
||||
drop table t3;
|
||||
CREATE TABLE t1 (
|
||||
cid smallint(5) unsigned NOT NULL default '0',
|
||||
cv varchar(250) NOT NULL default '',
|
||||
PRIMARY KEY (cid),
|
||||
UNIQUE KEY cv (cv)
|
||||
) engine=ndbcluster;
|
||||
INSERT INTO t1 VALUES (8,'dummy');
|
||||
CREATE TABLE t2 (
|
||||
cid bigint(20) unsigned NOT NULL auto_increment,
|
||||
cap varchar(255) NOT NULL default '',
|
||||
PRIMARY KEY (cid)
|
||||
) engine=ndbcluster;
|
||||
CREATE TABLE t3 (
|
||||
gid bigint(20) unsigned NOT NULL auto_increment,
|
||||
gn varchar(255) NOT NULL default '',
|
||||
must tinyint(4) default NULL,
|
||||
PRIMARY KEY (gid)
|
||||
) engine=ndbcluster;
|
||||
INSERT INTO t3 VALUES (1,'V1',NULL);
|
||||
CREATE TABLE t4 (
|
||||
uid bigint(20) unsigned NOT NULL default '0',
|
||||
gid bigint(20) unsigned NOT NULL,
|
||||
rid bigint(20) unsigned NOT NULL default '-1',
|
||||
cid bigint(20) unsigned NOT NULL default '-1',
|
||||
UNIQUE KEY m (uid,gid,rid,cid)
|
||||
) engine=ndbcluster;
|
||||
INSERT INTO t4 VALUES (1,1,2,4);
|
||||
INSERT INTO t4 VALUES (1,1,2,3);
|
||||
INSERT INTO t4 VALUES (1,1,5,7);
|
||||
INSERT INTO t4 VALUES (1,1,10,8);
|
||||
CREATE TABLE t5 (
|
||||
rid bigint(20) unsigned NOT NULL auto_increment,
|
||||
rl varchar(255) NOT NULL default '',
|
||||
PRIMARY KEY (rid)
|
||||
) engine=ndbcluster;
|
||||
CREATE TABLE t6 (
|
||||
uid bigint(20) unsigned NOT NULL auto_increment,
|
||||
un varchar(250) NOT NULL default '',
|
||||
uc smallint(5) unsigned NOT NULL default '0',
|
||||
PRIMARY KEY (uid),
|
||||
UNIQUE KEY nc (un,uc)
|
||||
) engine=ndbcluster;
|
||||
INSERT INTO t6 VALUES (1,'test',8);
|
||||
INSERT INTO t6 VALUES (2,'test2',9);
|
||||
INSERT INTO t6 VALUES (3,'tre',3);
|
||||
CREATE TABLE t7 (
|
||||
mid bigint(20) unsigned NOT NULL PRIMARY KEY,
|
||||
uid bigint(20) unsigned NOT NULL default '0',
|
||||
gid bigint(20) unsigned NOT NULL,
|
||||
rid bigint(20) unsigned NOT NULL default '-1',
|
||||
cid bigint(20) unsigned NOT NULL default '-1',
|
||||
UNIQUE KEY m (uid,gid,rid,cid)
|
||||
) engine=ndbcluster;
|
||||
INSERT INTO t7 VALUES(1, 1, 1, 1, 1);
|
||||
INSERT INTO t7 VALUES(2, 2, 1, 1, 1);
|
||||
INSERT INTO t7 VALUES(3, 3, 1, 1, 1);
|
||||
INSERT INTO t7 VALUES(4, 4, 1, 1, 1);
|
||||
INSERT INTO t7 VALUES(5, 5, 1, 1, 1);
|
||||
INSERT INTO t7 VALUES(6, 1, 1, 1, 6);
|
||||
INSERT INTO t7 VALUES(7, 2, 1, 1, 7);
|
||||
INSERT INTO t7 VALUES(8, 3, 1, 1, 8);
|
||||
INSERT INTO t7 VALUES(9, 4, 1, 1, 9);
|
||||
INSERT INTO t7 VALUES(10, 5, 1, 1, 10);
|
||||
select * from t1 where cv = 'dummy';
|
||||
cid cv
|
||||
8 dummy
|
||||
select * from t1 where cv = 'test';
|
||||
cid cv
|
||||
select * from t4 where uid = 1 and gid=1 and rid=2 and cid=4;
|
||||
uid gid rid cid
|
||||
1 1 2 4
|
||||
select * from t4 where uid = 1 and gid=1 and rid=1 and cid=4;
|
||||
uid gid rid cid
|
||||
select * from t4 where uid = 1 order by cid;
|
||||
uid gid rid cid
|
||||
1 1 2 3
|
||||
1 1 2 4
|
||||
1 1 5 7
|
||||
1 1 10 8
|
||||
select * from t4 where rid = 2 order by cid;
|
||||
uid gid rid cid
|
||||
1 1 2 3
|
||||
1 1 2 4
|
||||
select * from t6 where un='test' and uc=8;
|
||||
uid un uc
|
||||
1 test 8
|
||||
select * from t6 where un='test' and uc=7;
|
||||
uid un uc
|
||||
select * from t6 where un='test';
|
||||
uid un uc
|
||||
1 test 8
|
||||
select * from t7 where mid = 8;
|
||||
mid uid gid rid cid
|
||||
8 3 1 1 8
|
||||
select * from t7 where uid = 8;
|
||||
mid uid gid rid cid
|
||||
select * from t7 where uid = 1 order by mid;
|
||||
mid uid gid rid cid
|
||||
1 1 1 1 1
|
||||
6 1 1 1 6
|
||||
select * from t7 where uid = 4 order by mid;
|
||||
mid uid gid rid cid
|
||||
4 4 1 1 1
|
||||
9 4 1 1 9
|
||||
select * from t7 where gid = 4;
|
||||
mid uid gid rid cid
|
||||
select * from t7 where gid = 1 order by mid;
|
||||
mid uid gid rid cid
|
||||
1 1 1 1 1
|
||||
2 2 1 1 1
|
||||
3 3 1 1 1
|
||||
4 4 1 1 1
|
||||
5 5 1 1 1
|
||||
6 1 1 1 6
|
||||
7 2 1 1 7
|
||||
8 3 1 1 8
|
||||
9 4 1 1 9
|
||||
10 5 1 1 10
|
||||
select * from t7 where cid = 4;
|
||||
mid uid gid rid cid
|
||||
select * from t7 where cid = 8;
|
||||
mid uid gid rid cid
|
||||
8 3 1 1 8
|
||||
select * from t4 where uid = 1 and gid=1 and rid=2 and cid=4;
|
||||
uid gid rid cid
|
||||
1 1 2 4
|
||||
select * from t4 where uid = 1 and gid=1 and rid=1 and cid=4;
|
||||
uid gid rid cid
|
||||
select * from t4 where uid = 1 order by gid,cid;
|
||||
uid gid rid cid
|
||||
1 1 2 3
|
||||
1 1 2 4
|
||||
1 1 5 7
|
||||
1 1 10 8
|
||||
1 1 5 12
|
||||
1 2 5 12
|
||||
1 3 9 11
|
||||
1 3 5 12
|
||||
1 4 5 12
|
||||
1 5 5 12
|
||||
1 6 5 12
|
||||
1 7 5 12
|
||||
1 8 5 12
|
||||
1 9 5 12
|
||||
1 10 5 12
|
||||
1 11 5 12
|
||||
1 12 5 12
|
||||
1 13 5 12
|
||||
1 14 5 12
|
||||
1 15 5 12
|
||||
1 16 5 12
|
||||
1 17 5 12
|
||||
1 18 5 12
|
||||
1 19 5 12
|
||||
1 20 5 12
|
||||
1 21 5 12
|
||||
1 22 5 12
|
||||
1 23 5 12
|
||||
1 24 5 12
|
||||
1 25 5 12
|
||||
1 26 5 12
|
||||
1 27 5 12
|
||||
1 28 5 12
|
||||
1 29 5 12
|
||||
1 30 5 12
|
||||
1 31 5 12
|
||||
1 32 5 12
|
||||
1 33 5 12
|
||||
1 34 5 12
|
||||
1 35 5 12
|
||||
1 36 5 12
|
||||
1 37 5 12
|
||||
1 38 5 12
|
||||
1 39 5 12
|
||||
1 40 5 12
|
||||
1 41 5 12
|
||||
1 42 5 12
|
||||
1 43 5 12
|
||||
1 44 5 12
|
||||
1 45 5 12
|
||||
1 46 5 12
|
||||
1 47 5 12
|
||||
1 48 5 12
|
||||
1 49 5 12
|
||||
1 50 5 12
|
||||
1 51 5 12
|
||||
1 52 5 12
|
||||
1 53 5 12
|
||||
1 54 5 12
|
||||
1 55 5 12
|
||||
1 56 5 12
|
||||
1 57 5 12
|
||||
1 58 5 12
|
||||
1 59 5 12
|
||||
1 60 5 12
|
||||
1 61 5 12
|
||||
1 62 5 12
|
||||
1 63 5 12
|
||||
1 64 5 12
|
||||
1 65 5 12
|
||||
1 66 5 12
|
||||
1 67 5 12
|
||||
1 68 5 12
|
||||
1 69 5 12
|
||||
1 70 5 12
|
||||
1 71 5 12
|
||||
1 72 5 12
|
||||
1 73 5 12
|
||||
1 74 5 12
|
||||
1 75 5 12
|
||||
1 76 5 12
|
||||
1 77 5 12
|
||||
1 78 5 12
|
||||
1 79 5 12
|
||||
1 80 5 12
|
||||
1 81 5 12
|
||||
1 82 5 12
|
||||
1 83 5 12
|
||||
1 84 5 12
|
||||
1 85 5 12
|
||||
1 86 5 12
|
||||
1 87 5 12
|
||||
1 88 5 12
|
||||
1 89 5 12
|
||||
1 90 5 12
|
||||
1 91 5 12
|
||||
1 92 5 12
|
||||
1 93 5 12
|
||||
1 94 5 12
|
||||
1 95 5 12
|
||||
1 96 5 12
|
||||
1 97 5 12
|
||||
1 98 5 12
|
||||
1 99 5 12
|
||||
1 100 5 12
|
||||
select * from t4 where uid = 1 order by gid,cid;
|
||||
uid gid rid cid
|
||||
1 1 2 3
|
||||
1 1 2 4
|
||||
1 1 5 7
|
||||
1 1 10 8
|
||||
1 1 5 12
|
||||
1 2 5 12
|
||||
1 3 9 11
|
||||
1 3 5 12
|
||||
1 4 5 12
|
||||
1 5 5 12
|
||||
1 6 5 12
|
||||
1 7 5 12
|
||||
1 8 5 12
|
||||
1 9 5 12
|
||||
1 10 5 12
|
||||
1 11 5 12
|
||||
1 12 5 12
|
||||
1 13 5 12
|
||||
1 14 5 12
|
||||
1 15 5 12
|
||||
1 16 5 12
|
||||
1 17 5 12
|
||||
1 18 5 12
|
||||
1 19 5 12
|
||||
1 20 5 12
|
||||
1 21 5 12
|
||||
1 22 5 12
|
||||
1 23 5 12
|
||||
1 24 5 12
|
||||
1 25 5 12
|
||||
1 26 5 12
|
||||
1 27 5 12
|
||||
1 28 5 12
|
||||
1 29 5 12
|
||||
1 30 5 12
|
||||
1 31 5 12
|
||||
1 32 5 12
|
||||
1 33 5 12
|
||||
1 34 5 12
|
||||
1 35 5 12
|
||||
1 36 5 12
|
||||
1 37 5 12
|
||||
1 38 5 12
|
||||
1 39 5 12
|
||||
1 40 5 12
|
||||
1 41 5 12
|
||||
1 42 5 12
|
||||
1 43 5 12
|
||||
1 44 5 12
|
||||
1 45 5 12
|
||||
1 46 5 12
|
||||
1 47 5 12
|
||||
1 48 5 12
|
||||
1 49 5 12
|
||||
1 50 5 12
|
||||
1 51 5 12
|
||||
1 52 5 12
|
||||
1 53 5 12
|
||||
1 54 5 12
|
||||
1 55 5 12
|
||||
1 56 5 12
|
||||
1 57 5 12
|
||||
1 58 5 12
|
||||
1 59 5 12
|
||||
1 60 5 12
|
||||
1 61 5 12
|
||||
1 62 5 12
|
||||
1 63 5 12
|
||||
1 64 5 12
|
||||
1 65 5 12
|
||||
1 66 5 12
|
||||
1 67 5 12
|
||||
1 68 5 12
|
||||
1 69 5 12
|
||||
1 70 5 12
|
||||
1 71 5 12
|
||||
1 72 5 12
|
||||
1 73 5 12
|
||||
1 74 5 12
|
||||
1 75 5 12
|
||||
1 76 5 12
|
||||
1 77 5 12
|
||||
1 78 5 12
|
||||
1 79 5 12
|
||||
1 80 5 12
|
||||
1 81 5 12
|
||||
1 82 5 12
|
||||
1 83 5 12
|
||||
1 84 5 12
|
||||
1 85 5 12
|
||||
1 86 5 12
|
||||
1 87 5 12
|
||||
1 88 5 12
|
||||
1 89 5 12
|
||||
1 90 5 12
|
||||
1 91 5 12
|
||||
1 92 5 12
|
||||
1 93 5 12
|
||||
1 94 5 12
|
||||
1 95 5 12
|
||||
1 96 5 12
|
||||
1 97 5 12
|
||||
1 98 5 12
|
||||
1 99 5 12
|
||||
1 100 5 12
|
||||
select * from t4 where rid = 2 order by cid;
|
||||
uid gid rid cid
|
||||
1 1 2 3
|
||||
1 1 2 4
|
||||
drop table t1,t2,t3,t4,t5,t6,t7;
|
419
mysql-test/r/ndb_insert.result
Normal file
419
mysql-test/r/ndb_insert.result
Normal file
@ -0,0 +1,419 @@
|
||||
DROP TABLE IF EXISTS t1;
|
||||
CREATE TABLE t1 (
|
||||
pk1 INT NOT NULL PRIMARY KEY,
|
||||
b INT NOT NULL,
|
||||
c INT NOT NULL
|
||||
) ENGINE=ndbcluster;
|
||||
INSERT INTO t1 VALUES (0, 0, 0);
|
||||
SELECT * FROM t1;
|
||||
pk1 b c
|
||||
0 0 0
|
||||
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),
|
||||
(11,11,11),(12,12,12),(13,13,13),(14,14,14),(15,15,15),
|
||||
(16,16,16),(17,17,17),(18,18,18),(19,19,19),(20,20,20),
|
||||
(21,21,21),(22,22,22),(23,23,23),(24,24,24),(25,25,25),
|
||||
(26,26,26),(27,27,27),(28,28,28),(29,29,29),(30,30,30),
|
||||
(31,31,31),(32,32,32),(33,33,33),(34,34,34),(35,35,35),
|
||||
(36,36,36),(37,37,37),(38,38,38),(39,39,39),(40,40,40),
|
||||
(41,41,41),(42,42,42),(43,43,43),(44,44,44),(45,45,45),
|
||||
(46,46,46),(47,47,47),(48,48,48),(49,49,49),(50,50,50),
|
||||
(51,51,51),(52,52,52),(53,53,53),(54,54,54),(55,55,55),
|
||||
(56,56,56),(57,57,57),(58,58,58),(59,59,59),(60,60,60),
|
||||
(61,61,61),(62,62,62),(63,63,63),(64,64,64),(65,65,65),
|
||||
(66,66,66),(67,67,67),(68,68,68),(69,69,69),(70,70,70),
|
||||
(71,71,71),(72,72,72),(73,73,73),(74,74,74),(75,75,75),
|
||||
(76,76,76),(77,77,77),(78,78,78),(79,79,79),(80,80,80),
|
||||
(81,81,81),(82,82,82),(83,83,83),(84,84,84),(85,85,85),
|
||||
(86,86,86),(87,87,87),(88,88,88),(89,89,89),(90,90,90),
|
||||
(91,91,91),(92,92,92),(93,93,93),(94,94,94),(95,95,95),
|
||||
(96,96,96),(97,97,97),(98,98,98),(99,99,99),(100,100,100),
|
||||
(101,101,101),(102,102,102),(103,103,103),(104,104,104),(105,105,105),
|
||||
(106,106,106),(107,107,107),(108,108,108),(109,109,109),(110,110,110),
|
||||
(111,111,111),(112,112,112),(113,113,113),(114,114,114),(115,115,115),
|
||||
(116,116,116),(117,117,117),(118,118,118),(119,119,119),(120,120,120),
|
||||
(121,121,121),(122,122,122),(123,123,123),(124,124,124),(125,125,125),
|
||||
(126,126,126),(127,127,127),(128,128,128),(129,129,129),(130,130,130),
|
||||
(131,131,131),(132,132,132),(133,133,133),(134,134,134),(135,135,135),
|
||||
(136,136,136),(137,137,137),(138,138,138),(139,139,139),(140,140,140),
|
||||
(141,141,141),(142,142,142),(143,143,143),(144,144,144),(145,145,145),
|
||||
(146,146,146),(147,147,147),(148,148,148),(149,149,149),(150,150,150),
|
||||
(151,151,151),(152,152,152),(153,153,153),(154,154,154),(155,155,155),
|
||||
(156,156,156),(157,157,157),(158,158,158),(159,159,159),(160,160,160),
|
||||
(161,161,161),(162,162,162),(163,163,163),(164,164,164),(165,165,165),
|
||||
(166,166,166),(167,167,167),(168,168,168),(169,169,169),(170,170,170),
|
||||
(171,171,171),(172,172,172),(173,173,173),(174,174,174),(175,175,175),
|
||||
(176,176,176),(177,177,177),(178,178,178),(179,179,179),(180,180,180),
|
||||
(181,181,181),(182,182,182),(183,183,183),(184,184,184),(185,185,185),
|
||||
(186,186,186),(187,187,187),(188,188,188),(189,189,189),(190,190,190),
|
||||
(191,191,191),(192,192,192),(193,193,193),(194,194,194),(195,195,195),
|
||||
(196,196,196),(197,197,197),(198,198,198),(199,199,199),(200,200,200),
|
||||
(201,201,201),(202,202,202),(203,203,203),(204,204,204),(205,205,205),
|
||||
(206,206,206),(207,207,207),(208,208,208),(209,209,209),(210,210,210),
|
||||
(211,211,211),(212,212,212),(213,213,213),(214,214,214),(215,215,215),
|
||||
(216,216,216),(217,217,217),(218,218,218),(219,219,219),(220,220,220),
|
||||
(221,221,221),(222,222,222),(223,223,223),(224,224,224),(225,225,225),
|
||||
(226,226,226),(227,227,227),(228,228,228),(229,229,229),(230,230,230),
|
||||
(231,231,231),(232,232,232),(233,233,233),(234,234,234),(235,235,235),
|
||||
(236,236,236),(237,237,237),(238,238,238),(239,239,239),(240,240,240),
|
||||
(241,241,241),(242,242,242),(243,243,243),(244,244,244),(245,245,245),
|
||||
(246,246,246),(247,247,247),(248,248,248),(249,249,249),(250,250,250),
|
||||
(251,251,251),(252,252,252),(253,253,253),(254,254,254),(255,255,255),
|
||||
(256,256,256),(257,257,257),(258,258,258),(259,259,259),(260,260,260),
|
||||
(261,261,261),(262,262,262),(263,263,263),(264,264,264),(265,265,265),
|
||||
(266,266,266),(267,267,267),(268,268,268),(269,269,269),(270,270,270),
|
||||
(271,271,271),(272,272,272),(273,273,273),(274,274,274),(275,275,275),
|
||||
(276,276,276),(277,277,277),(278,278,278),(279,279,279),(280,280,280),
|
||||
(281,281,281),(282,282,282),(283,283,283),(284,284,284),(285,285,285),
|
||||
(286,286,286),(287,287,287),(288,288,288),(289,289,289),(290,290,290),
|
||||
(291,291,291),(292,292,292),(293,293,293),(294,294,294),(295,295,295),
|
||||
(296,296,296),(297,297,297),(298,298,298),(299,299,299),(300,300,300),
|
||||
(301,301,301),(302,302,302),(303,303,303),(304,304,304),(305,305,305),
|
||||
(306,306,306),(307,307,307),(308,308,308),(309,309,309),(310,310,310),
|
||||
(311,311,311),(312,312,312),(313,313,313),(314,314,314),(315,315,315),
|
||||
(316,316,316),(317,317,317),(318,318,318),(319,319,319),(320,320,320),
|
||||
(321,321,321),(322,322,322),(323,323,323),(324,324,324),(325,325,325),
|
||||
(326,326,326),(327,327,327),(328,328,328),(329,329,329),(330,330,330),
|
||||
(331,331,331),(332,332,332),(333,333,333),(334,334,334),(335,335,335),
|
||||
(336,336,336),(337,337,337),(338,338,338),(339,339,339),(340,340,340),
|
||||
(341,341,341),(342,342,342),(343,343,343),(344,344,344),(345,345,345),
|
||||
(346,346,346),(347,347,347),(348,348,348),(349,349,349),(350,350,350),
|
||||
(351,351,351),(352,352,352),(353,353,353),(354,354,354),(355,355,355),
|
||||
(356,356,356),(357,357,357),(358,358,358),(359,359,359),(360,360,360),
|
||||
(361,361,361),(362,362,362),(363,363,363),(364,364,364),(365,365,365),
|
||||
(366,366,366),(367,367,367),(368,368,368),(369,369,369),(370,370,370),
|
||||
(371,371,371),(372,372,372),(373,373,373),(374,374,374),(375,375,375),
|
||||
(376,376,376),(377,377,377),(378,378,378),(379,379,379),(380,380,380),
|
||||
(381,381,381),(382,382,382),(383,383,383),(384,384,384),(385,385,385),
|
||||
(386,386,386),(387,387,387),(388,388,388),(389,389,389),(390,390,390),
|
||||
(391,391,391),(392,392,392),(393,393,393),(394,394,394),(395,395,395),
|
||||
(396,396,396),(397,397,397),(398,398,398),(399,399,399),(400,400,400),
|
||||
(401,401,401),(402,402,402),(403,403,403),(404,404,404),(405,405,405),
|
||||
(406,406,406),(407,407,407),(408,408,408),(409,409,409),(410,410,410),
|
||||
(411,411,411),(412,412,412),(413,413,413),(414,414,414),(415,415,415),
|
||||
(416,416,416),(417,417,417),(418,418,418),(419,419,419),(420,420,420),
|
||||
(421,421,421),(422,422,422),(423,423,423),(424,424,424),(425,425,425),
|
||||
(426,426,426),(427,427,427),(428,428,428),(429,429,429),(430,430,430),
|
||||
(431,431,431),(432,432,432),(433,433,433),(434,434,434),(435,435,435),
|
||||
(436,436,436),(437,437,437),(438,438,438),(439,439,439),(440,440,440),
|
||||
(441,441,441),(442,442,442),(443,443,443),(444,444,444),(445,445,445),
|
||||
(446,446,446),(447,447,447),(448,448,448),(449,449,449),(450,450,450),
|
||||
(451,451,451),(452,452,452),(453,453,453),(454,454,454),(455,455,455),
|
||||
(456,456,456),(457,457,457),(458,458,458),(459,459,459),(460,460,460),
|
||||
(461,461,461),(462,462,462),(463,463,463),(464,464,464),(465,465,465),
|
||||
(466,466,466),(467,467,467),(468,468,468),(469,469,469),(470,470,470),
|
||||
(471,471,471),(472,472,472),(473,473,473),(474,474,474),(475,475,475),
|
||||
(476,476,476),(477,477,477),(478,478,478),(479,479,479),(480,480,480),
|
||||
(481,481,481),(482,482,482),(483,483,483),(484,484,484),(485,485,485),
|
||||
(486,486,486),(487,487,487),(488,488,488),(489,489,489),(490,490,490),
|
||||
(491,491,491),(492,492,492),(493,493,493),(494,494,494),(495,495,495),
|
||||
(496,496,496),(497,497,497),(498,498,498),(499,499,499),(500, 500, 500);
|
||||
SELECT COUNT(*) FROM t1;
|
||||
COUNT(*)
|
||||
501
|
||||
INSERT INTO t1 VALUES
|
||||
(501,501,501),(502,502,502),(503,503,503),(504,504,504),(505,505,505),
|
||||
(506,506,506),(507,507,507),(508,508,508),(509,509,509),(510,510,510),
|
||||
(511,511,511),(512,512,512),(513,513,513),(514,514,514),(515,515,515),
|
||||
(516,516,516),(517,517,517),(518,518,518),(519,519,519),(520,520,520),
|
||||
(521,521,521),(522,522,522),(523,523,523),(524,524,524),(525,525,525),
|
||||
(526,526,526),(527,527,527),(528,528,528),(529,529,529),(530,530,530),
|
||||
(531,531,531),(532,532,532),(533,533,533),(534,534,534),(535,535,535),
|
||||
(536,536,536),(537,537,537),(538,538,538),(539,539,539),(540,540,540),
|
||||
(541,541,541),(542,542,542),(543,543,543),(544,544,544),(545,545,545),
|
||||
(546,546,546),(547,547,547),(548,548,548),(549,549,549),(550,550,550),
|
||||
(551,551,551),(552,552,552),(553,553,553),(554,554,554),(555,555,555),
|
||||
(556,556,556),(557,557,557),(558,558,558),(559,559,559),(560,560,560),
|
||||
(561,561,561),(562,562,562),(563,563,563),(564,564,564),(565,565,565),
|
||||
(566,566,566),(567,567,567),(568,568,568),(569,569,569),(570,570,570),
|
||||
(571,571,571),(572,572,572),(573,573,573),(574,574,574),(575,575,575),
|
||||
(576,576,576),(577,577,577),(578,578,578),(579,579,579),(580,580,580),
|
||||
(581,581,581),(582,582,582),(583,583,583),(584,584,584),(585,585,585),
|
||||
(586,586,586),(587,587,587),(588,588,588),(589,589,589),(590,590,590),
|
||||
(591,591,591),(592,592,592),(593,593,593),(594,594,594),(595,595,595),
|
||||
(596,596,596),(597,597,597),(598,598,598),(599,599,599),(600,600,600),
|
||||
(601,601,601),(602,602,602),(603,603,603),(604,604,604),(605,605,605),
|
||||
(606,606,606),(607,607,607),(608,608,608),(609,609,609),(610,610,610),
|
||||
(611,611,611),(612,612,612),(613,613,613),(614,614,614),(615,615,615),
|
||||
(616,616,616),(617,617,617),(618,618,618),(619,619,619),(620,620,620),
|
||||
(621,621,621),(622,622,622),(623,623,623),(624,624,624),(625,625,625),
|
||||
(626,626,626),(627,627,627),(628,628,628),(629,629,629),(630,630,630),
|
||||
(631,631,631),(632,632,632),(633,633,633),(634,634,634),(635,635,635),
|
||||
(636,636,636),(637,637,637),(638,638,638),(639,639,639),(640,640,640),
|
||||
(641,641,641),(642,642,642),(643,643,643),(644,644,644),(645,645,645),
|
||||
(646,646,646),(647,647,647),(648,648,648),(649,649,649),(650,650,650),
|
||||
(651,651,651),(652,652,652),(653,653,653),(654,654,654),(655,655,655),
|
||||
(656,656,656),(657,657,657),(658,658,658),(659,659,659),(660,660,660),
|
||||
(661,661,661),(662,662,662),(663,663,663),(664,664,664),(665,665,665),
|
||||
(666,666,666),(667,667,667),(668,668,668),(669,669,669),(670,670,670),
|
||||
(671,671,671),(672,672,672),(673,673,673),(674,674,674),(675,675,675),
|
||||
(676,676,676),(677,677,677),(678,678,678),(679,679,679),(680,680,680),
|
||||
(681,681,681),(682,682,682),(683,683,683),(684,684,684),(685,685,685),
|
||||
(686,686,686),(687,687,687),(688,688,688),(689,689,689),(690,690,690),
|
||||
(691,691,691),(692,692,692),(693,693,693),(694,694,694),(695,695,695),
|
||||
(696,696,696),(697,697,697),(698,698,698),(699,699,699),(700,700,700),
|
||||
(701,701,701),(702,702,702),(703,703,703),(704,704,704),(705,705,705),
|
||||
(706,706,706),(707,707,707),(708,708,708),(709,709,709),(710,710,710),
|
||||
(711,711,711),(712,712,712),(713,713,713),(714,714,714),(715,715,715),
|
||||
(716,716,716),(717,717,717),(718,718,718),(719,719,719),(720,720,720),
|
||||
(721,721,721),(722,722,722),(723,723,723),(724,724,724),(725,725,725),
|
||||
(726,726,726),(727,727,727),(728,728,728),(729,729,729),(730,730,730),
|
||||
(731,731,731),(732,732,732),(733,733,733),(734,734,734),(735,735,735),
|
||||
(736,736,736),(737,737,737),(738,738,738),(739,739,739),(740,740,740),
|
||||
(741,741,741),(742,742,742),(743,743,743),(744,744,744),(745,745,745),
|
||||
(746,746,746),(747,747,747),(748,748,748),(749,749,749),(750,750,750),
|
||||
(751,751,751),(752,752,752),(753,753,753),(754,754,754),(755,755,755),
|
||||
(756,756,756),(757,757,757),(758,758,758),(759,759,759),(760,760,760),
|
||||
(761,761,761),(762,762,762),(763,763,763),(764,764,764),(765,765,765),
|
||||
(766,766,766),(767,767,767),(768,768,768),(769,769,769),(770,770,770),
|
||||
(771,771,771),(772,772,772),(773,773,773),(774,774,774),(775,775,775),
|
||||
(776,776,776),(777,777,777),(778,778,778),(779,779,779),(780,780,780),
|
||||
(781,781,781),(782,782,782),(783,783,783),(784,784,784),(785,785,785),
|
||||
(786,786,786),(787,787,787),(788,788,788),(789,789,789),(790,790,790),
|
||||
(791,791,791),(792,792,792),(793,793,793),(794,794,794),(795,795,795),
|
||||
(796,796,796),(797,797,797),(798,798,798),(799,799,799),(800,800,800),
|
||||
(801,801,801),(802,802,802),(803,803,803),(804,804,804),(805,805,805),
|
||||
(806,806,806),(807,807,807),(808,808,808),(809,809,809),(810,810,810),
|
||||
(811,811,811),(812,812,812),(813,813,813),(814,814,814),(815,815,815),
|
||||
(816,816,816),(817,817,817),(818,818,818),(819,819,819),(820,820,820),
|
||||
(821,821,821),(822,822,822),(823,823,823),(824,824,824),(825,825,825),
|
||||
(826,826,826),(827,827,827),(828,828,828),(829,829,829),(830,830,830),
|
||||
(831,831,831),(832,832,832),(833,833,833),(834,834,834),(835,835,835),
|
||||
(836,836,836),(837,837,837),(838,838,838),(839,839,839),(840,840,840),
|
||||
(841,841,841),(842,842,842),(843,843,843),(844,844,844),(845,845,845),
|
||||
(846,846,846),(847,847,847),(848,848,848),(849,849,849),(850,850,850),
|
||||
(851,851,851),(852,852,852),(853,853,853),(854,854,854),(855,855,855),
|
||||
(856,856,856),(857,857,857),(858,858,858),(859,859,859),(860,860,860),
|
||||
(861,861,861),(862,862,862),(863,863,863),(864,864,864),(865,865,865),
|
||||
(866,866,866),(867,867,867),(868,868,868),(869,869,869),(870,870,870),
|
||||
(871,871,871),(872,872,872),(873,873,873),(874,874,874),(875,875,875),
|
||||
(876,876,876),(877,877,877),(878,878,878),(879,879,879),(880,880,880),
|
||||
(881,881,881),(882,882,882),(883,883,883),(884,884,884),(885,885,885),
|
||||
(886,886,886),(887,887,887),(888,888,888),(889,889,889),(890,890,890),
|
||||
(891,891,891),(892,892,892),(893,893,893),(894,894,894),(895,895,895),
|
||||
(896,896,896),(897,897,897),(898,898,898),(899,899,899),(900,900,900),
|
||||
(901,901,901),(902,902,902),(903,903,903),(904,904,904),(905,905,905),
|
||||
(906,906,906),(907,907,907),(908,908,908),(909,909,909),(910,910,910),
|
||||
(911,911,911),(912,912,912),(913,913,913),(914,914,914),(915,915,915),
|
||||
(916,916,916),(917,917,917),(918,918,918),(919,919,919),(920,920,920),
|
||||
(921,921,921),(922,922,922),(923,923,923),(924,924,924),(925,925,925),
|
||||
(926,926,926),(927,927,927),(928,928,928),(929,929,929),(930,930,930),
|
||||
(931,931,931),(932,932,932),(933,933,933),(934,934,934),(935,935,935),
|
||||
(936,936,936),(937,937,937),(938,938,938),(939,939,939),(940,940,940),
|
||||
(941,941,941),(942,942,942),(943,943,943),(944,944,944),(945,945,945),
|
||||
(946,946,946),(947,947,947),(948,948,948),(949,949,949),(950,950,950),
|
||||
(951,951,951),(952,952,952),(953,953,953),(954,954,954),(955,955,955),
|
||||
(956,956,956),(957,957,957),(958,958,958),(959,959,959),(960,960,960),
|
||||
(961,961,961),(962,962,962),(963,963,963),(964,964,964),(965,965,965),
|
||||
(966,966,966),(967,967,967),(968,968,968),(969,969,969),(970,970,970),
|
||||
(971,971,971),(972,972,972),(973,973,973),(974,974,974),(975,975,975),
|
||||
(976,976,976),(977,977,977),(978,978,978),(979,979,979),(980,980,980),
|
||||
(981,981,981),(982,982,982),(983,983,983),(984,984,984),(985,985,985),
|
||||
(986,986,986),(987,987,987),(988,988,988),(989,989,989),(990,990,990),
|
||||
(991,991,991),(992,992,992),(993,993,993),(994,994,994),(995,995,995),
|
||||
(996,996,996),(997,997,997),(998,998,998),(999,999,999),(1000,1000,1000),
|
||||
(1001,1001,1001),(1002,1002,1002),(1003,1003,1003),(1004,1004,1004),(1005,1005,1005),
|
||||
(1006,1006,1006),(1007,1007,1007),(1008,1008,1008),(1009,1009,1009),(1010,1010,1010),
|
||||
(1011,1011,1011),(1012,1012,1012),(1013,1013,1013),(1014,1014,1014),(1015,1015,1015),
|
||||
(1016,1016,1016),(1017,1017,1017),(1018,1018,1018),(1019,1019,1019),(1020,1020,1020),
|
||||
(1021,1021,1021),(1022,1022,1022),(1023,1023,1023),(1024,1024,1024),(1025,1025,1025),
|
||||
(1026,1026,1026),(1027,1027,1027),(1028,1028,1028),(1029,1029,1029),(1030,1030,1030),
|
||||
(1031,1031,1031),(1032,1032,1032),(1033,1033,1033),(1034,1034,1034),(1035,1035,1035),
|
||||
(1036,1036,1036),(1037,1037,1037),(1038,1038,1038),(1039,1039,1039),(1040,1040,1040),
|
||||
(1041,1041,1041),(1042,1042,1042),(1043,1043,1043),(1044,1044,1044),(1045,1045,1045),
|
||||
(1046,1046,1046),(1047,1047,1047),(1048,1048,1048),(1049,1049,1049),(1050,1050,1050),
|
||||
(1051,1051,1051),(1052,1052,1052),(1053,1053,1053),(1054,1054,1054),(1055,1055,1055),
|
||||
(1056,1056,1056),(1057,1057,1057),(1058,1058,1058),(1059,1059,1059),(1060,1060,1060),
|
||||
(1061,1061,1061),(1062,1062,1062),(1063,1063,1063),(1064,1064,1064),(1065,1065,1065),
|
||||
(1066,1066,1066),(1067,1067,1067),(1068,1068,1068),(1069,1069,1069),(1070,1070,1070),
|
||||
(1071,1071,1071),(1072,1072,1072),(1073,1073,1073),(1074,1074,1074),(1075,1075,1075),
|
||||
(1076,1076,1076),(1077,1077,1077),(1078,1078,1078),(1079,1079,1079),(1080,1080,1080),
|
||||
(1081,1081,1081),(1082,1082,1082),(1083,1083,1083),(1084,1084,1084),(1085,1085,1085),
|
||||
(1086,1086,1086),(1087,1087,1087),(1088,1088,1088),(1089,1089,1089),(1090,1090,1090),
|
||||
(1091,1091,1091),(1092,1092,1092),(1093,1093,1093),(1094,1094,1094),(1095,1095,1095),
|
||||
(1096,1096,1096),(1097,1097,1097),(1098,1098,1098),(1099,1099,1099),(1100,1100,1100),
|
||||
(1101,1101,1101),(1102,1102,1102),(1103,1103,1103),(1104,1104,1104),(1105,1105,1105),
|
||||
(1106,1106,1106),(1107,1107,1107),(1108,1108,1108),(1109,1109,1109),(1110,1110,1110),
|
||||
(1111,1111,1111),(1112,1112,1112),(1113,1113,1113),(1114,1114,1114),(1115,1115,1115),
|
||||
(1116,1116,1116),(1117,1117,1117),(1118,1118,1118),(1119,1119,1119),(1120,1120,1120),
|
||||
(1121,1121,1121),(1122,1122,1122),(1123,1123,1123),(1124,1124,1124),(1125,1125,1125),
|
||||
(1126,1126,1126),(1127,1127,1127),(1128,1128,1128),(1129,1129,1129),(1130,1130,1130),
|
||||
(1131,1131,1131),(1132,1132,1132),(1133,1133,1133),(1134,1134,1134),(1135,1135,1135),
|
||||
(1136,1136,1136),(1137,1137,1137),(1138,1138,1138),(1139,1139,1139),(1140,1140,1140),
|
||||
(1141,1141,1141),(1142,1142,1142),(1143,1143,1143),(1144,1144,1144),(1145,1145,1145),
|
||||
(1146,1146,1146),(1147,1147,1147),(1148,1148,1148),(1149,1149,1149),(1150,1150,1150),
|
||||
(1151,1151,1151),(1152,1152,1152),(1153,1153,1153),(1154,1154,1154),(1155,1155,1155),
|
||||
(1156,1156,1156),(1157,1157,1157),(1158,1158,1158),(1159,1159,1159),(1160,1160,1160),
|
||||
(1161,1161,1161),(1162,1162,1162),(1163,1163,1163),(1164,1164,1164),(1165,1165,1165),
|
||||
(1166,1166,1166),(1167,1167,1167),(1168,1168,1168),(1169,1169,1169),(1170,1170,1170),
|
||||
(1171,1171,1171),(1172,1172,1172),(1173,1173,1173),(1174,1174,1174),(1175,1175,1175),
|
||||
(1176,1176,1176),(1177,1177,1177),(1178,1178,1178),(1179,1179,1179),(1180,1180,1180),
|
||||
(1181,1181,1181),(1182,1182,1182),(1183,1183,1183),(1184,1184,1184),(1185,1185,1185),
|
||||
(1186,1186,1186),(1187,1187,1187),(1188,1188,1188),(1189,1189,1189),(1190,1190,1190),
|
||||
(1191,1191,1191),(1192,1192,1192),(1193,1193,1193),(1194,1194,1194),(1195,1195,1195),
|
||||
(1196,1196,1196),(1197,1197,1197),(1198,1198,1198),(1199,1199,1199),(1200,1200,1200),
|
||||
(1201,1201,1201),(1202,1202,1202),(1203,1203,1203),(1204,1204,1204),(1205,1205,1205),
|
||||
(1206,1206,1206),(1207,1207,1207),(1208,1208,1208),(1209,1209,1209),(1210,1210,1210),
|
||||
(1211,1211,1211),(1212,1212,1212),(1213,1213,1213),(1214,1214,1214),(1215,1215,1215),
|
||||
(1216,1216,1216),(1217,1217,1217),(1218,1218,1218),(1219,1219,1219),(1220,1220,1220),
|
||||
(1221,1221,1221),(1222,1222,1222),(1223,1223,1223),(1224,1224,1224),(1225,1225,1225),
|
||||
(1226,1226,1226),(1227,1227,1227),(1228,1228,1228),(1229,1229,1229),(1230,1230,1230),
|
||||
(1231,1231,1231),(1232,1232,1232),(1233,1233,1233),(1234,1234,1234),(1235,1235,1235),
|
||||
(1236,1236,1236),(1237,1237,1237),(1238,1238,1238),(1239,1239,1239),(1240,1240,1240),
|
||||
(1241,1241,1241),(1242,1242,1242),(1243,1243,1243),(1244,1244,1244),(1245,1245,1245),
|
||||
(1246,1246,1246),(1247,1247,1247),(1248,1248,1248),(1249,1249,1249),(1250,1250,1250),
|
||||
(1251,1251,1251),(1252,1252,1252),(1253,1253,1253),(1254,1254,1254),(1255,1255,1255),
|
||||
(1256,1256,1256),(1257,1257,1257),(1258,1258,1258),(1259,1259,1259),(1260,1260,1260),
|
||||
(1261,1261,1261),(1262,1262,1262),(1263,1263,1263),(1264,1264,1264),(1265,1265,1265),
|
||||
(1266,1266,1266),(1267,1267,1267),(1268,1268,1268),(1269,1269,1269),(1270,1270,1270),
|
||||
(1271,1271,1271),(1272,1272,1272),(1273,1273,1273),(1274,1274,1274),(1275,1275,1275),
|
||||
(1276,1276,1276),(1277,1277,1277),(1278,1278,1278),(1279,1279,1279),(1280,1280,1280),
|
||||
(1281,1281,1281),(1282,1282,1282),(1283,1283,1283),(1284,1284,1284),(1285,1285,1285),
|
||||
(1286,1286,1286),(1287,1287,1287),(1288,1288,1288),(1289,1289,1289),(1290,1290,1290),
|
||||
(1291,1291,1291),(1292,1292,1292),(1293,1293,1293),(1294,1294,1294),(1295,1295,1295),
|
||||
(1296,1296,1296),(1297,1297,1297),(1298,1298,1298),(1299,1299,1299),(1300,1300,1300),
|
||||
(1301,1301,1301),(1302,1302,1302),(1303,1303,1303),(1304,1304,1304),(1305,1305,1305),
|
||||
(1306,1306,1306),(1307,1307,1307),(1308,1308,1308),(1309,1309,1309),(1310,1310,1310),
|
||||
(1311,1311,1311),(1312,1312,1312),(1313,1313,1313),(1314,1314,1314),(1315,1315,1315),
|
||||
(1316,1316,1316),(1317,1317,1317),(1318,1318,1318),(1319,1319,1319),(1320,1320,1320),
|
||||
(1321,1321,1321),(1322,1322,1322),(1323,1323,1323),(1324,1324,1324),(1325,1325,1325),
|
||||
(1326,1326,1326),(1327,1327,1327),(1328,1328,1328),(1329,1329,1329),(1330,1330,1330),
|
||||
(1331,1331,1331),(1332,1332,1332),(1333,1333,1333),(1334,1334,1334),(1335,1335,1335),
|
||||
(1336,1336,1336),(1337,1337,1337),(1338,1338,1338),(1339,1339,1339),(1340,1340,1340),
|
||||
(1341,1341,1341),(1342,1342,1342),(1343,1343,1343),(1344,1344,1344),(1345,1345,1345),
|
||||
(1346,1346,1346),(1347,1347,1347),(1348,1348,1348),(1349,1349,1349),(1350,1350,1350),
|
||||
(1351,1351,1351),(1352,1352,1352),(1353,1353,1353),(1354,1354,1354),(1355,1355,1355),
|
||||
(1356,1356,1356),(1357,1357,1357),(1358,1358,1358),(1359,1359,1359),(1360,1360,1360),
|
||||
(1361,1361,1361),(1362,1362,1362),(1363,1363,1363),(1364,1364,1364),(1365,1365,1365),
|
||||
(1366,1366,1366),(1367,1367,1367),(1368,1368,1368),(1369,1369,1369),(1370,1370,1370),
|
||||
(1371,1371,1371),(1372,1372,1372),(1373,1373,1373),(1374,1374,1374),(1375,1375,1375),
|
||||
(1376,1376,1376),(1377,1377,1377),(1378,1378,1378),(1379,1379,1379),(1380,1380,1380),
|
||||
(1381,1381,1381),(1382,1382,1382),(1383,1383,1383),(1384,1384,1384),(1385,1385,1385),
|
||||
(1386,1386,1386),(1387,1387,1387),(1388,1388,1388),(1389,1389,1389),(1390,1390,1390),
|
||||
(1391,1391,1391),(1392,1392,1392),(1393,1393,1393),(1394,1394,1394),(1395,1395,1395),
|
||||
(1396,1396,1396),(1397,1397,1397),(1398,1398,1398),(1399,1399,1399),(1400,1400,1400),
|
||||
(1401,1401,1401),(1402,1402,1402),(1403,1403,1403),(1404,1404,1404),(1405,1405,1405),
|
||||
(1406,1406,1406),(1407,1407,1407),(1408,1408,1408),(1409,1409,1409),(1410,1410,1410),
|
||||
(1411,1411,1411),(1412,1412,1412),(1413,1413,1413),(1414,1414,1414),(1415,1415,1415),
|
||||
(1416,1416,1416),(1417,1417,1417),(1418,1418,1418),(1419,1419,1419),(1420,1420,1420),
|
||||
(1421,1421,1421),(1422,1422,1422),(1423,1423,1423),(1424,1424,1424),(1425,1425,1425),
|
||||
(1426,1426,1426),(1427,1427,1427),(1428,1428,1428),(1429,1429,1429),(1430,1430,1430),
|
||||
(1431,1431,1431),(1432,1432,1432),(1433,1433,1433),(1434,1434,1434),(1435,1435,1435),
|
||||
(1436,1436,1436),(1437,1437,1437),(1438,1438,1438),(1439,1439,1439),(1440,1440,1440),
|
||||
(1441,1441,1441),(1442,1442,1442),(1443,1443,1443),(1444,1444,1444),(1445,1445,1445),
|
||||
(1446,1446,1446),(1447,1447,1447),(1448,1448,1448),(1449,1449,1449),(1450,1450,1450),
|
||||
(1451,1451,1451),(1452,1452,1452),(1453,1453,1453),(1454,1454,1454),(1455,1455,1455),
|
||||
(1456,1456,1456),(1457,1457,1457),(1458,1458,1458),(1459,1459,1459),(1460,1460,1460),
|
||||
(1461,1461,1461),(1462,1462,1462),(1463,1463,1463),(1464,1464,1464),(1465,1465,1465),
|
||||
(1466,1466,1466),(1467,1467,1467),(1468,1468,1468),(1469,1469,1469),(1470,1470,1470),
|
||||
(1471,1471,1471),(1472,1472,1472),(1473,1473,1473),(1474,1474,1474),(1475,1475,1475),
|
||||
(1476,1476,1476),(1477,1477,1477),(1478,1478,1478),(1479,1479,1479),(1480,1480,1480),
|
||||
(1481,1481,1481),(1482,1482,1482),(1483,1483,1483),(1484,1484,1484),(1485,1485,1485),
|
||||
(1486,1486,1486),(1487,1487,1487),(1488,1488,1488),(1489,1489,1489),(1490,1490,1490),
|
||||
(1491,1491,1491),(1492,1492,1492),(1493,1493,1493),(1494,1494,1494),(1495,1495,1495),
|
||||
(1496,1496,1496),(1497,1497,1497),(1498,1498,1498),(1499,1499,1499),(1500,1500,1500),
|
||||
(1501,1501,1501),(1502,1502,1502),(1503,1503,1503),(1504,1504,1504),(1505,1505,1505),
|
||||
(1506,1506,1506),(1507,1507,1507),(1508,1508,1508),(1509,1509,1509),(1510,1510,1510),
|
||||
(1511,1511,1511),(1512,1512,1512),(1513,1513,1513),(1514,1514,1514),(1515,1515,1515),
|
||||
(1516,1516,1516),(1517,1517,1517),(1518,1518,1518),(1519,1519,1519),(1520,1520,1520),
|
||||
(1521,1521,1521),(1522,1522,1522),(1523,1523,1523),(1524,1524,1524),(1525,1525,1525),
|
||||
(1526,1526,1526),(1527,1527,1527),(1528,1528,1528),(1529,1529,1529),(1530,1530,1530),
|
||||
(1531,1531,1531),(1532,1532,1532),(1533,1533,1533),(1534,1534,1534),(1535,1535,1535),
|
||||
(1536,1536,1536),(1537,1537,1537),(1538,1538,1538),(1539,1539,1539),(1540,1540,1540),
|
||||
(1541,1541,1541),(1542,1542,1542),(1543,1543,1543),(1544,1544,1544),(1545,1545,1545),
|
||||
(1546,1546,1546),(1547,1547,1547),(1548,1548,1548),(1549,1549,1549),(1550,1550,1550),
|
||||
(1551,1551,1551),(1552,1552,1552),(1553,1553,1553),(1554,1554,1554),(1555,1555,1555),
|
||||
(1556,1556,1556),(1557,1557,1557),(1558,1558,1558),(1559,1559,1559),(1560,1560,1560),
|
||||
(1561,1561,1561),(1562,1562,1562),(1563,1563,1563),(1564,1564,1564),(1565,1565,1565),
|
||||
(1566,1566,1566),(1567,1567,1567),(1568,1568,1568),(1569,1569,1569),(1570,1570,1570),
|
||||
(1571,1571,1571),(1572,1572,1572),(1573,1573,1573),(1574,1574,1574),(1575,1575,1575),
|
||||
(1576,1576,1576),(1577,1577,1577),(1578,1578,1578),(1579,1579,1579),(1580,1580,1580),
|
||||
(1581,1581,1581),(1582,1582,1582),(1583,1583,1583),(1584,1584,1584),(1585,1585,1585),
|
||||
(1586,1586,1586),(1587,1587,1587),(1588,1588,1588),(1589,1589,1589),(1590,1590,1590),
|
||||
(1591,1591,1591),(1592,1592,1592),(1593,1593,1593),(1594,1594,1594),(1595,1595,1595),
|
||||
(1596,1596,1596),(1597,1597,1597),(1598,1598,1598),(1599,1599,1599),(1600,1600,1600),
|
||||
(1601,1601,1601),(1602,1602,1602),(1603,1603,1603),(1604,1604,1604),(1605,1605,1605),
|
||||
(1606,1606,1606),(1607,1607,1607),(1608,1608,1608),(1609,1609,1609),(1610,1610,1610),
|
||||
(1611,1611,1611),(1612,1612,1612),(1613,1613,1613),(1614,1614,1614),(1615,1615,1615),
|
||||
(1616,1616,1616),(1617,1617,1617),(1618,1618,1618),(1619,1619,1619),(1620,1620,1620),
|
||||
(1621,1621,1621),(1622,1622,1622),(1623,1623,1623),(1624,1624,1624),(1625,1625,1625),
|
||||
(1626,1626,1626),(1627,1627,1627),(1628,1628,1628),(1629,1629,1629),(1630,1630,1630),
|
||||
(1631,1631,1631),(1632,1632,1632),(1633,1633,1633),(1634,1634,1634),(1635,1635,1635),
|
||||
(1636,1636,1636),(1637,1637,1637),(1638,1638,1638),(1639,1639,1639),(1640,1640,1640),
|
||||
(1641,1641,1641),(1642,1642,1642),(1643,1643,1643),(1644,1644,1644),(1645,1645,1645),
|
||||
(1646,1646,1646),(1647,1647,1647),(1648,1648,1648),(1649,1649,1649),(1650,1650,1650),
|
||||
(1651,1651,1651),(1652,1652,1652),(1653,1653,1653),(1654,1654,1654),(1655,1655,1655),
|
||||
(1656,1656,1656),(1657,1657,1657),(1658,1658,1658),(1659,1659,1659),(1660,1660,1660),
|
||||
(1661,1661,1661),(1662,1662,1662),(1663,1663,1663),(1664,1664,1664),(1665,1665,1665),
|
||||
(1666,1666,1666),(1667,1667,1667),(1668,1668,1668),(1669,1669,1669),(1670,1670,1670),
|
||||
(1671,1671,1671),(1672,1672,1672),(1673,1673,1673),(1674,1674,1674),(1675,1675,1675),
|
||||
(1676,1676,1676),(1677,1677,1677),(1678,1678,1678),(1679,1679,1679),(1680,1680,1680),
|
||||
(1681,1681,1681),(1682,1682,1682),(1683,1683,1683),(1684,1684,1684),(1685,1685,1685),
|
||||
(1686,1686,1686),(1687,1687,1687),(1688,1688,1688),(1689,1689,1689),(1690,1690,1690),
|
||||
(1691,1691,1691),(1692,1692,1692),(1693,1693,1693),(1694,1694,1694),(1695,1695,1695),
|
||||
(1696,1696,1696),(1697,1697,1697),(1698,1698,1698),(1699,1699,1699),(1700,1700,1700),
|
||||
(1701,1701,1701),(1702,1702,1702),(1703,1703,1703),(1704,1704,1704),(1705,1705,1705),
|
||||
(1706,1706,1706),(1707,1707,1707),(1708,1708,1708),(1709,1709,1709),(1710,1710,1710),
|
||||
(1711,1711,1711),(1712,1712,1712),(1713,1713,1713),(1714,1714,1714),(1715,1715,1715),
|
||||
(1716,1716,1716),(1717,1717,1717),(1718,1718,1718),(1719,1719,1719),(1720,1720,1720),
|
||||
(1721,1721,1721),(1722,1722,1722),(1723,1723,1723),(1724,1724,1724),(1725,1725,1725),
|
||||
(1726,1726,1726),(1727,1727,1727),(1728,1728,1728),(1729,1729,1729),(1730,1730,1730),
|
||||
(1731,1731,1731),(1732,1732,1732),(1733,1733,1733),(1734,1734,1734),(1735,1735,1735),
|
||||
(1736,1736,1736),(1737,1737,1737),(1738,1738,1738),(1739,1739,1739),(1740,1740,1740),
|
||||
(1741,1741,1741),(1742,1742,1742),(1743,1743,1743),(1744,1744,1744),(1745,1745,1745),
|
||||
(1746,1746,1746),(1747,1747,1747),(1748,1748,1748),(1749,1749,1749),(1750,1750,1750),
|
||||
(1751,1751,1751),(1752,1752,1752),(1753,1753,1753),(1754,1754,1754),(1755,1755,1755),
|
||||
(1756,1756,1756),(1757,1757,1757),(1758,1758,1758),(1759,1759,1759),(1760,1760,1760),
|
||||
(1761,1761,1761),(1762,1762,1762),(1763,1763,1763),(1764,1764,1764),(1765,1765,1765),
|
||||
(1766,1766,1766),(1767,1767,1767),(1768,1768,1768),(1769,1769,1769),(1770,1770,1770),
|
||||
(1771,1771,1771),(1772,1772,1772),(1773,1773,1773),(1774,1774,1774),(1775,1775,1775),
|
||||
(1776,1776,1776),(1777,1777,1777),(1778,1778,1778),(1779,1779,1779),(1780,1780,1780),
|
||||
(1781,1781,1781),(1782,1782,1782),(1783,1783,1783),(1784,1784,1784),(1785,1785,1785),
|
||||
(1786,1786,1786),(1787,1787,1787),(1788,1788,1788),(1789,1789,1789),(1790,1790,1790),
|
||||
(1791,1791,1791),(1792,1792,1792),(1793,1793,1793),(1794,1794,1794),(1795,1795,1795),
|
||||
(1796,1796,1796),(1797,1797,1797),(1798,1798,1798),(1799,1799,1799),(1800,1800,1800),
|
||||
(1801,1801,1801),(1802,1802,1802),(1803,1803,1803),(1804,1804,1804),(1805,1805,1805),
|
||||
(1806,1806,1806),(1807,1807,1807),(1808,1808,1808),(1809,1809,1809),(1810,1810,1810),
|
||||
(1811,1811,1811),(1812,1812,1812),(1813,1813,1813),(1814,1814,1814),(1815,1815,1815),
|
||||
(1816,1816,1816),(1817,1817,1817),(1818,1818,1818),(1819,1819,1819),(1820,1820,1820),
|
||||
(1821,1821,1821),(1822,1822,1822),(1823,1823,1823),(1824,1824,1824),(1825,1825,1825),
|
||||
(1826,1826,1826),(1827,1827,1827),(1828,1828,1828),(1829,1829,1829),(1830,1830,1830),
|
||||
(1831,1831,1831),(1832,1832,1832),(1833,1833,1833),(1834,1834,1834),(1835,1835,1835),
|
||||
(1836,1836,1836),(1837,1837,1837),(1838,1838,1838),(1839,1839,1839),(1840,1840,1840),
|
||||
(1841,1841,1841),(1842,1842,1842),(1843,1843,1843),(1844,1844,1844),(1845,1845,1845),
|
||||
(1846,1846,1846),(1847,1847,1847),(1848,1848,1848),(1849,1849,1849),(1850,1850,1850),
|
||||
(1851,1851,1851),(1852,1852,1852),(1853,1853,1853),(1854,1854,1854),(1855,1855,1855),
|
||||
(1856,1856,1856),(1857,1857,1857),(1858,1858,1858),(1859,1859,1859),(1860,1860,1860),
|
||||
(1861,1861,1861),(1862,1862,1862),(1863,1863,1863),(1864,1864,1864),(1865,1865,1865),
|
||||
(1866,1866,1866),(1867,1867,1867),(1868,1868,1868),(1869,1869,1869),(1870,1870,1870),
|
||||
(1871,1871,1871),(1872,1872,1872),(1873,1873,1873),(1874,1874,1874),(1875,1875,1875),
|
||||
(1876,1876,1876),(1877,1877,1877),(1878,1878,1878),(1879,1879,1879),(1880,1880,1880),
|
||||
(1881,1881,1881),(1882,1882,1882),(1883,1883,1883),(1884,1884,1884),(1885,1885,1885),
|
||||
(1886,1886,1886),(1887,1887,1887),(1888,1888,1888),(1889,1889,1889),(1890,1890,1890),
|
||||
(1891,1891,1891),(1892,1892,1892),(1893,1893,1893),(1894,1894,1894),(1895,1895,1895),
|
||||
(1896,1896,1896),(1897,1897,1897),(1898,1898,1898),(1899,1899,1899),(1900,1900,1900),
|
||||
(1901,1901,1901),(1902,1902,1902),(1903,1903,1903),(1904,1904,1904),(1905,1905,1905),
|
||||
(1906,1906,1906),(1907,1907,1907),(1908,1908,1908),(1909,1909,1909),(1910,1910,1910),
|
||||
(1911,1911,1911),(1912,1912,1912),(1913,1913,1913),(1914,1914,1914),(1915,1915,1915),
|
||||
(1916,1916,1916),(1917,1917,1917),(1918,1918,1918),(1919,1919,1919),(1920,1920,1920),
|
||||
(1921,1921,1921),(1922,1922,1922),(1923,1923,1923),(1924,1924,1924),(1925,1925,1925),
|
||||
(1926,1926,1926),(1927,1927,1927),(1928,1928,1928),(1929,1929,1929),(1930,1930,1930),
|
||||
(1931,1931,1931),(1932,1932,1932),(1933,1933,1933),(1934,1934,1934),(1935,1935,1935),
|
||||
(1936,1936,1936),(1937,1937,1937),(1938,1938,1938),(1939,1939,1939),(1940,1940,1940),
|
||||
(1941,1941,1941),(1942,1942,1942),(1943,1943,1943),(1944,1944,1944),(1945,1945,1945),
|
||||
(1946,1946,1946),(1947,1947,1947),(1948,1948,1948),(1949,1949,1949),(1950,1950,1950),
|
||||
(1951,1951,1951),(1952,1952,1952),(1953,1953,1953),(1954,1954,1954),(1955,1955,1955),
|
||||
(1956,1956,1956),(1957,1957,1957),(1958,1958,1958),(1959,1959,1959),(1960,1960,1960),
|
||||
(1961,1961,1961),(1962,1962,1962),(1963,1963,1963),(1964,1964,1964),(1965,1965,1965),
|
||||
(1966,1966,1966),(1967,1967,1967),(1968,1968,1968),(1969,1969,1969),(1970,1970,1970),
|
||||
(1971,1971,1971),(1972,1972,1972),(1973,1973,1973),(1974,1974,1974),(1975,1975,1975),
|
||||
(1976,1976,1976),(1977,1977,1977),(1978,1978,1978),(1979,1979,1979),(1980,1980,1980),
|
||||
(1981,1981,1981),(1982,1982,1982),(1983,1983,1983),(1984,1984,1984),(1985,1985,1985),
|
||||
(1986,1986,1986),(1987,1987,1987),(1988,1988,1988),(1989,1989,1989),(1990,1990,1990),
|
||||
(1991,1991,1991),(1992,1992,1992),(1993,1993,1993),(1994,1994,1994),(1995,1995,1995),
|
||||
(1996,1996,1996),(1997,1997,1997),(1998,1998,1998),(1999,1999,1999);
|
||||
SELECT COUNT(*) FROM t1;
|
||||
COUNT(*)
|
||||
2000
|
||||
DROP TABLE t1;
|
120
mysql-test/r/ndb_minmax.result
Normal file
120
mysql-test/r/ndb_minmax.result
Normal file
@ -0,0 +1,120 @@
|
||||
drop table if exists t1, t2;
|
||||
CREATE TABLE t1 (
|
||||
a int PRIMARY KEY
|
||||
) engine = ndb;
|
||||
INSERT INTO t1 VALUES (1);
|
||||
INSERT INTO t1 VALUES (2);
|
||||
INSERT INTO t1 VALUES (3);
|
||||
INSERT INTO t1 VALUES (4);
|
||||
INSERT INTO t1 VALUES (5);
|
||||
INSERT INTO t1 VALUES (6);
|
||||
select MAX(a) from t1;
|
||||
MAX(a)
|
||||
6
|
||||
select MAX(a) from t1;
|
||||
MAX(a)
|
||||
6
|
||||
select MAX(a) from t1;
|
||||
MAX(a)
|
||||
6
|
||||
select MAX(a) from t1;
|
||||
MAX(a)
|
||||
6
|
||||
select MIN(a) from t1;
|
||||
MIN(a)
|
||||
1
|
||||
select MIN(a) from t1;
|
||||
MIN(a)
|
||||
1
|
||||
select MIN(a) from t1;
|
||||
MIN(a)
|
||||
1
|
||||
select * from t1 order by a;
|
||||
a
|
||||
1
|
||||
2
|
||||
3
|
||||
4
|
||||
5
|
||||
6
|
||||
select MIN(a) from t1;
|
||||
MIN(a)
|
||||
1
|
||||
select MAX(a) from t1;
|
||||
MAX(a)
|
||||
6
|
||||
select MAX(a) from t1;
|
||||
MAX(a)
|
||||
6
|
||||
select * from t1 order by a;
|
||||
a
|
||||
1
|
||||
2
|
||||
3
|
||||
4
|
||||
5
|
||||
6
|
||||
drop table t1;
|
||||
CREATE TABLE t2 (
|
||||
a int PRIMARY KEY,
|
||||
b int not null,
|
||||
c int not null,
|
||||
KEY(b),
|
||||
UNIQUE(c)
|
||||
) engine = ndb;
|
||||
INSERT INTO t2 VALUES (1, 5, 1);
|
||||
INSERT INTO t2 VALUES (2, 2, 7);
|
||||
INSERT INTO t2 VALUES (3, 3, 3);
|
||||
INSERT INTO t2 VALUES (4, 4, 4);
|
||||
INSERT INTO t2 VALUES (5, 5, 5);
|
||||
INSERT INTO t2 VALUES (6, 6, 6);
|
||||
INSERT INTO t2 VALUES (7, 2, 10);
|
||||
INSERT INTO t2 VALUES (8, 10, 2);
|
||||
select MAX(a) from t2;
|
||||
MAX(a)
|
||||
8
|
||||
select MAX(b) from t2;
|
||||
MAX(b)
|
||||
10
|
||||
select MAX(c) from t2;
|
||||
MAX(c)
|
||||
10
|
||||
select MIN(a) from t2;
|
||||
MIN(a)
|
||||
1
|
||||
select MIN(b) from t2;
|
||||
MIN(b)
|
||||
2
|
||||
select MIN(c) from t2;
|
||||
MIN(c)
|
||||
1
|
||||
select * from t2 order by a;
|
||||
a b c
|
||||
1 5 1
|
||||
2 2 7
|
||||
3 3 3
|
||||
4 4 4
|
||||
5 5 5
|
||||
6 6 6
|
||||
7 2 10
|
||||
8 10 2
|
||||
select MIN(b) from t2;
|
||||
MIN(b)
|
||||
2
|
||||
select MAX(a) from t2;
|
||||
MAX(a)
|
||||
8
|
||||
select MAX(c) from t2;
|
||||
MAX(c)
|
||||
10
|
||||
select * from t2 order by a;
|
||||
a b c
|
||||
1 5 1
|
||||
2 2 7
|
||||
3 3 3
|
||||
4 4 4
|
||||
5 5 5
|
||||
6 6 6
|
||||
7 2 10
|
||||
8 10 2
|
||||
drop table t2;
|
21
mysql-test/r/ndb_replace.result
Normal file
21
mysql-test/r/ndb_replace.result
Normal file
@ -0,0 +1,21 @@
|
||||
drop table if exists t1;
|
||||
CREATE TABLE t1 (
|
||||
gesuchnr int(11) DEFAULT '0' NOT NULL,
|
||||
benutzer_id int(11) DEFAULT '0' NOT NULL,
|
||||
PRIMARY KEY (gesuchnr,benutzer_id)
|
||||
) engine=ndbcluster;
|
||||
replace into t1 (gesuchnr,benutzer_id) values (2,1);
|
||||
replace into t1 (gesuchnr,benutzer_id) values (1,1);
|
||||
replace into t1 (gesuchnr,benutzer_id) values (1,1);
|
||||
insert into t1 (gesuchnr, benutzer_id) value (3,2);
|
||||
replace into t1 (gesuchnr,benutzer_id) values (1,1);
|
||||
replace into t1 (gesuchnr,benutzer_id) values (1,1);
|
||||
insert into t1 (gesuchnr,benutzer_id) values (1,1);
|
||||
ERROR 23000: Can't write; duplicate key in table 't1'
|
||||
replace into t1 (gesuchnr,benutzer_id) values (1,1);
|
||||
select * from t1 order by gesuchnr;
|
||||
gesuchnr benutzer_id
|
||||
1 1
|
||||
2 1
|
||||
3 2
|
||||
drop table t1;
|
@ -97,39 +97,39 @@ Warnings:
|
||||
Warning 1265 Data truncated for column 'd' at row 1
|
||||
UPDATE t1 SET d=NULL;
|
||||
Warnings:
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'd' at row 1
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'd' at row 1
|
||||
INSERT INTO t1 (a) values (null);
|
||||
ERROR 23000: Column 'a' cannot be null
|
||||
INSERT INTO t1 (a) values (1/null);
|
||||
ERROR 23000: Column 'a' cannot be null
|
||||
INSERT INTO t1 (a) values (null),(null);
|
||||
Warnings:
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'a' at row 1
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'a' at row 2
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 1
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'a' at row 2
|
||||
INSERT INTO t1 (b) values (null);
|
||||
ERROR 23000: Column 'b' cannot be null
|
||||
INSERT INTO t1 (b) values (1/null);
|
||||
ERROR 23000: Column 'b' cannot be null
|
||||
INSERT INTO t1 (b) values (null),(null);
|
||||
Warnings:
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'b' at row 1
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'b' at row 2
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'b' at row 1
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'b' at row 2
|
||||
INSERT INTO t1 (c) values (null);
|
||||
ERROR 23000: Column 'c' cannot be null
|
||||
INSERT INTO t1 (c) values (1/null);
|
||||
ERROR 23000: Column 'c' cannot be null
|
||||
INSERT INTO t1 (c) values (null),(null);
|
||||
Warnings:
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'c' at row 1
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'c' at row 2
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'c' at row 1
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'c' at row 2
|
||||
INSERT INTO t1 (d) values (null);
|
||||
ERROR 23000: Column 'd' cannot be null
|
||||
INSERT INTO t1 (d) values (1/null);
|
||||
ERROR 23000: Column 'd' cannot be null
|
||||
INSERT INTO t1 (d) values (null),(null);
|
||||
Warnings:
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'd' at row 1
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'd' at row 2
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'd' at row 1
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'd' at row 2
|
||||
select * from t1;
|
||||
a b c d
|
||||
0 0000-00-00 00:00:00 0
|
||||
|
@ -337,7 +337,7 @@ index (id2)
|
||||
);
|
||||
insert into t1 values(null,null),(1,1);
|
||||
Warnings:
|
||||
Warning 1263 Data truncated, NULL supplied to NOT NULL column 'id2' at row 1
|
||||
Warning 1263 Data truncated; NULL supplied to NOT NULL column 'id2' at row 1
|
||||
select * from t1;
|
||||
id id2
|
||||
NULL 0
|
||||
|
@ -85,7 +85,7 @@ explain extended select product, country_id , year, sum(profit) from t1 group by
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 15 Using temporary; Using filesort
|
||||
Warnings:
|
||||
Note 1003 select test.t1.product AS `product`,test.t1.country_id AS `country_id`,test.t1.year AS `year`,sum(test.t1.profit) AS `sum(profit)` from test.t1 group by test.t1.product,test.t1.country_id,test.t1.year with rollup
|
||||
Note 1003 select `test`.`t1`.`product` AS `product`,`test`.`t1`.`country_id` AS `country_id`,`test`.`t1`.`year` AS `year`,sum(`test`.`t1`.`profit`) AS `sum(profit)` from `test`.`t1` group by `test`.`t1`.`product`,`test`.`t1`.`country_id`,`test`.`t1`.`year` with rollup
|
||||
select product, country_id , sum(profit) from t1 group by product desc, country_id with rollup;
|
||||
product country_id sum(profit)
|
||||
TV 1 400
|
||||
|
@ -10,22 +10,22 @@ select * from t1;
|
||||
f1
|
||||
5
|
||||
delete from t1;
|
||||
ERROR 42000: Access denied for user: 'ssl_user1'@'localhost' to database 'test'
|
||||
ERROR 42000: Access denied for user 'ssl_user1'@'localhost' to database 'test'
|
||||
select * from t1;
|
||||
f1
|
||||
5
|
||||
delete from t1;
|
||||
ERROR 42000: Access denied for user: 'ssl_user2'@'localhost' to database 'test'
|
||||
ERROR 42000: Access denied for user 'ssl_user2'@'localhost' to database 'test'
|
||||
select * from t1;
|
||||
f1
|
||||
5
|
||||
delete from t1;
|
||||
ERROR 42000: Access denied for user: 'ssl_user3'@'localhost' to database 'test'
|
||||
ERROR 42000: Access denied for user 'ssl_user3'@'localhost' to database 'test'
|
||||
select * from t1;
|
||||
f1
|
||||
5
|
||||
delete from t1;
|
||||
ERROR 42000: Access denied for user: 'ssl_user4'@'localhost' to database 'test'
|
||||
ERROR 42000: Access denied for user 'ssl_user4'@'localhost' to database 'test'
|
||||
delete from mysql.user where user='ssl_user%';
|
||||
delete from mysql.db where user='ssl_user%';
|
||||
flush privileges;
|
||||
|
@ -8,11 +8,13 @@ len
|
||||
select repeat('a',2000);
|
||||
repeat('a',2000)
|
||||
NULL
|
||||
Warnings:
|
||||
Warning 1301 Result of repeat() was larger than max_allowed_packet (1024) - truncated
|
||||
select @@net_buffer_length, @@max_allowed_packet;
|
||||
@@net_buffer_length @@max_allowed_packet
|
||||
1024 1024
|
||||
SELECT length("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") as len;
|
||||
ERROR 08S01: Got a packet bigger than 'max_allowed_packet'
|
||||
ERROR 08S01: Got a packet bigger than 'max_allowed_packet' bytes
|
||||
set global max_allowed_packet=default;
|
||||
set max_allowed_packet=default;
|
||||
set global net_buffer_length=default;
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user