mirror of
https://github.com/MariaDB/server.git
synced 2025-08-31 22:22:30 +03:00
Yet another manual merge with main tree for patch for WL#1218 "Triggers"
This commit is contained in:
@@ -62,6 +62,7 @@ install-data-local:
|
||||
$(INSTALL_DATA) $(srcdir)/r/*.require $(DESTDIR)$(testdir)/r
|
||||
$(INSTALL_DATA) $(srcdir)/include/*.inc $(DESTDIR)$(testdir)/include
|
||||
$(INSTALL_DATA) $(srcdir)/std_data/*.dat $(DESTDIR)$(testdir)/std_data
|
||||
$(INSTALL_DATA) $(srcdir)/std_data/*.*001 $(DESTDIR)$(testdir)/std_data
|
||||
$(INSTALL_DATA) $(srcdir)/std_data/des_key_file $(DESTDIR)$(testdir)/std_data
|
||||
$(INSTALL_DATA) $(srcdir)/std_data/*.pem $(DESTDIR)$(testdir)/std_data
|
||||
|
||||
|
4
mysql-test/include/have_csv.inc
Normal file
4
mysql-test/include/have_csv.inc
Normal file
@@ -0,0 +1,4 @@
|
||||
-- require r/have_csv.require
|
||||
disable_query_log;
|
||||
show variables like "have_csv";
|
||||
enable_query_log;
|
4
mysql-test/include/have_exampledb.inc
Normal file
4
mysql-test/include/have_exampledb.inc
Normal file
@@ -0,0 +1,4 @@
|
||||
-- require r/have_exampledb.require
|
||||
disable_query_log;
|
||||
show variables like "have_example_engine";
|
||||
enable_query_log;
|
@@ -367,10 +367,12 @@ while test $# -gt 0; do
|
||||
VALGRIND=`which valgrind` # this will print an error if not found
|
||||
# Give good warning to the user and stop
|
||||
if [ -z "$VALGRIND" ] ; then
|
||||
$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 ."
|
||||
$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://valgrind.kde.org ."
|
||||
exit 1
|
||||
fi
|
||||
VALGRIND="$VALGRIND --tool=memcheck --alignment=8 --leak-check=yes --num-callers=16"
|
||||
# >=2.1.2 requires the --tool option, some versions write to stdout, some to stderr
|
||||
valgrind --help 2>&1 | grep "\-\-tool" > /dev/null && VALGRIND="$VALGRIND --tool=memcheck"
|
||||
VALGRIND="$VALGRIND --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
|
||||
@@ -436,7 +438,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 MYSQL_TCP_PORT
|
||||
export MASTER_MYPORT SLAVE_MYPORT MYSQL_TCP_PORT MASTER_MYSOCK
|
||||
|
||||
if [ x$SOURCE_DIST = x1 ] ; then
|
||||
MY_BASEDIR=$MYSQL_TEST_DIR
|
||||
@@ -523,11 +525,6 @@ else
|
||||
fi
|
||||
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 --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"
|
||||
|
||||
if [ -z "$MASTER_MYSQLD" ]
|
||||
then
|
||||
MASTER_MYSQLD=$MYSQLD
|
||||
@@ -560,6 +557,12 @@ then
|
||||
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 --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
|
||||
|
||||
MYSQL_TEST_ARGS="--no-defaults --socket=$MASTER_MYSOCK --database=$DB \
|
||||
--user=$DBUSER --password=$DBPASSWD --silent -v --skip-safemalloc \
|
||||
--tmpdir=$MYSQL_TMP_DIR --port=$MASTER_MYPORT $MYSQL_TEST_SSL_OPTS"
|
||||
@@ -612,6 +615,7 @@ show_failed_diff ()
|
||||
echo "Please follow the instructions outlined at"
|
||||
echo "http://www.mysql.com/doc/en/Reporting_mysqltest_bugs.html"
|
||||
echo "to find the reason to this problem and how to report this."
|
||||
echo ""
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -1428,7 +1432,7 @@ then
|
||||
if [ -z "$USE_RUNNING_NDBCLUSTER" ]
|
||||
then
|
||||
# Kill any running ndbcluster stuff
|
||||
./ndb/ndbcluster --port-base=$NDBCLUSTER_PORT --stop
|
||||
./ndb/ndbcluster --data-dir=$MYSQL_TEST_DIR/var --port-base=$NDBCLUSTER_PORT --stop
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -1449,11 +1453,11 @@ then
|
||||
if [ -z "$USE_RUNNING_NDBCLUSTER" ]
|
||||
then
|
||||
echo "Starting ndbcluster"
|
||||
./ndb/ndbcluster --port-base=$NDBCLUSTER_PORT --small --discless --initial --data-dir=$MYSQL_TEST_DIR/var || exit 1
|
||||
export NDB_CONNECTSTRING=`cat Ndb.cfg`
|
||||
./ndb/ndbcluster --port-base=$NDBCLUSTER_PORT --small --diskless --initial --data-dir=$MYSQL_TEST_DIR/var || exit 1
|
||||
USE_NDBCLUSTER="$USE_NDBCLUSTER --ndb-connectstring=\"host=localhost:$NDBCLUSTER_PORT\""
|
||||
else
|
||||
export NDB_CONNECTSTRING="$USE_RUNNING_NDBCLUSTER"
|
||||
echo "Using ndbcluster at $NDB_CONNECTSTRING"
|
||||
USE_NDBCLUSTER="$USE_NDBCLUSTER --ndb-connectstring=\"$USE_RUNNING_NDBCLUSTER\""
|
||||
echo "Using ndbcluster at $USE_NDBCLUSTER"
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -1549,7 +1553,7 @@ then
|
||||
if [ -z "$USE_RUNNING_NDBCLUSTER" ]
|
||||
then
|
||||
# Kill any running ndbcluster stuff
|
||||
./ndb/ndbcluster --port-base=$NDBCLUSTER_PORT --stop
|
||||
./ndb/ndbcluster --data-dir=$MYSQL_TEST_DIR/var --port-base=$NDBCLUSTER_PORT --stop
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@@ -3,73 +3,34 @@ NoOfReplicas: 2
|
||||
MaxNoOfConcurrentOperations: CHOOSE_MaxNoOfConcurrentOperations
|
||||
DataMemory: CHOOSE_DataMemory
|
||||
IndexMemory: CHOOSE_IndexMemory
|
||||
Discless: CHOOSE_Discless
|
||||
Diskless: CHOOSE_Diskless
|
||||
TimeBetweenWatchDogCheck: 30000
|
||||
FileSystemPath: CHOOSE_FILESYSTEM
|
||||
|
||||
[COMPUTER]
|
||||
Id: 1
|
||||
ByteOrder: Little
|
||||
HostName: CHOOSE_HOSTNAME_1
|
||||
|
||||
[COMPUTER]
|
||||
Id: 2
|
||||
ByteOrder: Little
|
||||
HostName: CHOOSE_HOSTNAME_2
|
||||
|
||||
[COMPUTER]
|
||||
Id: 3
|
||||
ByteOrder: Little
|
||||
HostName: CHOOSE_HOSTNAME_3
|
||||
[DB]
|
||||
ExecuteOnComputer: 1
|
||||
|
||||
[COMPUTER]
|
||||
Id: 4
|
||||
ByteOrder: Little
|
||||
HostName: CHOOSE_HOSTNAME_4
|
||||
|
||||
[COMPUTER]
|
||||
Id: 5
|
||||
ByteOrder: Little
|
||||
HostName: CHOOSE_HOSTNAME_5
|
||||
|
||||
[COMPUTER]
|
||||
Id: 6
|
||||
ByteOrder: Little
|
||||
HostName: CHOOSE_HOSTNAME_6
|
||||
|
||||
[COMPUTER]
|
||||
Id: 7
|
||||
ByteOrder: Little
|
||||
HostName: CHOOSE_HOSTNAME_7
|
||||
[DB]
|
||||
ExecuteOnComputer: 2
|
||||
|
||||
[MGM]
|
||||
Id: 1
|
||||
ExecuteOnComputer: 1
|
||||
PortNumber: CHOOSE_PORT_MGM
|
||||
|
||||
[DB]
|
||||
Id: 2
|
||||
ExecuteOnComputer: 2
|
||||
FileSystemPath: CHOOSE_FILESYSTEM_NODE_2
|
||||
[MYSQLD]
|
||||
|
||||
[DB]
|
||||
Id: 3
|
||||
ExecuteOnComputer: 3
|
||||
FileSystemPath: CHOOSE_FILESYSTEM_NODE_3
|
||||
[MYSQLD]
|
||||
|
||||
[API]
|
||||
Id: 11
|
||||
ExecuteOnComputer: 4
|
||||
[MYSQLD]
|
||||
|
||||
[API]
|
||||
Id: 12
|
||||
ExecuteOnComputer: 5
|
||||
|
||||
[API]
|
||||
Id: 13
|
||||
ExecuteOnComputer: 6
|
||||
|
||||
[API]
|
||||
Id: 14
|
||||
ExecuteOnComputer: 7
|
||||
[MYSQLD]
|
||||
|
||||
[TCP DEFAULT]
|
||||
PortNumber: CHOOSE_PORT_TRANSPORTER
|
||||
|
@@ -42,7 +42,7 @@ cfgfile=Ndb.cfg
|
||||
stop_ndb=
|
||||
initial_ndb=
|
||||
status_ndb=
|
||||
ndb_discless=0
|
||||
ndb_diskless=0
|
||||
|
||||
ndb_con_op=100000
|
||||
ndb_dmem=80M
|
||||
@@ -54,7 +54,7 @@ while test $# -gt 0; do
|
||||
stop_ndb=1
|
||||
;;
|
||||
--initial)
|
||||
flags_ndb=$flags_ndb" -i"
|
||||
flags_ndb="$flags_ndb -i"
|
||||
initial_ndb=1
|
||||
;;
|
||||
--status)
|
||||
@@ -65,8 +65,8 @@ while test $# -gt 0; do
|
||||
ndb_dmem=40M
|
||||
ndb_imem=12M
|
||||
;;
|
||||
--discless)
|
||||
ndb_discless=1
|
||||
--diskless)
|
||||
ndb_diskless=1
|
||||
;;
|
||||
--data-dir=*)
|
||||
fsdir=`echo "$1" | sed -e "s;--data-dir=;;"`
|
||||
@@ -81,123 +81,101 @@ while test $# -gt 0; do
|
||||
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
|
||||
fs_ndb="$fsdir/ndbcluster-$port_base"
|
||||
|
||||
NDB_HOME=
|
||||
export NDB_CONNECTSTRING
|
||||
if [ ! -x $fsdir ]; then
|
||||
if [ ! -x "$fsdir" ]; then
|
||||
echo "$fsdir missing"
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -x $exec_ndb ]; then
|
||||
if [ ! -x "$exec_ndb" ]; then
|
||||
echo "$exec_ndb missing"
|
||||
exit 1
|
||||
fi
|
||||
if [ ! -x $exec_mgmtsrvr ]; then
|
||||
if [ ! -x "$exec_mgmtsrvr" ]; then
|
||||
echo "$exec_mgmtsrvr missing"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
ndb_host="localhost"
|
||||
ndb_mgmd_port=$port_base
|
||||
NDB_CONNECTSTRING="host=$ndb_host:$ndb_mgmd_port"
|
||||
export NDB_CONNECTSTRING
|
||||
|
||||
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
|
||||
if [ "$initial_ndb" ] ; then
|
||||
[ -d "$fs_ndb" ] || mkdir "$fs_ndb"
|
||||
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
|
||||
if [ -d "$fs_ndb" ]; 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_MaxNoOfConcurrentOperations","$ndb_con_op",g \
|
||||
-e s,"CHOOSE_DataMemory","$ndb_dmem",g \
|
||||
-e s,"CHOOSE_IndexMemory","$ndb_imem",g \
|
||||
-e s,"CHOOSE_Diskless","$ndb_diskless",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 \
|
||||
-e s,"CHOOSE_FILESYSTEM","$fs_ndb",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"
|
||||
> "$fs_ndb/config.ini"
|
||||
fi
|
||||
|
||||
if ( cd $fs_mgm_1 ; echo $NDB_CONNECTSTRING > $cfgfile ; $exec_mgmtsrvr -d -c config.ini ) ; then :; else
|
||||
rm -f "$cfgfile" 2>&1 | cat > /dev/null
|
||||
rm -f "$fs_ndb/$cfgfile" 2>&1 | cat > /dev/null
|
||||
|
||||
if ( cd "$fs_ndb" ; $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
|
||||
cat `find "$fs_ndb" -name 'ndb_*.pid'` > "$fs_ndb/$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 & )
|
||||
echo "Starting ndbd"
|
||||
( cd "$fs_ndb" ; $exec_ndb -d $flags_ndb & )
|
||||
|
||||
cat `find $fs_ndb -name 'node*.pid'` > $pidfile
|
||||
cat `find "$fs_ndb" -name 'ndb_*.pid'` > "$fs_ndb/$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 & )
|
||||
echo "Starting ndbd"
|
||||
( cd "$fs_ndb" ; $exec_ndb -d $flags_ndb & )
|
||||
|
||||
cat `find $fs_ndb -name 'node*.pid'` > $pidfile
|
||||
cat `find "$fs_ndb" -name 'ndb_*.pid'` > "$fs_ndb/$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
|
||||
cat `find "$fs_ndb" -name 'ndb_*.pid'` > $fs_ndb/$pidfile
|
||||
|
||||
status_ndbcluster
|
||||
}
|
||||
|
||||
status_ndbcluster() {
|
||||
# Start management client
|
||||
|
||||
echo "show" | $exec_mgmtclient $ndb_host $ndb_mgmd_port
|
||||
# Start management client
|
||||
echo "show" | $exec_mgmtclient
|
||||
}
|
||||
|
||||
stop_default_ndbcluster() {
|
||||
@@ -206,26 +184,21 @@ stop_default_ndbcluster() {
|
||||
# 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"`
|
||||
#if [ ! -f $cfgfile ] ; then
|
||||
# echo "$cfgfile missing"
|
||||
# exit 1
|
||||
#fi
|
||||
|
||||
# Start management client
|
||||
|
||||
exec_mgmtclient="$exec_mgmtclient --try-reconnect=1 $ndb_host $ndb_mgmd_port"
|
||||
exec_mgmtclient="$exec_mgmtclient --try-reconnect=1"
|
||||
|
||||
echo "$exec_mgmtclient"
|
||||
echo "all stop" | $exec_mgmtclient
|
||||
echo "all stop" | $exec_mgmtclient 2>&1 | cat > /dev/null
|
||||
echo "3 stop" | $exec_mgmtclient 2>&1 | cat > /dev/null
|
||||
|
||||
sleep 5
|
||||
|
||||
if [ -f $pidfile ] ; then
|
||||
kill `cat $pidfile` 2> /dev/null
|
||||
rm $pidfile
|
||||
if [ -f "$fs_ndb/$pidfile" ] ; then
|
||||
kill -9 `cat "$fs_ndb/$pidfile"` 2> /dev/null
|
||||
rm "$fs_ndb/$pidfile"
|
||||
fi
|
||||
|
||||
}
|
||||
|
@@ -476,3 +476,9 @@ 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;
|
||||
create table t1 (a int);
|
||||
alter table t1 rename to `t1\\`;
|
||||
ERROR 42000: Incorrect table name 't1\\'
|
||||
rename table t1 to `t1\\`;
|
||||
ERROR 42000: Incorrect table name 't1\\'
|
||||
drop table t1;
|
||||
|
@@ -201,6 +201,24 @@ a b
|
||||
202 5
|
||||
203 6
|
||||
204 7
|
||||
alter table t1 modify b mediumint;
|
||||
select * from t1 order by b;
|
||||
a b
|
||||
1 1
|
||||
200 2
|
||||
0 3
|
||||
201 4
|
||||
202 5
|
||||
203 6
|
||||
204 7
|
||||
create table t2 (a int);
|
||||
insert t2 values (1),(2);
|
||||
alter table t2 add b int auto_increment primary key;
|
||||
select * from t2;
|
||||
a b
|
||||
1 1
|
||||
2 2
|
||||
drop table t2;
|
||||
delete from t1 where a=0;
|
||||
update t1 set a=0 where b=5;
|
||||
select * from t1 order by b;
|
||||
|
@@ -146,7 +146,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref level level 1 const 1 Using index
|
||||
explain select level,id,parent_id from t1 where level=1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref level level 1 const 1 Using where
|
||||
1 SIMPLE t1 ref level level 1 const 1
|
||||
select level,id from t1 where level=1;
|
||||
level id
|
||||
1 1002
|
||||
|
@@ -59,9 +59,15 @@ concat("-",a,"-",b,"-")
|
||||
-hello-hello-
|
||||
select concat("-",a,"-",b,"-") from t1 where b="hello ";
|
||||
concat("-",a,"-",b,"-")
|
||||
-hello-hello-
|
||||
select concat("-",a,"-",b,"-") from t1 ignore index (b) where b="hello ";
|
||||
concat("-",a,"-",b,"-")
|
||||
-hello-hello-
|
||||
alter table t1 modify b tinytext not null, drop key b, add key (b(100));
|
||||
select concat("-",a,"-",b,"-") from t1;
|
||||
concat("-",a,"-",b,"-")
|
||||
-hello-hello-
|
||||
-hello2-hello2-
|
||||
select concat("-",a,"-",b,"-") from t1 where b="hello ";
|
||||
concat("-",a,"-",b,"-")
|
||||
-hello-hello-
|
||||
@@ -105,8 +111,26 @@ a b
|
||||
aaa bbb
|
||||
select charset(a), charset(b), charset(binary 'ccc') from t1 limit 1;
|
||||
charset(a) charset(b) charset(binary 'ccc')
|
||||
latin1 binary latin1
|
||||
latin1 binary binary
|
||||
select collation(a), collation(b), collation(binary 'ccc') from t1 limit 1;
|
||||
collation(a) collation(b) collation(binary 'ccc')
|
||||
latin1_bin binary latin1_bin
|
||||
latin1_bin binary binary
|
||||
drop table t1;
|
||||
create table t1( firstname char(20), lastname char(20));
|
||||
insert into t1 values ("john","doe"),("John","Doe");
|
||||
select * from t1 where firstname='john' and firstname like binary 'john';
|
||||
firstname lastname
|
||||
john doe
|
||||
select * from t1 where firstname='john' and binary 'john' = firstname;
|
||||
firstname lastname
|
||||
john doe
|
||||
select * from t1 where firstname='john' and firstname = binary 'john';
|
||||
firstname lastname
|
||||
john doe
|
||||
select * from t1 where firstname='John' and firstname like binary 'john';
|
||||
firstname lastname
|
||||
john doe
|
||||
select * from t1 where firstname='john' and firstname like binary 'John';
|
||||
firstname lastname
|
||||
John Doe
|
||||
drop table t1;
|
||||
|
@@ -42,6 +42,9 @@ show tables;
|
||||
Tables_in_test table_type
|
||||
update mysql.user set password=old_password("gambling2") where user=_binary"test";
|
||||
flush privileges;
|
||||
set password="";
|
||||
set password='gambling3';
|
||||
ERROR HY000: Password hash should be a 41-digit hexadecimal number
|
||||
set password=old_password('gambling3');
|
||||
show tables;
|
||||
Tables_in_mysql table_type
|
||||
|
@@ -1,5 +1,5 @@
|
||||
drop table if exists t1,t2,t3;
|
||||
drop database if exists test_$1;
|
||||
drop database if exists mysqltest;
|
||||
create table t1 (b char(0));
|
||||
insert into t1 values (""),(null);
|
||||
select * from t1;
|
||||
@@ -58,18 +58,18 @@ select 1ea10.1a20,1e+ 1e+10 from 1ea10;
|
||||
drop table 1ea10;
|
||||
create table t1 (t1.index int);
|
||||
drop table t1;
|
||||
drop database if exists test_$1;
|
||||
drop database if exists mysqltest;
|
||||
Warnings:
|
||||
Note 1008 Can't drop database 'test_$1'; database doesn't exist
|
||||
create database test_$1;
|
||||
create table test_$1.$test1 (a$1 int, $b int, c$ int);
|
||||
insert into test_$1.$test1 values (1,2,3);
|
||||
select a$1, $b, c$ from test_$1.$test1;
|
||||
Note 1008 Can't drop database 'mysqltest'; database doesn't exist
|
||||
create database mysqltest;
|
||||
create table mysqltest.$test1 (a$1 int, $b int, c$ int);
|
||||
insert into mysqltest.$test1 values (1,2,3);
|
||||
select a$1, $b, c$ from mysqltest.$test1;
|
||||
a$1 $b c$
|
||||
1 2 3
|
||||
create table test_$1.test2$ (a int);
|
||||
drop table test_$1.test2$;
|
||||
drop database test_$1;
|
||||
create table mysqltest.test2$ (a int);
|
||||
drop table mysqltest.test2$;
|
||||
drop database mysqltest;
|
||||
create table `` (a int);
|
||||
ERROR 42000: Incorrect table name ''
|
||||
drop table if exists ``;
|
||||
@@ -298,7 +298,7 @@ select * from t3;
|
||||
id name
|
||||
create table if not exists t3 like t1;
|
||||
Warnings:
|
||||
Warning 1050 Table 't3' already exists
|
||||
Note 1050 Table 't3' already exists
|
||||
select @@warning_count;
|
||||
@@warning_count
|
||||
1
|
||||
@@ -320,9 +320,9 @@ t3 CREATE TABLE `t3` (
|
||||
select * from t3;
|
||||
id name
|
||||
drop table t2, t3;
|
||||
create database test_$1;
|
||||
create table test_$1.t3 like t1;
|
||||
create temporary table t3 like test_$1.t3;
|
||||
create database mysqltest;
|
||||
create table mysqltest.t3 like t1;
|
||||
create temporary table t3 like mysqltest.t3;
|
||||
show create table t3;
|
||||
Table Create Table
|
||||
t3 CREATE TEMPORARY TABLE `t3` (
|
||||
@@ -339,7 +339,7 @@ t2 CREATE TABLE `t2` (
|
||||
select * from t2;
|
||||
id name
|
||||
create table t3 like t1;
|
||||
create table t3 like test_$1.t3;
|
||||
create table t3 like mysqltest.t3;
|
||||
ERROR 42S01: Table 't3' already exists
|
||||
create table non_existing_database.t1 like t1;
|
||||
Got one of the listed errors
|
||||
@@ -351,7 +351,7 @@ create table t3 like `a/a`;
|
||||
ERROR 42000: Incorrect table name 'a/a'
|
||||
drop table t1, t2, t3;
|
||||
drop table t3;
|
||||
drop database test_$1;
|
||||
drop database mysqltest;
|
||||
SET SESSION storage_engine="heap";
|
||||
SELECT @@storage_engine;
|
||||
@@storage_engine
|
||||
@@ -488,12 +488,12 @@ Note 1291 Column 'cset' has duplicated value 'b' in SET
|
||||
Note 1291 Column 'cset' has duplicated value 'B' in SET
|
||||
Note 1291 Column 'cset' has duplicated value 'd' in SET
|
||||
drop table t1, t2, t3;
|
||||
create database test_$1;
|
||||
use test_$1;
|
||||
create database mysqltest;
|
||||
use mysqltest;
|
||||
select database();
|
||||
database()
|
||||
test_$1
|
||||
drop database test_$1;
|
||||
mysqltest
|
||||
drop database mysqltest;
|
||||
select database();
|
||||
database()
|
||||
NULL
|
||||
|
@@ -1,19 +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;
|
||||
CREATE TABLE t2 ( PRIMARY KEY (a) ) ENGINE=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;
|
||||
CREATE TEMPORARY TABLE t2 ( PRIMARY KEY (a) ) ENGINE=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;
|
||||
CREATE TABLE t2 ( PRIMARY KEY (a) ) ENGINE=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;
|
||||
CREATE TEMPORARY TABLE t2 ( PRIMARY KEY (a) ) ENGINE=MYISAM SELECT a FROM t1;
|
||||
ERROR 23000: Duplicate entry '1' for key 1
|
||||
select * from t2;
|
||||
ERROR 42S02: Table 'test.t2' doesn't exist
|
||||
|
4931
mysql-test/r/csv.result
Normal file
4931
mysql-test/r/csv.result
Normal file
File diff suppressed because it is too large
Load Diff
@@ -49,8 +49,8 @@ a b
|
||||
aaa bbb
|
||||
select charset(a), charset(b), charset(binary 'ccc') from t1 limit 1;
|
||||
charset(a) charset(b) charset(binary 'ccc')
|
||||
cp1251 binary cp1251
|
||||
cp1251 binary binary
|
||||
select collation(a), collation(b), collation(binary 'ccc') from t1 limit 1;
|
||||
collation(a) collation(b) collation(binary 'ccc')
|
||||
cp1251_bin binary cp1251_bin
|
||||
cp1251_bin binary binary
|
||||
drop table t1;
|
||||
|
@@ -54,4 +54,12 @@ 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;
|
||||
create table t1 (a char) character set latin1 character set latin2;
|
||||
ERROR HY000: Conflicting declarations: 'CHARACTER SET latin1' and 'CHARACTER SET latin2'
|
||||
create table t1 (a char) character set latin1 collate latin2_bin;
|
||||
ERROR 42000: COLLATION 'latin2_bin' is not valid for CHARACTER SET 'latin1'
|
||||
create database d1 default character set latin1 character set latin2;
|
||||
ERROR HY000: Conflicting declarations: 'CHARACTER SET latin1' and 'CHARACTER SET latin2'
|
||||
create database d1 default character set latin1 collate latin2_bin;
|
||||
ERROR 42000: COLLATION 'latin2_bin' is not valid for CHARACTER SET 'latin1'
|
||||
DROP DATABASE mysqltest1;
|
||||
|
@@ -136,6 +136,30 @@ SET character_set_connection=binary;
|
||||
SELECT 'тест' as s;
|
||||
s
|
||||
тест
|
||||
SET NAMES latin1;
|
||||
CREATE TABLE t1 (`<60>` CHAR(128) DEFAULT '<27>', `<60>1` ENUM('<27>1','<27>2') DEFAULT '<27>2');
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`<60>` char(128) default '<27>',
|
||||
`<60>1` enum('<27>1','<27>2') default '<27>2'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
SHOW COLUMNS FROM t1;
|
||||
Field Type Null Key Default Extra
|
||||
<EFBFBD> char(128) YES <09>
|
||||
<EFBFBD>1 enum('<27>1','<27>2') YES <09>2
|
||||
SET NAMES binary;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`ä` char(128) default 'ä',
|
||||
`ä1` enum('ä1','ä2') default 'ä2'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
SHOW COLUMNS FROM t1;
|
||||
Field Type Null Key Default Extra
|
||||
ä char(128) YES ä
|
||||
ä1 enum('ä1','ä2') YES ä2
|
||||
DROP TABLE t1;
|
||||
SET NAMES binary;
|
||||
CREATE TABLE `good<6F><64><EFBFBD><EFBFBD><EFBFBD>` (a int);
|
||||
ERROR HY000: Invalid utf8 character string: '<27><><EFBFBD><EFBFBD><EFBFBD>'
|
||||
|
@@ -1548,6 +1548,116 @@ Z,z,Ź,ź,Ż,ż
|
||||
ǁ
|
||||
ǂ
|
||||
ǃ
|
||||
select group_concat(c1 order by c1) from t1 group by c1 collate utf8_slovak_ci;
|
||||
group_concat(c1 order by c1)
|
||||
÷
|
||||
×
|
||||
A,a,À,Á,Â,Ã,Å,à,á,â,ã,å,Ā,ā,Ă,ă,Ą,ą,Ǎ,ǎ,Ǟ,ǟ,Ǡ,ǡ,Ǻ,ǻ
|
||||
AA,Aa,aA,aa
|
||||
Ä,ä
|
||||
Æ,æ,Ǣ,ǣ,Ǽ,ǽ
|
||||
B,b
|
||||
ƀ
|
||||
Ɓ
|
||||
Ƃ,ƃ
|
||||
C,c,Ç,ç,Ć,ć,Ĉ,ĉ,Ċ,ċ
|
||||
cH
|
||||
Č,č
|
||||
Ƈ,ƈ
|
||||
D,d,Ď,ď
|
||||
DZ,Dz,dZ,dz,DŽ,Dž,dž,DZ,Dz,dz
|
||||
Đ,đ
|
||||
Ɖ
|
||||
Ɗ
|
||||
Ƌ,ƌ
|
||||
Ð,ð
|
||||
E,e,È,É,Ê,Ë,è,é,ê,ë,Ē,ē,Ĕ,ĕ,Ė,ė,Ę,ę,Ě,ě
|
||||
Ǝ,ǝ
|
||||
Ə
|
||||
Ɛ
|
||||
F,f
|
||||
Ƒ,ƒ
|
||||
G,g,Ĝ,ĝ,Ğ,ğ,Ġ,ġ,Ģ,ģ,Ǧ,ǧ,Ǵ,ǵ
|
||||
Ǥ,ǥ
|
||||
Ɠ
|
||||
Ɣ
|
||||
Ƣ,ƣ
|
||||
H,h,Ĥ,ĥ
|
||||
CH,Ch,ch
|
||||
ƕ,Ƕ
|
||||
Ħ,ħ
|
||||
I,i,Ì,Í,Î,Ï,ì,í,î,ï,Ĩ,ĩ,Ī,ī,Ĭ,ĭ,Į,į,İ,Ǐ,ǐ
|
||||
IJ,Ij,iJ,ij,IJ,ij
|
||||
ı
|
||||
Ɨ
|
||||
Ɩ
|
||||
J,j,Ĵ,ĵ,ǰ
|
||||
K,k,Ķ,ķ,Ǩ,ǩ
|
||||
Ƙ,ƙ
|
||||
L,l,Ĺ,ĺ,Ļ,ļ,Ľ,ľ
|
||||
Ŀ,ŀ
|
||||
LJ,Lj,lJ,lj,LJ,Lj,lj
|
||||
LL,Ll,lL,ll
|
||||
Ł,ł
|
||||
ƚ
|
||||
ƛ
|
||||
M,m
|
||||
N,n,Ñ,ñ,Ń,ń,Ņ,ņ,Ň,ň,Ǹ,ǹ
|
||||
NJ,Nj,nJ,nj,NJ,Nj,nj
|
||||
Ɲ
|
||||
ƞ
|
||||
Ŋ,ŋ
|
||||
O,o,Ò,Ó,Õ,Ö,ò,ó,õ,ö,Ō,ō,Ŏ,ŏ,Ő,ő,Ơ,ơ,Ǒ,ǒ,Ǫ,ǫ,Ǭ,ǭ
|
||||
OE,Oe,oE,oe,Œ,œ
|
||||
Ô,ô
|
||||
Ø,ø,Ǿ,ǿ
|
||||
Ɔ
|
||||
Ɵ
|
||||
P,p
|
||||
Ƥ,ƥ
|
||||
Q,q
|
||||
ĸ
|
||||
R,r,Ŕ,ŕ,Ŗ,ŗ,Ř,ř
|
||||
RR,Rr,rR,rr
|
||||
Ʀ
|
||||
S,s,Ś,ś,Ŝ,ŝ,Ş,ş,ſ
|
||||
SS,Ss,sS,ss,ß
|
||||
Š,š
|
||||
Ʃ
|
||||
ƪ
|
||||
T,t,Ţ,ţ,Ť,ť
|
||||
ƾ
|
||||
Ŧ,ŧ
|
||||
ƫ
|
||||
Ƭ,ƭ
|
||||
Ʈ
|
||||
U,u,Ù,Ú,Û,Ü,ù,ú,û,ü,Ũ,ũ,Ū,ū,Ŭ,ŭ,Ů,ů,Ű,ű,Ų,ų,Ư,ư,Ǔ,ǔ,Ǖ,ǖ,Ǘ,ǘ,Ǚ,ǚ,Ǜ,ǜ
|
||||
Ɯ
|
||||
Ʊ
|
||||
V,v
|
||||
Ʋ
|
||||
W,w,Ŵ,ŵ
|
||||
X,x
|
||||
Y,y,Ý,ý,ÿ,Ŷ,ŷ,Ÿ
|
||||
Ƴ,ƴ
|
||||
Z,z,Ź,ź,Ż,ż
|
||||
ƍ
|
||||
Ž,ž
|
||||
Ƶ,ƶ
|
||||
Ʒ,Ǯ,ǯ
|
||||
Ƹ,ƹ
|
||||
ƺ
|
||||
Þ,þ
|
||||
ƿ,Ƿ
|
||||
ƻ
|
||||
Ƨ,ƨ
|
||||
Ƽ,ƽ
|
||||
Ƅ,ƅ
|
||||
ʼn
|
||||
ǀ
|
||||
ǁ
|
||||
ǂ
|
||||
ǃ
|
||||
select group_concat(c1 order by c1) from t1 group by c1 collate utf8_spanish2_ci;
|
||||
group_concat(c1 order by c1)
|
||||
÷
|
||||
|
@@ -464,3 +464,19 @@ HEX(a)
|
||||
AAAA
|
||||
000AAAAA
|
||||
DROP TABLE t1;
|
||||
create table t1 (s1 char character set `ucs2` collate `ucs2_czech_ci`);
|
||||
insert into t1 values ('0'),('1'),('2'),('a'),('b'),('c');
|
||||
select s1 from t1 where s1 > 'a' order by s1;
|
||||
s1
|
||||
b
|
||||
c
|
||||
drop table t1;
|
||||
create table t1(a char(1)) default charset = ucs2;
|
||||
insert into t1 values ('a'),('b'),('c');
|
||||
alter table t1 modify a char(5);
|
||||
select a, hex(a) from t1;
|
||||
a hex(a)
|
||||
a 0061
|
||||
b 0062
|
||||
c 0063
|
||||
drop table t1;
|
||||
|
@@ -1,4 +1,4 @@
|
||||
drop table if exists t1;
|
||||
drop table if exists t1,t2;
|
||||
set names utf8;
|
||||
select left(_utf8 0xD0B0D0B1D0B2,1);
|
||||
left(_utf8 0xD0B0D0B1D0B2,1)
|
||||
@@ -78,6 +78,21 @@ SELECT 'a\t' < 'a';
|
||||
SELECT 'a\t' < 'a ';
|
||||
'a\t' < 'a '
|
||||
1
|
||||
SELECT 'a' = 'a ' collate utf8_bin;
|
||||
'a' = 'a ' collate utf8_bin
|
||||
1
|
||||
SELECT 'a\0' < 'a' collate utf8_bin;
|
||||
'a\0' < 'a' collate utf8_bin
|
||||
1
|
||||
SELECT 'a\0' < 'a ' collate utf8_bin;
|
||||
'a\0' < 'a ' collate utf8_bin
|
||||
1
|
||||
SELECT 'a\t' < 'a' collate utf8_bin;
|
||||
'a\t' < 'a' collate utf8_bin
|
||||
1
|
||||
SELECT 'a\t' < 'a ' collate utf8_bin;
|
||||
'a\t' < 'a ' collate utf8_bin
|
||||
1
|
||||
CREATE TABLE t1 (a char(10) character set utf8 not null);
|
||||
INSERT INTO t1 VALUES ('a'),('a\0'),('a\t'),('a ');
|
||||
SELECT hex(a),STRCMP(a,'a'), STRCMP(a,'a ') FROM t1;
|
||||
@@ -93,6 +108,9 @@ this is a test
|
||||
select insert("aa",100,1,"b"),insert("aa",1,3,"b");
|
||||
insert("aa",100,1,"b") insert("aa",1,3,"b")
|
||||
aa b
|
||||
select char_length(left(@a:='тест',5)), length(@a), @a;
|
||||
char_length(left(@a:='тест',5)) length(@a) @a
|
||||
4 8 тест
|
||||
create table t1 select date_format("2004-01-19 10:10:10", "%Y-%m-%d");
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
@@ -243,3 +261,381 @@ select 'zвасяz' rlike '[[:<:]]вася[[:>:]]';
|
||||
CREATE TABLE t1 (a enum ('Y', 'N') DEFAULT 'N' COLLATE utf8_unicode_ci);
|
||||
ALTER TABLE t1 ADD COLUMN b CHAR(20);
|
||||
DROP TABLE t1;
|
||||
set names utf8;
|
||||
create table t1 (a enum('aaaa','проба') character set utf8);
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` enum('aaaa','проба') character set utf8 default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
insert into t1 values ('проба');
|
||||
select * from t1;
|
||||
a
|
||||
проба
|
||||
create table t2 select ifnull(a,a) from t1;
|
||||
show create table t2;
|
||||
Table Create Table
|
||||
t2 CREATE TABLE `t2` (
|
||||
`ifnull(a,a)` char(5) character set utf8 default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
select * from t2;
|
||||
ifnull(a,a)
|
||||
проба
|
||||
drop table t1;
|
||||
drop table t2;
|
||||
create table t1 (c varchar(30) character set utf8, unique(c(10)));
|
||||
insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
|
||||
insert into t1 values ('aaaaaaaaaa');
|
||||
insert into t1 values ('aaaaaaaaaaa');
|
||||
ERROR 23000: Duplicate entry 'aaaaaaaaaaa' for key 1
|
||||
insert into t1 values ('aaaaaaaaaaaa');
|
||||
ERROR 23000: Duplicate entry 'aaaaaaaaaaaa' for key 1
|
||||
insert into t1 values (repeat('b',20));
|
||||
select c c1 from t1 where c='1';
|
||||
c1
|
||||
1
|
||||
select c c2 from t1 where c='2';
|
||||
c2
|
||||
2
|
||||
select c c3 from t1 where c='3';
|
||||
c3
|
||||
3
|
||||
select c cx from t1 where c='x';
|
||||
cx
|
||||
x
|
||||
select c cy from t1 where c='y';
|
||||
cy
|
||||
y
|
||||
select c cz from t1 where c='z';
|
||||
cz
|
||||
z
|
||||
select c ca10 from t1 where c='aaaaaaaaaa';
|
||||
ca10
|
||||
aaaaaaaaaa
|
||||
select c cb20 from t1 where c=repeat('b',20);
|
||||
cb20
|
||||
bbbbbbbbbbbbbbbbbbbb
|
||||
drop table t1;
|
||||
create table t1 (c char(3) character set utf8, unique (c(2)));
|
||||
insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
|
||||
insert into t1 values ('a');
|
||||
insert into t1 values ('aa');
|
||||
insert into t1 values ('aaa');
|
||||
ERROR 23000: Duplicate entry 'aaa' for key 1
|
||||
insert into t1 values ('b');
|
||||
insert into t1 values ('bb');
|
||||
insert into t1 values ('bbb');
|
||||
ERROR 23000: Duplicate entry 'bbb' for key 1
|
||||
insert into t1 values ('а');
|
||||
insert into t1 values ('аа');
|
||||
insert into t1 values ('ааа');
|
||||
ERROR 23000: Duplicate entry 'ааа' for key 1
|
||||
insert into t1 values ('б');
|
||||
insert into t1 values ('бб');
|
||||
insert into t1 values ('ббб');
|
||||
ERROR 23000: Duplicate entry 'ббб' for key 1
|
||||
insert into t1 values ('ꪪ');
|
||||
insert into t1 values ('ꪪꪪ');
|
||||
insert into t1 values ('ꪪꪪꪪ');
|
||||
ERROR 23000: Duplicate entry 'ꪪꪪ' for key 1
|
||||
drop table t1;
|
||||
create table t1 (
|
||||
c char(10) character set utf8,
|
||||
unique key a using hash (c(1))
|
||||
) engine=heap;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c` char(10) character set utf8 default NULL,
|
||||
UNIQUE KEY `a` (`c`(1))
|
||||
) ENGINE=HEAP DEFAULT CHARSET=latin1
|
||||
insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
|
||||
insert into t1 values ('aa');
|
||||
ERROR 23000: Duplicate entry 'aa' for key 1
|
||||
insert into t1 values ('aaa');
|
||||
ERROR 23000: Duplicate entry 'aaa' for key 1
|
||||
insert into t1 values ('б');
|
||||
insert into t1 values ('бб');
|
||||
ERROR 23000: Duplicate entry 'б<>' for key 1
|
||||
insert into t1 values ('ббб');
|
||||
ERROR 23000: Duplicate entry 'б<>' for key 1
|
||||
select c as c_all from t1 order by c;
|
||||
c_all
|
||||
a
|
||||
b
|
||||
c
|
||||
d
|
||||
e
|
||||
f
|
||||
б
|
||||
select c as c_a from t1 where c='a';
|
||||
c_a
|
||||
a
|
||||
select c as c_a from t1 where c='б';
|
||||
c_a
|
||||
б
|
||||
drop table t1;
|
||||
create table t1 (
|
||||
c char(10) character set utf8,
|
||||
unique key a using btree (c(1))
|
||||
) engine=heap;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c` char(10) character set utf8 default NULL,
|
||||
UNIQUE KEY `a` TYPE BTREE (`c`(1))
|
||||
) ENGINE=HEAP DEFAULT CHARSET=latin1
|
||||
insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
|
||||
insert into t1 values ('aa');
|
||||
ERROR 23000: Duplicate entry 'aa' for key 1
|
||||
insert into t1 values ('aaa');
|
||||
ERROR 23000: Duplicate entry 'aaa' for key 1
|
||||
insert into t1 values ('б');
|
||||
insert into t1 values ('бб');
|
||||
ERROR 23000: Duplicate entry 'б<>' for key 1
|
||||
insert into t1 values ('ббб');
|
||||
ERROR 23000: Duplicate entry 'б<>' for key 1
|
||||
select c as c_all from t1 order by c;
|
||||
c_all
|
||||
a
|
||||
b
|
||||
c
|
||||
d
|
||||
e
|
||||
f
|
||||
б
|
||||
select c as c_a from t1 where c='a';
|
||||
c_a
|
||||
a
|
||||
select c as c_a from t1 where c='б';
|
||||
c_a
|
||||
б
|
||||
drop table t1;
|
||||
create table t1 (
|
||||
c char(10) character set utf8,
|
||||
unique key a (c(1))
|
||||
) engine=bdb;
|
||||
insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
|
||||
insert into t1 values ('aa');
|
||||
ERROR 23000: Duplicate entry 'aa' for key 1
|
||||
insert into t1 values ('aaa');
|
||||
ERROR 23000: Duplicate entry 'aaa' for key 1
|
||||
insert into t1 values ('б');
|
||||
insert into t1 values ('бб');
|
||||
ERROR 23000: Duplicate entry 'б<>' for key 1
|
||||
insert into t1 values ('ббб');
|
||||
ERROR 23000: Duplicate entry 'б<>' for key 1
|
||||
select c as c_all from t1 order by c;
|
||||
c_all
|
||||
a
|
||||
b
|
||||
c
|
||||
d
|
||||
e
|
||||
f
|
||||
б
|
||||
select c as c_a from t1 where c='a';
|
||||
c_a
|
||||
a
|
||||
select c as c_a from t1 where c='б';
|
||||
c_a
|
||||
б
|
||||
drop table t1;
|
||||
create table t1 (c varchar(30) character set utf8 collate utf8_bin, unique(c(10)));
|
||||
insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
|
||||
insert into t1 values ('aaaaaaaaaa');
|
||||
insert into t1 values ('aaaaaaaaaaa');
|
||||
ERROR 23000: Duplicate entry 'aaaaaaaaaaa' for key 1
|
||||
insert into t1 values ('aaaaaaaaaaaa');
|
||||
ERROR 23000: Duplicate entry 'aaaaaaaaaaaa' for key 1
|
||||
insert into t1 values (repeat('b',20));
|
||||
select c c1 from t1 where c='1';
|
||||
c1
|
||||
1
|
||||
select c c2 from t1 where c='2';
|
||||
c2
|
||||
2
|
||||
select c c3 from t1 where c='3';
|
||||
c3
|
||||
3
|
||||
select c cx from t1 where c='x';
|
||||
cx
|
||||
x
|
||||
select c cy from t1 where c='y';
|
||||
cy
|
||||
y
|
||||
select c cz from t1 where c='z';
|
||||
cz
|
||||
z
|
||||
select c ca10 from t1 where c='aaaaaaaaaa';
|
||||
ca10
|
||||
aaaaaaaaaa
|
||||
select c cb20 from t1 where c=repeat('b',20);
|
||||
cb20
|
||||
bbbbbbbbbbbbbbbbbbbb
|
||||
drop table t1;
|
||||
create table t1 (c char(3) character set utf8 collate utf8_bin, unique (c(2)));
|
||||
insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
|
||||
insert into t1 values ('a');
|
||||
insert into t1 values ('aa');
|
||||
insert into t1 values ('aaa');
|
||||
ERROR 23000: Duplicate entry 'aaa' for key 1
|
||||
insert into t1 values ('b');
|
||||
insert into t1 values ('bb');
|
||||
insert into t1 values ('bbb');
|
||||
ERROR 23000: Duplicate entry 'bbb' for key 1
|
||||
insert into t1 values ('а');
|
||||
insert into t1 values ('аа');
|
||||
insert into t1 values ('ааа');
|
||||
ERROR 23000: Duplicate entry 'ааа' for key 1
|
||||
insert into t1 values ('б');
|
||||
insert into t1 values ('бб');
|
||||
insert into t1 values ('ббб');
|
||||
ERROR 23000: Duplicate entry 'ббб' for key 1
|
||||
insert into t1 values ('ꪪ');
|
||||
insert into t1 values ('ꪪꪪ');
|
||||
insert into t1 values ('ꪪꪪꪪ');
|
||||
ERROR 23000: Duplicate entry 'ꪪꪪ' for key 1
|
||||
drop table t1;
|
||||
create table t1 (
|
||||
c char(10) character set utf8 collate utf8_bin,
|
||||
unique key a using hash (c(1))
|
||||
) engine=heap;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c` char(10) character set utf8 collate utf8_bin default NULL,
|
||||
UNIQUE KEY `a` (`c`(1))
|
||||
) ENGINE=HEAP DEFAULT CHARSET=latin1
|
||||
insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
|
||||
insert into t1 values ('aa');
|
||||
ERROR 23000: Duplicate entry 'aa' for key 1
|
||||
insert into t1 values ('aaa');
|
||||
ERROR 23000: Duplicate entry 'aaa' for key 1
|
||||
insert into t1 values ('б');
|
||||
insert into t1 values ('бб');
|
||||
ERROR 23000: Duplicate entry 'б<>' for key 1
|
||||
insert into t1 values ('ббб');
|
||||
ERROR 23000: Duplicate entry 'б<>' for key 1
|
||||
select c as c_all from t1 order by c;
|
||||
c_all
|
||||
a
|
||||
b
|
||||
c
|
||||
d
|
||||
e
|
||||
f
|
||||
б
|
||||
select c as c_a from t1 where c='a';
|
||||
c_a
|
||||
a
|
||||
select c as c_a from t1 where c='б';
|
||||
c_a
|
||||
б
|
||||
drop table t1;
|
||||
create table t1 (
|
||||
c char(10) character set utf8 collate utf8_bin,
|
||||
unique key a using btree (c(1))
|
||||
) engine=heap;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c` char(10) character set utf8 collate utf8_bin default NULL,
|
||||
UNIQUE KEY `a` TYPE BTREE (`c`(1))
|
||||
) ENGINE=HEAP DEFAULT CHARSET=latin1
|
||||
insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
|
||||
insert into t1 values ('aa');
|
||||
ERROR 23000: Duplicate entry 'aa' for key 1
|
||||
insert into t1 values ('aaa');
|
||||
ERROR 23000: Duplicate entry 'aaa' for key 1
|
||||
insert into t1 values ('б');
|
||||
insert into t1 values ('бб');
|
||||
ERROR 23000: Duplicate entry 'б<>' for key 1
|
||||
insert into t1 values ('ббб');
|
||||
ERROR 23000: Duplicate entry 'б<>' for key 1
|
||||
select c as c_all from t1 order by c;
|
||||
c_all
|
||||
a
|
||||
b
|
||||
c
|
||||
d
|
||||
e
|
||||
f
|
||||
б
|
||||
select c as c_a from t1 where c='a';
|
||||
c_a
|
||||
a
|
||||
select c as c_a from t1 where c='б';
|
||||
c_a
|
||||
б
|
||||
drop table t1;
|
||||
create table t1 (
|
||||
c char(10) character set utf8 collate utf8_bin,
|
||||
unique key a (c(1))
|
||||
) engine=bdb;
|
||||
insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
|
||||
insert into t1 values ('aa');
|
||||
ERROR 23000: Duplicate entry 'aa' for key 1
|
||||
insert into t1 values ('aaa');
|
||||
ERROR 23000: Duplicate entry 'aaa' for key 1
|
||||
insert into t1 values ('б');
|
||||
insert into t1 values ('бб');
|
||||
ERROR 23000: Duplicate entry 'б<>' for key 1
|
||||
insert into t1 values ('ббб');
|
||||
ERROR 23000: Duplicate entry 'б<>' for key 1
|
||||
select c as c_all from t1 order by c;
|
||||
c_all
|
||||
a
|
||||
b
|
||||
c
|
||||
d
|
||||
e
|
||||
f
|
||||
б
|
||||
select c as c_a from t1 where c='a';
|
||||
c_a
|
||||
a
|
||||
select c as c_a from t1 where c='б';
|
||||
c_a
|
||||
б
|
||||
drop table t1;
|
||||
create table t1 (
|
||||
str varchar(255) character set utf8 not null,
|
||||
key str (str(2))
|
||||
) engine=myisam;
|
||||
INSERT INTO t1 VALUES ('str');
|
||||
INSERT INTO t1 VALUES ('str2');
|
||||
select * from t1 where str='str';
|
||||
str
|
||||
str
|
||||
drop table t1;
|
||||
create table t1 (
|
||||
str varchar(255) character set utf8 not null,
|
||||
key str using btree (str(2))
|
||||
) engine=heap;
|
||||
INSERT INTO t1 VALUES ('str');
|
||||
INSERT INTO t1 VALUES ('str2');
|
||||
select * from t1 where str='str';
|
||||
str
|
||||
str
|
||||
drop table t1;
|
||||
create table t1 (
|
||||
str varchar(255) character set utf8 not null,
|
||||
key str using hash (str(2))
|
||||
) engine=heap;
|
||||
INSERT INTO t1 VALUES ('str');
|
||||
INSERT INTO t1 VALUES ('str2');
|
||||
select * from t1 where str='str';
|
||||
str
|
||||
str
|
||||
drop table t1;
|
||||
create table t1 (
|
||||
str varchar(255) character set utf8 not null,
|
||||
key str (str(2))
|
||||
) engine=bdb;
|
||||
INSERT INTO t1 VALUES ('str');
|
||||
INSERT INTO t1 VALUES ('str2');
|
||||
select * from t1 where str='str';
|
||||
str
|
||||
str
|
||||
drop table t1;
|
||||
|
@@ -90,16 +90,23 @@ insert into t1 values
|
||||
('2003-01-02 11:11:12Pm', '%Y-%m-%d %h:%i:%S%p'),
|
||||
('10:20:10', '%H:%i:%s'),
|
||||
('10:20:10', '%h:%i:%s.%f'),
|
||||
('10:20:10', '%T'),
|
||||
('10:20:10AM', '%h:%i:%s%p'),
|
||||
('10:20:10AM', '%r'),
|
||||
('10:20:10.44AM', '%h:%i:%s.%f%p'),
|
||||
('15-01-2001 12:59:58', '%d-%m-%Y %H:%i:%S'),
|
||||
('15 September 2001', '%d %M %Y'),
|
||||
('15 SEPTEMB 2001', '%d %M %Y'),
|
||||
('15 MAY 2001', '%d %b %Y'),
|
||||
('15th May 2001', '%D %b %Y'),
|
||||
('Sunday 15 MAY 2001', '%W %d %b %Y'),
|
||||
('Sund 15 MAY 2001', '%W %d %b %Y'),
|
||||
('Tuesday 00 2002', '%W %U %Y'),
|
||||
('Thursday 53 1998', '%W %u %Y'),
|
||||
('Sunday 01 2001', '%W %v %x'),
|
||||
('Tuesday 52 2001', '%W %V %X'),
|
||||
('060 2004', '%j %Y'),
|
||||
('4 53 1998', '%w %u %Y'),
|
||||
('15-01-2001', '%d-%m-%Y %H:%i:%S'),
|
||||
('15-01-20', '%d-%m-%y'),
|
||||
('15-2001-1', '%d-%Y-%c');
|
||||
@@ -114,16 +121,23 @@ date format str_to_date
|
||||
2003-01-02 11:11:12Pm %Y-%m-%d %h:%i:%S%p 2003-01-02 23:11:12
|
||||
10:20:10 %H:%i:%s 0000-00-00 10:20:10
|
||||
10:20:10 %h:%i:%s.%f 0000-00-00 10:20:10
|
||||
10:20:10 %T 0000-00-00 10:20:10
|
||||
10:20:10AM %h:%i:%s%p 0000-00-00 10:20:10
|
||||
10:20:10AM %r 0000-00-00 10:20:10
|
||||
10:20:10.44AM %h:%i:%s.%f%p 0000-00-00 10:20:10.440000
|
||||
15-01-2001 12:59:58 %d-%m-%Y %H:%i:%S 2001-01-15 12:59:58
|
||||
15 September 2001 %d %M %Y 2001-09-15 00:00:00
|
||||
15 SEPTEMB 2001 %d %M %Y 2001-09-15 00:00:00
|
||||
15 MAY 2001 %d %b %Y 2001-05-15 00:00:00
|
||||
15th May 2001 %D %b %Y 2001-05-15 00:00:00
|
||||
Sunday 15 MAY 2001 %W %d %b %Y 2001-05-15 00:00:00
|
||||
Sund 15 MAY 2001 %W %d %b %Y 2001-05-15 00:00:00
|
||||
Tuesday 00 2002 %W %U %Y 2002-01-01 00:00:00
|
||||
Thursday 53 1998 %W %u %Y 1998-12-31 00:00:00
|
||||
Sunday 01 2001 %W %v %x 2001-01-07 00:00:00
|
||||
Tuesday 52 2001 %W %V %X 2002-01-01 00:00:00
|
||||
060 2004 %j %Y 2004-02-29 00:00:00
|
||||
4 53 1998 %w %u %Y 1998-12-31 00:00:00
|
||||
15-01-2001 %d-%m-%Y %H:%i:%S 2001-01-15 00:00:00
|
||||
15-01-20 %d-%m-%y 2020-01-15 00:00:00
|
||||
15-2001-1 %d-%Y-%c 2001-01-15 00:00:00
|
||||
@@ -138,16 +152,23 @@ date format con
|
||||
2003-01-02 11:11:12Pm %Y-%m-%d %h:%i:%S%p 2003-01-02 23:11:12
|
||||
10:20:10 %H:%i:%s 0000-00-00 10:20:10
|
||||
10:20:10 %h:%i:%s.%f 0000-00-00 10:20:10
|
||||
10:20:10 %T 0000-00-00 10:20:10
|
||||
10:20:10AM %h:%i:%s%p 0000-00-00 10:20:10
|
||||
10:20:10AM %r 0000-00-00 10:20:10
|
||||
10:20:10.44AM %h:%i:%s.%f%p 0000-00-00 10:20:10.440000
|
||||
15-01-2001 12:59:58 %d-%m-%Y %H:%i:%S 2001-01-15 12:59:58
|
||||
15 September 2001 %d %M %Y 2001-09-15 00:00:00
|
||||
15 SEPTEMB 2001 %d %M %Y 2001-09-15 00:00:00
|
||||
15 MAY 2001 %d %b %Y 2001-05-15 00:00:00
|
||||
15th May 2001 %D %b %Y 2001-05-15 00:00:00
|
||||
Sunday 15 MAY 2001 %W %d %b %Y 2001-05-15 00:00:00
|
||||
Sund 15 MAY 2001 %W %d %b %Y 2001-05-15 00:00:00
|
||||
Tuesday 00 2002 %W %U %Y 2002-01-01 00:00:00
|
||||
Thursday 53 1998 %W %u %Y 1998-12-31 00:00:00
|
||||
Sunday 01 2001 %W %v %x 2001-01-07 00:00:00
|
||||
Tuesday 52 2001 %W %V %X 2002-01-01 00:00:00
|
||||
060 2004 %j %Y 2004-02-29 00:00:00
|
||||
4 53 1998 %w %u %Y 1998-12-31 00:00:00
|
||||
15-01-2001 %d-%m-%Y %H:%i:%S 2001-01-15 00:00:00
|
||||
15-01-20 %d-%m-%y 2020-01-15 00:00:00
|
||||
15-2001-1 %d-%Y-%c 2001-01-15 00:00:00
|
||||
@@ -162,16 +183,23 @@ date format datetime
|
||||
2003-01-02 11:11:12Pm %Y-%m-%d %h:%i:%S%p 2003-01-02 23:11:12
|
||||
10:20:10 %H:%i:%s 0000-00-00 10:20:10
|
||||
10:20:10 %h:%i:%s.%f 0000-00-00 10:20:10
|
||||
10:20:10 %T 0000-00-00 10:20:10
|
||||
10:20:10AM %h:%i:%s%p 0000-00-00 10:20:10
|
||||
10:20:10AM %r 0000-00-00 10:20:10
|
||||
10:20:10.44AM %h:%i:%s.%f%p 0000-00-00 10:20:10.440000
|
||||
15-01-2001 12:59:58 %d-%m-%Y %H:%i:%S 2001-01-15 12:59:58
|
||||
15 September 2001 %d %M %Y 2001-09-15 00:00:00
|
||||
15 SEPTEMB 2001 %d %M %Y 2001-09-15 00:00:00
|
||||
15 MAY 2001 %d %b %Y 2001-05-15 00:00:00
|
||||
15th May 2001 %D %b %Y 2001-05-15 00:00:00
|
||||
Sunday 15 MAY 2001 %W %d %b %Y 2001-05-15 00:00:00
|
||||
Sund 15 MAY 2001 %W %d %b %Y 2001-05-15 00:00:00
|
||||
Tuesday 00 2002 %W %U %Y 2002-01-01 00:00:00
|
||||
Thursday 53 1998 %W %u %Y 1998-12-31 00:00:00
|
||||
Sunday 01 2001 %W %v %x 2001-01-07 00:00:00
|
||||
Tuesday 52 2001 %W %V %X 2002-01-01 00:00:00
|
||||
060 2004 %j %Y 2004-02-29 00:00:00
|
||||
4 53 1998 %w %u %Y 1998-12-31 00:00:00
|
||||
15-01-2001 %d-%m-%Y %H:%i:%S 2001-01-15 00:00:00
|
||||
15-01-20 %d-%m-%y 2020-01-15 00:00:00
|
||||
15-2001-1 %d-%Y-%c 2001-01-15 00:00:00
|
||||
@@ -186,16 +214,23 @@ date format date2
|
||||
2003-01-02 11:11:12Pm %Y-%m-%d %h:%i:%S%p 2003-01-02
|
||||
10:20:10 %H:%i:%s 0000-00-00
|
||||
10:20:10 %h:%i:%s.%f 0000-00-00
|
||||
10:20:10 %T 0000-00-00
|
||||
10:20:10AM %h:%i:%s%p 0000-00-00
|
||||
10:20:10AM %r 0000-00-00
|
||||
10:20:10.44AM %h:%i:%s.%f%p 0000-00-00
|
||||
15-01-2001 12:59:58 %d-%m-%Y %H:%i:%S 2001-01-15
|
||||
15 September 2001 %d %M %Y 2001-09-15
|
||||
15 SEPTEMB 2001 %d %M %Y 2001-09-15
|
||||
15 MAY 2001 %d %b %Y 2001-05-15
|
||||
15th May 2001 %D %b %Y 2001-05-15
|
||||
Sunday 15 MAY 2001 %W %d %b %Y 2001-05-15
|
||||
Sund 15 MAY 2001 %W %d %b %Y 2001-05-15
|
||||
Tuesday 00 2002 %W %U %Y 2002-01-01
|
||||
Thursday 53 1998 %W %u %Y 1998-12-31
|
||||
Sunday 01 2001 %W %v %x 2001-01-07
|
||||
Tuesday 52 2001 %W %V %X 2002-01-01
|
||||
060 2004 %j %Y 2004-02-29
|
||||
4 53 1998 %w %u %Y 1998-12-31
|
||||
15-01-2001 %d-%m-%Y %H:%i:%S 2001-01-15
|
||||
15-01-20 %d-%m-%y 2020-01-15
|
||||
15-2001-1 %d-%Y-%c 2001-01-15
|
||||
@@ -210,16 +245,23 @@ date format time
|
||||
2003-01-02 11:11:12Pm %Y-%m-%d %h:%i:%S%p 23:11:12
|
||||
10:20:10 %H:%i:%s 10:20:10
|
||||
10:20:10 %h:%i:%s.%f 10:20:10
|
||||
10:20:10 %T 10:20:10
|
||||
10:20:10AM %h:%i:%s%p 10:20:10
|
||||
10:20:10AM %r 10:20:10
|
||||
10:20:10.44AM %h:%i:%s.%f%p 10:20:10.440000
|
||||
15-01-2001 12:59:58 %d-%m-%Y %H:%i:%S 12:59:58
|
||||
15 September 2001 %d %M %Y 00:00:00
|
||||
15 SEPTEMB 2001 %d %M %Y 00:00:00
|
||||
15 MAY 2001 %d %b %Y 00:00:00
|
||||
15th May 2001 %D %b %Y 00:00:00
|
||||
Sunday 15 MAY 2001 %W %d %b %Y 00:00:00
|
||||
Sund 15 MAY 2001 %W %d %b %Y 00:00:00
|
||||
Tuesday 00 2002 %W %U %Y 00:00:00
|
||||
Thursday 53 1998 %W %u %Y 00:00:00
|
||||
Sunday 01 2001 %W %v %x 00:00:00
|
||||
Tuesday 52 2001 %W %V %X 00:00:00
|
||||
060 2004 %j %Y 00:00:00
|
||||
4 53 1998 %w %u %Y 00:00:00
|
||||
15-01-2001 %d-%m-%Y %H:%i:%S 00:00:00
|
||||
15-01-20 %d-%m-%y 00:00:00
|
||||
15-2001-1 %d-%Y-%c 00:00:00
|
||||
@@ -234,16 +276,23 @@ date format time2
|
||||
2003-01-02 11:11:12Pm %Y-%m-%d %h:%i:%S%p 23:11:12
|
||||
10:20:10 %H:%i:%s 10:20:10
|
||||
10:20:10 %h:%i:%s.%f 10:20:10
|
||||
10:20:10 %T 10:20:10
|
||||
10:20:10AM %h:%i:%s%p 10:20:10
|
||||
10:20:10AM %r 10:20:10
|
||||
10:20:10.44AM %h:%i:%s.%f%p 10:20:10.440000
|
||||
15-01-2001 12:59:58 %d-%m-%Y %H:%i:%S 12:59:58
|
||||
15 September 2001 %d %M %Y 00:00:00
|
||||
15 SEPTEMB 2001 %d %M %Y 00:00:00
|
||||
15 MAY 2001 %d %b %Y 00:00:00
|
||||
15th May 2001 %D %b %Y 00:00:00
|
||||
Sunday 15 MAY 2001 %W %d %b %Y 00:00:00
|
||||
Sund 15 MAY 2001 %W %d %b %Y 00:00:00
|
||||
Tuesday 00 2002 %W %U %Y 00:00:00
|
||||
Thursday 53 1998 %W %u %Y 00:00:00
|
||||
Sunday 01 2001 %W %v %x 00:00:00
|
||||
Tuesday 52 2001 %W %V %X 00:00:00
|
||||
060 2004 %j %Y 00:00:00
|
||||
4 53 1998 %w %u %Y 00:00:00
|
||||
15-01-2001 %d-%m-%Y %H:%i:%S 00:00:00
|
||||
15-01-20 %d-%m-%y 00:00:00
|
||||
15-2001-1 %d-%Y-%c 00:00:00
|
||||
@@ -258,10 +307,13 @@ insert into t1 values
|
||||
('15 Septembei 2001', '%d %M %Y'),
|
||||
('15 Ju 2001', '%d %M %Y'),
|
||||
('Sund 15 MA', '%W %d %b %Y'),
|
||||
('Sunday 01 2001', '%W %V %X'),
|
||||
('Thursdai 12 1998', '%W %u %Y'),
|
||||
(NULL, get_format(DATE,'USA')),
|
||||
('Tuesday 52 2001', '%W %V %X');
|
||||
('Sunday 01 2001', '%W %v %X'),
|
||||
('Tuesday 52 2001', '%W %V %x'),
|
||||
('Tuesday 52 2001', '%W %V %Y'),
|
||||
('Tuesday 52 2001', '%W %u %x'),
|
||||
('7 53 1998', '%w %u %Y'),
|
||||
(NULL, get_format(DATE,'USA'));
|
||||
select date,format,str_to_date(date, format) as str_to_date from t1;
|
||||
date format str_to_date
|
||||
2003-01-02 10:11:12 PM %Y-%m-%d %H:%i:%S %p NULL
|
||||
@@ -273,10 +325,13 @@ date format str_to_date
|
||||
15 Septembei 2001 %d %M %Y NULL
|
||||
15 Ju 2001 %d %M %Y NULL
|
||||
Sund 15 MA %W %d %b %Y NULL
|
||||
Sunday 01 2001 %W %V %X NULL
|
||||
Thursdai 12 1998 %W %u %Y NULL
|
||||
Sunday 01 2001 %W %v %X NULL
|
||||
Tuesday 52 2001 %W %V %x NULL
|
||||
Tuesday 52 2001 %W %V %Y NULL
|
||||
Tuesday 52 2001 %W %u %x NULL
|
||||
7 53 1998 %w %u %Y NULL
|
||||
NULL %m.%d.%Y NULL
|
||||
Tuesday 52 2001 %W %V %X NULL
|
||||
select date,format,concat(str_to_date(date, format),'') as con from t1;
|
||||
date format con
|
||||
2003-01-02 10:11:12 PM %Y-%m-%d %H:%i:%S %p NULL
|
||||
@@ -288,10 +343,13 @@ date format con
|
||||
15 Septembei 2001 %d %M %Y NULL
|
||||
15 Ju 2001 %d %M %Y NULL
|
||||
Sund 15 MA %W %d %b %Y NULL
|
||||
Sunday 01 2001 %W %V %X NULL
|
||||
Thursdai 12 1998 %W %u %Y NULL
|
||||
Sunday 01 2001 %W %v %X NULL
|
||||
Tuesday 52 2001 %W %V %x NULL
|
||||
Tuesday 52 2001 %W %V %Y NULL
|
||||
Tuesday 52 2001 %W %u %x NULL
|
||||
7 53 1998 %w %u %Y NULL
|
||||
NULL %m.%d.%Y NULL
|
||||
Tuesday 52 2001 %W %V %X NULL
|
||||
truncate table t1;
|
||||
insert into t1 values
|
||||
('10:20:10AM', '%h:%i:%s'),
|
||||
@@ -321,6 +379,9 @@ a
|
||||
select get_format(DATETIME, 'eur') as a;
|
||||
a
|
||||
%Y-%m-%d %H.%i.%s
|
||||
select get_format(TIMESTAMP, 'eur') as a;
|
||||
a
|
||||
%Y-%m-%d %H.%i.%s
|
||||
select get_format(DATE, 'TEST') as a;
|
||||
a
|
||||
NULL
|
||||
|
@@ -52,13 +52,13 @@ select * from t1 ignore key (key1) where text1='teststring' or text1 like 'tests
|
||||
text1
|
||||
teststring
|
||||
teststring
|
||||
select * from t1 where text1='teststring' or text1 like 'teststring_%';
|
||||
text1
|
||||
teststring
|
||||
teststring
|
||||
select * from t1 where text1='teststring' or text1 > 'teststring\t';
|
||||
text1
|
||||
teststring
|
||||
select concat('|', text1, '|') from t1 where text1='teststring' or text1 like 'teststring_%';
|
||||
concat('|', text1, '|')
|
||||
|teststring |
|
||||
|teststring|
|
||||
select concat('|', text1, '|') from t1 where text1='teststring' or text1 > 'teststring\t';
|
||||
concat('|', text1, '|')
|
||||
|teststring|
|
||||
select text1, length(text1) from t1 order by text1;
|
||||
text1 length(text1)
|
||||
nothing 7
|
||||
@@ -77,7 +77,28 @@ concat('|', text1, '|')
|
||||
|teststring|
|
||||
|teststring |
|
||||
|teststring |
|
||||
select concat('|', text1, '|') from t1 where text1='teststring' or text1 > 'teststring\t';
|
||||
concat('|', text1, '|')
|
||||
|teststring|
|
||||
|teststring |
|
||||
select concat('|', text1, '|') from t1 where text1='teststring';
|
||||
concat('|', text1, '|')
|
||||
|teststring|
|
||||
select concat('|', text1, '|') from t1 where text1='teststring ';
|
||||
concat('|', text1, '|')
|
||||
|teststring |
|
||||
alter table t1 modify text1 text not null, pack_keys=1;
|
||||
select concat('|', text1, '|') from t1 where text1='teststring';
|
||||
concat('|', text1, '|')
|
||||
|teststring|
|
||||
|teststring |
|
||||
select concat('|', text1, '|') from t1 where text1='teststring ';
|
||||
concat('|', text1, '|')
|
||||
|teststring|
|
||||
|teststring |
|
||||
explain select concat('|', text1, '|') from t1 where text1='teststring ';
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range key1 key1 22 NULL 2 Using where
|
||||
select * from t1 where text1 like 'teststring_%';
|
||||
text1
|
||||
teststring
|
||||
@@ -87,10 +108,10 @@ text1
|
||||
teststring
|
||||
teststring
|
||||
teststring
|
||||
select * from t1 where text1='teststring' or text1 > 'teststring\t';
|
||||
text1
|
||||
teststring
|
||||
teststring
|
||||
select concat('|', text1, '|') from t1 where text1='teststring' or text1 > 'teststring\t';
|
||||
concat('|', text1, '|')
|
||||
|teststring|
|
||||
|teststring |
|
||||
select concat('|', text1, '|') from t1 order by text1;
|
||||
concat('|', text1, '|')
|
||||
|nothing|
|
||||
|
6
mysql-test/r/exampledb.result
Normal file
6
mysql-test/r/exampledb.result
Normal file
@@ -0,0 +1,6 @@
|
||||
drop table if exists t1;
|
||||
CREATE TABLE t1 (
|
||||
Period smallint(4) unsigned zerofill DEFAULT '0000' NOT NULL,
|
||||
Varor_period smallint(4) unsigned DEFAULT '0' NOT NULL
|
||||
) ENGINE=example;
|
||||
drop table t1;
|
23
mysql-test/r/flush_block_commit.result
Normal file
23
mysql-test/r/flush_block_commit.result
Normal file
@@ -0,0 +1,23 @@
|
||||
drop table if exists t1;
|
||||
create table t1 (a int) engine=innodb;
|
||||
begin;
|
||||
insert into t1 values(1);
|
||||
flush tables with read lock;
|
||||
select * from t1;
|
||||
a
|
||||
commit;
|
||||
select * from t1;
|
||||
a
|
||||
unlock tables;
|
||||
begin;
|
||||
select * from t1 for update;
|
||||
a
|
||||
1
|
||||
begin;
|
||||
select * from t1 for update;
|
||||
flush tables with read lock;
|
||||
commit;
|
||||
a
|
||||
1
|
||||
unlock tables;
|
||||
drop table t1;
|
@@ -7,6 +7,15 @@ FULLTEXT KEY (a)
|
||||
repair table t1 quick;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 repair status OK
|
||||
check table t1;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 check status OK
|
||||
optimize table t1;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 optimize status OK
|
||||
check table t1;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 check status OK
|
||||
select count(*) from t1 where match a against ('aaaxxx');
|
||||
count(*)
|
||||
260
|
||||
|
@@ -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` separator ',') 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` separator ',') 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` separator ',') 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
|
||||
@@ -294,6 +294,21 @@ grp
|
||||
select group_concat(c order by (select mid(group_concat(c order by a),1,5) from t2 where t2.a=t1.a) desc) as grp from t1;
|
||||
grp
|
||||
2,4,3,5
|
||||
select t1.a, group_concat(c order by (select c from t2 where t2.a=t1.a limit 1)) as grp from t1 group by 1;
|
||||
a grp
|
||||
1 2
|
||||
2 4,3
|
||||
3 5
|
||||
select t1.a, group_concat(c order by (select mid(group_concat(c order by a),1,5) from t2 where t2.a=t1.a)) as grp from t1 group by 1;
|
||||
a grp
|
||||
1 2
|
||||
2 4,3
|
||||
3 5
|
||||
select t1.a, group_concat(c order by (select mid(group_concat(c order by a),1,5) from t2 where t2.a=t1.a) desc) as grp from t1 group by 1;
|
||||
a grp
|
||||
1 2
|
||||
2 4,3
|
||||
3 5
|
||||
select a,c,(select group_concat(c order by a) from t2 where a=t1.a) as grp from t1 order by grp;
|
||||
a c grp
|
||||
3 5 3,3
|
||||
@@ -321,3 +336,33 @@ HAVING LEFT(names, 1) ='J';
|
||||
names
|
||||
John###Anna###Bill
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 ( a int, b TEXT );
|
||||
INSERT INTO t1 VALUES (1,'First Row'), (2,'Second Row');
|
||||
SELECT GROUP_CONCAT(b ORDER BY b) FROM t1 GROUP BY a;
|
||||
GROUP_CONCAT(b ORDER BY b)
|
||||
First Row
|
||||
Second Row
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (a_id tinyint(4) NOT NULL default '0', PRIMARY KEY (a_id)) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
INSERT INTO t1 VALUES (1),(2),(3);
|
||||
CREATE TABLE t2 (b_id tinyint(4) NOT NULL default '0',b_a tinyint(4) NOT NULL default '0', PRIMARY KEY (b_id), KEY (b_a),
|
||||
CONSTRAINT fk_b_a FOREIGN KEY (b_a) REFERENCES t1 (a_id) ON DELETE CASCADE ON UPDATE NO ACTION) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
INSERT INTO t2 VALUES (1,1),(2,1),(3,1),(4,2),(5,2);
|
||||
SELECT * FROM (SELECT t1.*,GROUP_CONCAT(t2.b_id SEPARATOR ',') as b_list FROM (t1 LEFT JOIN (t2) on t1.a_id = t2.b_a) GROUP BY t1.a_id ) AS xyz;
|
||||
a_id b_list
|
||||
1 1,2,3
|
||||
2 4,5
|
||||
3 NULL
|
||||
DROP TABLE t2;
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (A_ID INT NOT NULL,A_DESC CHAR(3) NOT NULL,PRIMARY KEY (A_ID));
|
||||
INSERT INTO t1 VALUES (1,'ABC'), (2,'EFG'), (3,'HIJ');
|
||||
CREATE TABLE t2 (A_ID INT NOT NULL,B_DESC CHAR(3) NOT NULL,PRIMARY KEY (A_ID,B_DESC));
|
||||
INSERT INTO t2 VALUES (1,'A'),(1,'B'),(3,'F');
|
||||
SELECT t1.A_ID, GROUP_CONCAT(t2.B_DESC) AS B_DESC FROM t1 LEFT JOIN t2 ON t1.A_ID=t2.A_ID GROUP BY t1.A_ID ORDER BY t1.A_DESC;
|
||||
A_ID B_DESC
|
||||
1 A,B
|
||||
2 NULL
|
||||
3 F
|
||||
DROP TABLE t1;
|
||||
DROP TABLE t2;
|
||||
|
@@ -586,7 +586,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
explain
|
||||
select max(t1.a3), min(t2.a2) from t1, t2 where t1.a2 = 2 and t1.a3 < 'MIN' and t2.a3 > 'CA';
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref k1 k1 3 const 2 Using where; Using index
|
||||
1 SIMPLE t1 range k1 k1 7 NULL 1 Using where; Using index
|
||||
1 SIMPLE t2 range k1 k1 3 NULL 4 Using where; Using index
|
||||
explain
|
||||
select min(a4 - 0.01) from 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 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 BINARY))
|
||||
Note 1003 select if((`test`.`t1`.`u` = 1),`test`.`t1`.`st`,cast(`test`.`t1`.`st` as char charset binary)) AS `s` from `test`.`t1` where (`test`.`t1`.`st` like _latin1'%a%') order by if((`test`.`t1`.`u` = 1),`test`.`t1`.`st`,cast(`test`.`t1`.`st` as char charset binary))
|
||||
select nullif(u=0, 'test') from t1;
|
||||
nullif(u=0, 'test')
|
||||
NULL
|
||||
|
@@ -148,6 +148,16 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
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_bin)))
|
||||
drop table t1;
|
||||
set names utf8;
|
||||
create table t1 (a char(10) character set utf8 not null);
|
||||
insert into t1 values ('bbbb'),(_koi8r'<27><><EFBFBD><EFBFBD>'),(_latin1'<27><><EFBFBD><EFBFBD>');
|
||||
select a from t1 where a in ('bbbb',_koi8r'<27><><EFBFBD><EFBFBD>',_latin1'<27><><EFBFBD><EFBFBD>') order by a;
|
||||
a
|
||||
ÄÄÄÄ
|
||||
bbbb
|
||||
цццц
|
||||
drop table t1;
|
||||
set names latin1;
|
||||
select '1.0' in (1,2);
|
||||
'1.0' in (1,2)
|
||||
1
|
||||
|
@@ -155,3 +155,6 @@ select * from t1 where a like '%ESKA%';
|
||||
a
|
||||
PPUH PESKA-I Maria Struniarska
|
||||
DROP TABLE t1;
|
||||
select _cp866'aaaaaaaaa' like _cp866'%aaaa%' collate cp866_bin;
|
||||
_cp866'aaaaaaaaa' like _cp866'%aaaa%' collate cp866_bin
|
||||
1
|
||||
|
@@ -43,7 +43,7 @@ Warnings:
|
||||
Note 1003 select abs(-(10)) AS `abs(-10)`,sign(-(5)) AS `sign(-5)`,sign(5) AS `sign(5)`,sign(0) AS `sign(0)`
|
||||
select log(exp(10)),exp(log(sqrt(10))*2),log(-1),log(NULL),log(1,1),log(3,9),log(-1,2),log(NULL,2);
|
||||
log(exp(10)) exp(log(sqrt(10))*2) log(-1) log(NULL) log(1,1) log(3,9) log(-1,2) log(NULL,2)
|
||||
10.000000 10.000000 NULL NULL NULL 2.000000 NULL NULL
|
||||
10 10 NULL NULL NULL 2 NULL NULL
|
||||
explain extended select log(exp(10)),exp(log(sqrt(10))*2),log(-1),log(NULL),log(1,1),log(3,9),log(-1,2),log(NULL,2);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
|
||||
@@ -51,7 +51,7 @@ Warnings:
|
||||
Note 1003 select log(exp(10)) AS `log(exp(10))`,exp((log(sqrt(10)) * 2)) AS `exp(log(sqrt(10))*2)`,log(-(1)) AS `log(-1)`,log(NULL) AS `log(NULL)`,log(1,1) AS `log(1,1)`,log(3,9) AS `log(3,9)`,log(-(1),2) AS `log(-1,2)`,log(NULL,2) AS `log(NULL,2)`
|
||||
select ln(exp(10)),exp(ln(sqrt(10))*2),ln(-1),ln(0),ln(NULL);
|
||||
ln(exp(10)) exp(ln(sqrt(10))*2) ln(-1) ln(0) ln(NULL)
|
||||
10.000000 10.000000 NULL NULL NULL
|
||||
10 10 NULL NULL NULL
|
||||
explain extended select ln(exp(10)),exp(ln(sqrt(10))*2),ln(-1),ln(0),ln(NULL);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
|
||||
@@ -59,7 +59,7 @@ Warnings:
|
||||
Note 1003 select ln(exp(10)) AS `ln(exp(10))`,exp((ln(sqrt(10)) * 2)) AS `exp(ln(sqrt(10))*2)`,ln(-(1)) AS `ln(-1)`,ln(0) AS `ln(0)`,ln(NULL) AS `ln(NULL)`
|
||||
select log2(8),log2(15),log2(-2),log2(0),log2(NULL);
|
||||
log2(8) log2(15) log2(-2) log2(0) log2(NULL)
|
||||
3.000000 3.906891 NULL NULL NULL
|
||||
3 3.9068905956085 NULL NULL NULL
|
||||
explain extended select log2(8),log2(15),log2(-2),log2(0),log2(NULL);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
|
||||
@@ -67,7 +67,7 @@ Warnings:
|
||||
Note 1003 select log2(8) AS `log2(8)`,log2(15) AS `log2(15)`,log2(-(2)) AS `log2(-2)`,log2(0) AS `log2(0)`,log2(NULL) AS `log2(NULL)`
|
||||
select log10(100),log10(18),log10(-4),log10(0),log10(NULL);
|
||||
log10(100) log10(18) log10(-4) log10(0) log10(NULL)
|
||||
2.000000 1.255273 NULL NULL NULL
|
||||
2 1.2552725051033 NULL NULL NULL
|
||||
explain extended select log10(100),log10(18),log10(-4),log10(0),log10(NULL);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
|
||||
@@ -75,7 +75,7 @@ Warnings:
|
||||
Note 1003 select log10(100) AS `log10(100)`,log10(18) AS `log10(18)`,log10(-(4)) AS `log10(-4)`,log10(0) AS `log10(0)`,log10(NULL) AS `log10(NULL)`
|
||||
select pow(10,log10(10)),power(2,4);
|
||||
pow(10,log10(10)) power(2,4)
|
||||
10.000000 16.000000
|
||||
10 16
|
||||
explain extended select pow(10,log10(10)),power(2,4);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
|
||||
@@ -90,35 +90,35 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
|
||||
Warnings:
|
||||
Note 1003 select sql_no_cache rand(999999) AS `rand(999999)`,rand() AS `rand()`
|
||||
select pi(),sin(pi()/2),cos(pi()/2),abs(tan(pi())),cot(1),asin(1),acos(0),atan(1);
|
||||
pi() sin(pi()/2) cos(pi()/2) abs(tan(pi())) cot(1) asin(1) acos(0) atan(1)
|
||||
3.141593 1.000000 0.000000 0.000000 0.64209262 1.570796 1.570796 0.785398
|
||||
explain extended select pi(),sin(pi()/2),cos(pi()/2),abs(tan(pi())),cot(1),asin(1),acos(0),atan(1);
|
||||
select pi(),format(sin(pi()/2),6),format(cos(pi()/2),6),format(abs(tan(pi())),6),format(cot(1),6),format(asin(1),6),format(acos(0),6),format(atan(1),6);
|
||||
pi() format(sin(pi()/2),6) format(cos(pi()/2),6) format(abs(tan(pi())),6) format(cot(1),6) format(asin(1),6) format(acos(0),6) format(atan(1),6)
|
||||
3.141593 1.000000 0.000000 0.000000 0.642093 1.570796 1.570796 0.785398
|
||||
explain extended select pi(),format(sin(pi()/2),6),format(cos(pi()/2),6),format(abs(tan(pi())),6),format(cot(1),6),format(asin(1),6),format(acos(0),6),format(atan(1),6);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
|
||||
Warnings:
|
||||
Note 1003 select pi() AS `pi()`,sin((pi() / 2)) AS `sin(pi()/2)`,cos((pi() / 2)) AS `cos(pi()/2)`,abs(tan(pi())) AS `abs(tan(pi()))`,(1 / tan(1)) AS `cot(1)`,asin(1) AS `asin(1)`,acos(0) AS `acos(0)`,atan(1) AS `atan(1)`
|
||||
Note 1003 select pi() AS `pi()`,format(sin((pi() / 2)),6) AS `format(sin(pi()/2),6)`,format(cos((pi() / 2)),6) AS `format(cos(pi()/2),6)`,format(abs(tan(pi())),6) AS `format(abs(tan(pi())),6)`,format((1 / tan(1)),6) AS `format(cot(1),6)`,format(asin(1),6) AS `format(asin(1),6)`,format(acos(0),6) AS `format(acos(0),6)`,format(atan(1),6) AS `format(atan(1),6)`
|
||||
select degrees(pi()),radians(360);
|
||||
degrees(pi()) radians(360)
|
||||
180 6.2831853071796
|
||||
SELECT ACOS(1.0);
|
||||
ACOS(1.0)
|
||||
0.000000
|
||||
0
|
||||
SELECT ASIN(1.0);
|
||||
ASIN(1.0)
|
||||
1.570796
|
||||
1.5707963267949
|
||||
SELECT ACOS(0.2*5.0);
|
||||
ACOS(0.2*5.0)
|
||||
0.000000
|
||||
0
|
||||
SELECT ACOS(0.5*2.0);
|
||||
ACOS(0.5*2.0)
|
||||
0.000000
|
||||
0
|
||||
SELECT ASIN(0.8+0.2);
|
||||
ASIN(0.8+0.2)
|
||||
1.570796
|
||||
1.5707963267949
|
||||
SELECT ASIN(1.2-0.2);
|
||||
ASIN(1.2-0.2)
|
||||
1.570796
|
||||
1.5707963267949
|
||||
explain extended select degrees(pi()),radians(360);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
|
||||
|
@@ -41,8 +41,7 @@ interval(null, 1, 10, 100)
|
||||
-1
|
||||
drop table if exists t1,t2;
|
||||
create table t1 (id int(10) not null unique);
|
||||
create table t2 (id int(10) not null primary key,
|
||||
val int(10) not null);
|
||||
create table t2 (id int(10) not null primary key, val int(10) not null);
|
||||
insert into t1 values (1),(2),(4);
|
||||
insert into t2 values (1,1),(2,1),(3,1),(4,2);
|
||||
select one.id, elt(two.val,'one','two') from t1 one, t2 two where two.id=one.id;
|
||||
@@ -56,3 +55,12 @@ id elt(two.val,'one','two')
|
||||
2 one
|
||||
4 two
|
||||
drop table t1,t2;
|
||||
select find_in_set(binary 'a',binary 'A,B,C');
|
||||
find_in_set(binary 'a',binary 'A,B,C')
|
||||
0
|
||||
select find_in_set('a',binary 'A,B,C');
|
||||
find_in_set('a',binary 'A,B,C')
|
||||
0
|
||||
select find_in_set(binary 'a', 'A,B,C');
|
||||
find_in_set(binary 'a', 'A,B,C')
|
||||
0
|
||||
|
@@ -638,7 +638,7 @@ explain extended select md5('hello'), sha('abc'), sha1('abc'), soundex(''), 'moo
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE NULL NULL NULL NULL NULL NULL NULL No tables used
|
||||
Warnings:
|
||||
Note 1003 select md5(_latin1'hello') AS `md5('hello')`,sha(_latin1'abc') AS `sha('abc')`,sha(_latin1'abc') AS `sha1('abc')`,soundex(_latin1'') AS `soundex('')`,(soundex(_latin1'mood') = soundex(_latin1'mud')) AS `'mood' sounds like 'mud'`,aes_decrypt(aes_encrypt(_latin1'abc',_latin1'1'),_latin1'1') AS `aes_decrypt(aes_encrypt('abc','1'),'1')`,concat(_latin1'*',repeat(_latin1' ',5),_latin1'*') AS `concat('*',space(5),'*')`,reverse(_latin1'abc') AS `reverse('abc')`,rpad(_latin1'a',4,_latin1'1') AS `rpad('a',4,'1')`,lpad(_latin1'a',4,_latin1'1') AS `lpad('a',4,'1')`,concat_ws(_latin1',',_latin1'',NULL,_latin1'a') AS `concat_ws(',','',NULL,'a')`,make_set(255,_latin2'a',_latin2'b',_latin2'c') AS `make_set(255,_latin2'a',_latin2'b',_latin2'c')`,elt(2,1) AS `elt(2,1)`,locate(_latin1'a',_latin1'b',2) AS `locate("a","b",2)`,format(130,10) AS `format(130,10)`,char(0) AS `char(0)`,conv(130,16,10) AS `conv(130,16,10)`,hex(130) AS `hex(130)`,(_latin1'HE' collate BINARY) AS `binary 'HE'`,export_set(255,_latin2'y',_latin2'n',_latin2' ') AS `export_set(255,_latin2'y',_latin2'n',_latin2' ')`,field((_latin1'b' collate latin1_bin),_latin1'A',_latin1'B') AS `FIELD('b' COLLATE latin1_bin,'A','B')`,find_in_set(_latin1'B',_latin1'a,b,c,d') AS `FIND_IN_SET(_latin1'B',_latin1'a,b,c,d')`,collation(conv(130,16,10)) AS `collation(conv(130,16,10))`,coercibility(conv(130,16,10)) AS `coercibility(conv(130,16,10))`,length(_latin1'\n \r\0\\_\\%\\') AS `length('\n\t\r\b\0\_\%\\')`,bit_length(_latin1'\n \r\0\\_\\%\\') AS `bit_length('\n\t\r\b\0\_\%\\')`,bit_length(_latin1'\n \r\0\\_\\%\\') AS `bit_length('\n\t\r\b\0\_\%\\')`,concat(_latin1'monty',_latin1' was here ',_latin1'again') AS `concat('monty',' was here ','again')`,length(_latin1'hello') AS `length('hello')`,char(ascii(_latin1'h')) AS `char(ascii('h'))`,ord(_latin1'h') AS `ord('h')`,quote((1 / 0)) AS `quote(1/0)`,crc32(_latin1'123') AS `crc32("123")`,replace(_latin1'aaaa',_latin1'a',_latin1'b') AS `replace('aaaa','a','b')`,insert(_latin1'txs',2,1,_latin1'hi') AS `insert('txs',2,1,'hi')`,left(_latin2'a',1) AS `left(_latin2'a',1)`,right(_latin2'a',1) AS `right(_latin2'a',1)`,lcase(_latin2'a') AS `lcase(_latin2'a')`,ucase(_latin2'a') AS `ucase(_latin2'a')`,substr(_latin1'abcdefg',3,2) AS `SUBSTR('abcdefg',3,2)`,substr_index(_latin1'1abcd;2abcd;3abcd;4abcd',_latin1';',2) AS `substring_index("1abcd;2abcd;3abcd;4abcd", ';', 2)`,trim(_latin2' a ') AS `trim(_latin2' a ')`,ltrim(_latin2' a ') AS `ltrim(_latin2' a ')`,rtrim(_latin2' a ') AS `rtrim(_latin2' a ')`,decode(encode(repeat(_latin1'a',100000))) AS `decode(encode(repeat("a",100000),"monty"),"monty")`
|
||||
Note 1003 select md5(_latin1'hello') AS `md5('hello')`,sha(_latin1'abc') AS `sha('abc')`,sha(_latin1'abc') AS `sha1('abc')`,soundex(_latin1'') AS `soundex('')`,(soundex(_latin1'mood') = soundex(_latin1'mud')) AS `'mood' sounds like 'mud'`,aes_decrypt(aes_encrypt(_latin1'abc',_latin1'1'),_latin1'1') AS `aes_decrypt(aes_encrypt('abc','1'),'1')`,concat(_latin1'*',repeat(_latin1' ',5),_latin1'*') AS `concat('*',space(5),'*')`,reverse(_latin1'abc') AS `reverse('abc')`,rpad(_latin1'a',4,_latin1'1') AS `rpad('a',4,'1')`,lpad(_latin1'a',4,_latin1'1') AS `lpad('a',4,'1')`,concat_ws(_latin1',',_latin1'',NULL,_latin1'a') AS `concat_ws(',','',NULL,'a')`,make_set(255,_latin2'a',_latin2'b',_latin2'c') AS `make_set(255,_latin2'a',_latin2'b',_latin2'c')`,elt(2,1) AS `elt(2,1)`,locate(_latin1'a',_latin1'b',2) AS `locate("a","b",2)`,format(130,10) AS `format(130,10)`,char(0) AS `char(0)`,conv(130,16,10) AS `conv(130,16,10)`,hex(130) AS `hex(130)`,cast(_latin1'HE' as char charset binary) AS `binary 'HE'`,export_set(255,_latin2'y',_latin2'n',_latin2' ') AS `export_set(255,_latin2'y',_latin2'n',_latin2' ')`,field((_latin1'b' collate latin1_bin),_latin1'A',_latin1'B') AS `FIELD('b' COLLATE latin1_bin,'A','B')`,find_in_set(_latin1'B',_latin1'a,b,c,d') AS `FIND_IN_SET(_latin1'B',_latin1'a,b,c,d')`,collation(conv(130,16,10)) AS `collation(conv(130,16,10))`,coercibility(conv(130,16,10)) AS `coercibility(conv(130,16,10))`,length(_latin1'\n \r\0\\_\\%\\') AS `length('\n\t\r\b\0\_\%\\')`,bit_length(_latin1'\n \r\0\\_\\%\\') AS `bit_length('\n\t\r\b\0\_\%\\')`,bit_length(_latin1'\n \r\0\\_\\%\\') AS `bit_length('\n\t\r\b\0\_\%\\')`,concat(_latin1'monty',_latin1' was here ',_latin1'again') AS `concat('monty',' was here ','again')`,length(_latin1'hello') AS `length('hello')`,char(ascii(_latin1'h')) AS `char(ascii('h'))`,ord(_latin1'h') AS `ord('h')`,quote((1 / 0)) AS `quote(1/0)`,crc32(_latin1'123') AS `crc32("123")`,replace(_latin1'aaaa',_latin1'a',_latin1'b') AS `replace('aaaa','a','b')`,insert(_latin1'txs',2,1,_latin1'hi') AS `insert('txs',2,1,'hi')`,left(_latin2'a',1) AS `left(_latin2'a',1)`,right(_latin2'a',1) AS `right(_latin2'a',1)`,lcase(_latin2'a') AS `lcase(_latin2'a')`,ucase(_latin2'a') AS `ucase(_latin2'a')`,substr(_latin1'abcdefg',3,2) AS `SUBSTR('abcdefg',3,2)`,substr_index(_latin1'1abcd;2abcd;3abcd;4abcd',_latin1';',2) AS `substring_index("1abcd;2abcd;3abcd;4abcd", ';', 2)`,trim(_latin2' a ') AS `trim(_latin2' a ')`,ltrim(_latin2' a ') AS `ltrim(_latin2' a ')`,rtrim(_latin2' a ') AS `rtrim(_latin2' a ')`,decode(encode(repeat(_latin1'a',100000))) AS `decode(encode(repeat("a",100000),"monty"),"monty")`
|
||||
SELECT lpad(12345, 5, "#");
|
||||
lpad(12345, 5, "#")
|
||||
12345
|
||||
@@ -673,3 +673,6 @@ c1 c2
|
||||
2147483647 4294967295
|
||||
-2147483648 0
|
||||
drop table t1;
|
||||
select left(1234, 3) + 0;
|
||||
left(1234, 3) + 0
|
||||
123
|
||||
|
@@ -466,3 +466,22 @@ insert IGNORE into t1 values ('Garbage');
|
||||
ERROR HY000: Unknown error
|
||||
alter table t1 add spatial index(a);
|
||||
drop table t1;
|
||||
create table t1(a geometry not null, spatial index(a));
|
||||
insert into t1 values
|
||||
(GeomFromText('POINT(1 1)')), (GeomFromText('POINT(3 3)')),
|
||||
(GeomFromText('POINT(4 4)')), (GeomFromText('POINT(6 6)'));
|
||||
select AsText(a) from t1 where
|
||||
MBRContains(GeomFromText('Polygon((0 0, 0 2, 2 2, 2 0, 0 0))'), a)
|
||||
or
|
||||
MBRContains(GeomFromText('Polygon((2 2, 2 5, 5 5, 5 2, 2 2))'), a);
|
||||
AsText(a)
|
||||
POINT(1 1)
|
||||
POINT(3 3)
|
||||
POINT(4 4)
|
||||
select AsText(a) from t1 where
|
||||
MBRContains(GeomFromText('Polygon((0 0, 0 2, 2 2, 2 0, 0 0))'), a)
|
||||
and
|
||||
MBRContains(GeomFromText('Polygon((0 0, 0 7, 7 7, 7 0, 0 0))'), a);
|
||||
AsText(a)
|
||||
POINT(1 1)
|
||||
drop table t1;
|
||||
|
@@ -229,6 +229,25 @@ GRANT SELECT (
|
||||
REVOKE SELECT (<28><><EFBFBD>) ON <20><>.<2E><><EFBFBD> FROM <20><><EFBFBD><EFBFBD>@localhost;
|
||||
DROP DATABASE <20><>;
|
||||
SET NAMES latin1;
|
||||
insert into mysql.user (host, user) values ('localhost', 'test11');
|
||||
insert into mysql.db (host, db, user, select_priv) values
|
||||
('localhost', 'a%', 'test11', 'Y'), ('localhost', 'ab%', 'test11', 'Y');
|
||||
alter table mysql.db order by db asc;
|
||||
flush privileges;
|
||||
show grants for test11@localhost;
|
||||
Grants for test11@localhost
|
||||
GRANT USAGE ON *.* TO 'test11'@'localhost'
|
||||
GRANT SELECT ON `ab%`.* TO 'test11'@'localhost'
|
||||
GRANT SELECT ON `a%`.* TO 'test11'@'localhost'
|
||||
alter table mysql.db order by db desc;
|
||||
flush privileges;
|
||||
show grants for test11@localhost;
|
||||
Grants for test11@localhost
|
||||
GRANT USAGE ON *.* TO 'test11'@'localhost'
|
||||
GRANT SELECT ON `ab%`.* TO 'test11'@'localhost'
|
||||
GRANT SELECT ON `a%`.* TO 'test11'@'localhost'
|
||||
delete from mysql.user where user='test11';
|
||||
delete from mysql.db where user='test11';
|
||||
SHOW PRIVILEGES;
|
||||
Privilege Context Comment
|
||||
Alter Tables To alter the table
|
||||
|
2
mysql-test/r/have_csv.require
Normal file
2
mysql-test/r/have_csv.require
Normal file
@@ -0,0 +1,2 @@
|
||||
Variable_name Value
|
||||
have_csv YES
|
2
mysql-test/r/have_exampledb.require
Normal file
2
mysql-test/r/have_exampledb.require
Normal file
@@ -0,0 +1,2 @@
|
||||
Variable_name Value
|
||||
have_exampledb YES
|
@@ -87,3 +87,44 @@ sqty
|
||||
5
|
||||
9
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (
|
||||
`id` bigint(20) NOT NULL default '0',
|
||||
`description` text
|
||||
) ENGINE=MyISAM;
|
||||
CREATE TABLE t2 (
|
||||
`id` bigint(20) NOT NULL default '0',
|
||||
`description` varchar(20)
|
||||
) ENGINE=MyISAM;
|
||||
INSERT INTO t1 VALUES (1, 'test');
|
||||
INSERT INTO t2 VALUES (1, 'test');
|
||||
CREATE TABLE t3 (
|
||||
`id` bigint(20) NOT NULL default '0',
|
||||
`order_id` bigint(20) NOT NULL default '0'
|
||||
) ENGINE=MyISAM;
|
||||
select
|
||||
a.id, a.description,
|
||||
count(b.id) as c
|
||||
from t1 a left join t3 b on a.id=b.order_id
|
||||
group by a.id, a.description
|
||||
having (a.description is not null) and (c=0);
|
||||
id description c
|
||||
1 test 0
|
||||
select
|
||||
a.*,
|
||||
count(b.id) as c
|
||||
from t2 a left join t3 b on a.id=b.order_id
|
||||
group by a.id, a.description
|
||||
having (a.description is not null) and (c=0);
|
||||
id description c
|
||||
1 test 0
|
||||
INSERT INTO t1 VALUES (2, 'test2');
|
||||
select
|
||||
a.id, a.description,
|
||||
count(b.id) as c
|
||||
from t1 a left join t3 b on a.id=b.order_id
|
||||
group by a.id, a.description
|
||||
having (a.description is not null) and (c=0);
|
||||
id description c
|
||||
1 test 0
|
||||
2 test2 0
|
||||
drop table t1,t2,t3;
|
||||
|
@@ -217,3 +217,13 @@ DELETE from t1 where a < 100;
|
||||
SELECT * from t1;
|
||||
a
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE `job_titles` (
|
||||
`job_title_id` int(6) unsigned NOT NULL default '0',
|
||||
`job_title` char(18) NOT NULL default '',
|
||||
PRIMARY KEY (`job_title_id`),
|
||||
UNIQUE KEY `job_title_id` (`job_title_id`,`job_title`)
|
||||
) ENGINE=HEAP;
|
||||
SELECT MAX(job_title_id) FROM job_titles;
|
||||
MAX(job_title_id)
|
||||
NULL
|
||||
DROP TABLE job_titles;
|
||||
|
@@ -73,7 +73,7 @@ engine=heap;
|
||||
insert into t1 values (1,1),(2,2),(1,3),(2,4),(2,5),(2,6);
|
||||
explain select * from t1 where x=1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref x x 4 const 1 Using where
|
||||
1 SIMPLE t1 ref x x 4 const 1
|
||||
select * from t1 where x=1;
|
||||
x y
|
||||
1 1
|
||||
@@ -134,7 +134,7 @@ a b
|
||||
1 1
|
||||
explain select * from tx where b=x;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
x SIMPLE tx ref b b x const x Using where
|
||||
x SIMPLE tx ref b b x const x
|
||||
drop table t1;
|
||||
create table t1 (id int unsigned not null, primary key using BTREE (id)) engine=HEAP;
|
||||
insert into t1 values(1);
|
||||
|
@@ -264,11 +264,11 @@ select * from t0,t1 where (t0.key1=t1.key1) and
|
||||
(t0.key1=3 or t0.key2<4) and t1.key1=2;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t0 ref i1,i2 i1 4 const 1 Using where
|
||||
1 SIMPLE t1 ref i1 i1 4 const 1 Using where
|
||||
1 SIMPLE t1 ref i1 i1 4 const 1
|
||||
explain select * from t0,t1 where t0.key1 = 5 and
|
||||
(t1.key1 = t0.key1 or t1.key8 = t0.key1);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t0 ref i1 i1 4 const 1 Using where
|
||||
1 SIMPLE t0 ref i1 i1 4 const 1
|
||||
1 SIMPLE t1 index_merge i1,i8 i1,i8 4,4 NULL 2 Using union(i1,i8); Using where
|
||||
explain select * from t0,t1 where t0.key1 < 3 and
|
||||
(t1.key1 = t0.key1 or t1.key8 = t0.key1);
|
||||
|
@@ -130,7 +130,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,stb_swt1a_2b,stb_swt1b,st_b st_b 4 const 14720 Using where
|
||||
explain select * from t1 where st_a=1 and swt1a=1 and swt2a=1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a sta_swt12a 12 const,const,const 958 Using where
|
||||
1 SIMPLE t1 ref sta_swt12a,sta_swt1a,sta_swt2a,sta_swt21a,st_a sta_swt12a 12 const,const,const 958
|
||||
explain select * from t1 where st_b=1 and swt1b=1 and swt2b=1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref stb_swt1a_2b,stb_swt1b,st_b stb_swt1b 8 const,const 3757 Using where
|
||||
|
@@ -141,13 +141,13 @@ id parent_id level
|
||||
1015 102 2
|
||||
explain select level from t1 where level=1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref level level 1 const # Using where; Using index
|
||||
1 SIMPLE t1 ref level level 1 const # Using index
|
||||
explain select level,id from t1 where level=1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref level level 1 const # Using where; Using index
|
||||
1 SIMPLE t1 ref level level 1 const # Using index
|
||||
explain select level,id,parent_id from t1 where level=1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref level level 1 const # Using where
|
||||
1 SIMPLE t1 ref level level 1 const #
|
||||
select level,id from t1 where level=1;
|
||||
level id
|
||||
1 1002
|
||||
@@ -609,7 +609,7 @@ id parent_id level
|
||||
1016 102 2
|
||||
explain select level from t1 where level=1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref level level 1 const # Using where; Using index
|
||||
1 SIMPLE t1 ref level level 1 const # Using index
|
||||
select level,id from t1 where level=1;
|
||||
level id
|
||||
1 1004
|
||||
|
@@ -283,6 +283,12 @@ ID Value1 Value2
|
||||
SELECT * FROM t1 NATURAL JOIN t2 WHERE (Value1 = 'A' AND Value2 <> 'B') AND 1;
|
||||
ID Value1 Value2
|
||||
drop table t1,t2;
|
||||
CREATE TABLE t1 (a int);
|
||||
CREATE TABLE t2 (b int);
|
||||
CREATE TABLE t3 (c int);
|
||||
SELECT * FROM t1 NATURAL JOIN t2 NATURAL JOIN t3;
|
||||
a b c
|
||||
DROP TABLE t1, t2, t3;
|
||||
create table t1 (i int);
|
||||
create table t2 (i int);
|
||||
create table t3 (i int);
|
||||
|
@@ -628,7 +628,7 @@ insert into t2 values (10,1),(20,2),(30,3);
|
||||
explain select * from t2 left join t1 on t1.fooID = t2.fooID and t1.fooID = 30;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 index NULL PRIMARY 4 NULL 3 Using index
|
||||
1 SIMPLE t1 eq_ref PRIMARY PRIMARY 2 const 1 Using index
|
||||
1 SIMPLE t1 const PRIMARY PRIMARY 2 const 1 Using index
|
||||
select * from t2 left join t1 on t1.fooID = t2.fooID and t1.fooID = 30;
|
||||
fooID barID fooID
|
||||
10 1 NULL
|
||||
@@ -676,3 +676,72 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ALL NULL NULL NULL NULL 2
|
||||
1 SIMPLE t3 ALL NULL NULL NULL NULL 2
|
||||
drop table t1, t2, t3;
|
||||
create table t1 (
|
||||
match_id tinyint(3) unsigned not null auto_increment,
|
||||
home tinyint(3) unsigned default '0',
|
||||
unique key match_id (match_id),
|
||||
key match_id_2 (match_id)
|
||||
);
|
||||
insert into t1 values("1", "2");
|
||||
create table t2 (
|
||||
player_id tinyint(3) unsigned default '0',
|
||||
match_1_h tinyint(3) unsigned default '0',
|
||||
key player_id (player_id)
|
||||
);
|
||||
insert into t2 values("1", "5");
|
||||
insert into t2 values("2", "9");
|
||||
insert into t2 values("3", "3");
|
||||
insert into t2 values("4", "7");
|
||||
insert into t2 values("5", "6");
|
||||
insert into t2 values("6", "8");
|
||||
insert into t2 values("7", "4");
|
||||
insert into t2 values("8", "12");
|
||||
insert into t2 values("9", "11");
|
||||
insert into t2 values("10", "10");
|
||||
explain select s.*, '*', m.*, (s.match_1_h - m.home) UUX from
|
||||
(t2 s left join t1 m on m.match_id = 1)
|
||||
order by m.match_id desc;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE s ALL NULL NULL NULL NULL 10
|
||||
1 SIMPLE m const match_id,match_id_2 match_id 1 const 1
|
||||
explain select s.*, '*', m.*, (s.match_1_h - m.home) UUX from
|
||||
(t2 s left join t1 m on m.match_id = 1)
|
||||
order by UUX desc;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE s ALL NULL NULL NULL NULL 10 Using temporary; Using filesort
|
||||
1 SIMPLE m const match_id,match_id_2 match_id 1 const 1
|
||||
select s.*, '*', m.*, (s.match_1_h - m.home) UUX from
|
||||
(t2 s left join t1 m on m.match_id = 1)
|
||||
order by UUX desc;
|
||||
player_id match_1_h * match_id home UUX
|
||||
8 12 * 1 2 10
|
||||
9 11 * 1 2 9
|
||||
10 10 * 1 2 8
|
||||
2 9 * 1 2 7
|
||||
6 8 * 1 2 6
|
||||
4 7 * 1 2 5
|
||||
5 6 * 1 2 4
|
||||
1 5 * 1 2 3
|
||||
7 4 * 1 2 2
|
||||
3 3 * 1 2 1
|
||||
explain select s.*, '*', m.*, (s.match_1_h - m.home) UUX from
|
||||
t2 s straight_join t1 m where m.match_id = 1
|
||||
order by UUX desc;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE s ALL NULL NULL NULL NULL 10 Using temporary; Using filesort
|
||||
1 SIMPLE m const match_id,match_id_2 match_id 1 const 1
|
||||
select s.*, '*', m.*, (s.match_1_h - m.home) UUX from
|
||||
t2 s straight_join t1 m where m.match_id = 1
|
||||
order by UUX desc;
|
||||
player_id match_1_h * match_id home UUX
|
||||
8 12 * 1 2 10
|
||||
9 11 * 1 2 9
|
||||
10 10 * 1 2 8
|
||||
2 9 * 1 2 7
|
||||
6 8 * 1 2 6
|
||||
4 7 * 1 2 5
|
||||
5 6 * 1 2 4
|
||||
1 5 * 1 2 3
|
||||
7 4 * 1 2 2
|
||||
3 3 * 1 2 1
|
||||
drop table t1, t2;
|
||||
|
@@ -76,13 +76,12 @@ CCident varchar(50) DEFAULT '' NOT NULL,
|
||||
PRIMARY KEY (name,author,category)
|
||||
);
|
||||
INSERT INTO t1 VALUES
|
||||
('patnom','patauteur',0,'p.favre@cryo-networks.fr',NULL,NULL,'#p2sndnq6ae5g1u6t','essai\nsalut','scol://195.242.78.119:patauteur.patnom',NULL,NULL,NULL,950036174,-882087474,NULL,3,0,3,'1','Pub/patnom/futur_divers.scs',NULL,'pat','CC1');
|
||||
('patnom','patauteur',0,'p.favre@cryo-networks.fr',NULL,NULL,'#p2sndnq6ae5g1u6t','essai salut','scol://195.242.78.119:patauteur.patnom',NULL,NULL,NULL,950036174,-882087474,NULL,3,0,3,'1','Pub/patnom/futur_divers.scs',NULL,'pat','CC1');
|
||||
INSERT INTO t1 VALUES
|
||||
('LeNomDeMonSite','Marc',0,'m.barilley@cryo-networks.fr',NULL,NULL,NULL,NULL,'scol://195.242.78.119:Marc.LeNomDeMonSite',NULL,NULL,NULL,950560434,-881563214,NULL,3,0,3,'1','Pub/LeNomDeMonSite/domus_hibere.scs',NULL,'Marq','CC1');
|
||||
select * from t1 where name='patnom' and author='patauteur' and category=0;
|
||||
name author category email password proxy bitmap msg urlscol urlhttp timeout nbcnx creation livinguntil lang type subcat subtype reg scs capacity userISP CCident
|
||||
patnom patauteur 0 p.favre@cryo-networks.fr NULL NULL #p2sndnq6ae5g1u6t essai
|
||||
salut scol://195.242.78.119:patauteur.patnom NULL NULL NULL 950036174 -882087474 NULL 3 0 3 1 Pub/patnom/futur_divers.scs NULL pat CC1
|
||||
patnom patauteur 0 p.favre@cryo-networks.fr NULL NULL #p2sndnq6ae5g1u6t essai salut scol://195.242.78.119:patauteur.patnom NULL NULL NULL 950036174 -882087474 NULL 3 0 3 1 Pub/patnom/futur_divers.scs NULL pat CC1
|
||||
drop table t1;
|
||||
create table t1
|
||||
(
|
||||
@@ -235,3 +234,36 @@ SELECT numeropost FROM t1 WHERE numreponse='1';
|
||||
numeropost
|
||||
1
|
||||
drop table t1;
|
||||
create table t1 (c varchar(30) character set utf8, t text character set utf8, unique (c(2)), unique (t(3))) engine=myisam;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`c` varchar(30) character set utf8 default NULL,
|
||||
`t` text character set utf8,
|
||||
UNIQUE KEY `c` (`c`(2)),
|
||||
UNIQUE KEY `t` (`t`(3))
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
insert t1 values ('cccc', 'tttt'),
|
||||
(0xD0B1212223D0B1D0B1D0B1D0B1D0B1, 0xD0B1D0B1212223D0B1D0B1D0B1D0B1),
|
||||
(0xD0B1222123D0B1D0B1D0B1D0B1D0B1, 0xD0B1D0B1222123D0B1D0B1D0B1D0B1);
|
||||
insert t1 (c) values ('cc22');
|
||||
ERROR 23000: Duplicate entry 'cc22' for key 1
|
||||
insert t1 (t) values ('ttt22');
|
||||
ERROR 23000: Duplicate entry 'ttt22' for key 2
|
||||
insert t1 (c) values (0xD0B1212322D0B1D0B1D0B1D0B1D0B1);
|
||||
ERROR 23000: Duplicate entry 'б!#"<22>' for key 1
|
||||
insert t1 (t) values (0xD0B1D0B1212322D0B1D0B1D0B1D0B1);
|
||||
ERROR 23000: Duplicate entry 'бб!#"б' for key 2
|
||||
select c from t1 where c='cccc';
|
||||
c
|
||||
cccc
|
||||
select t from t1 where t='tttt';
|
||||
t
|
||||
tttt
|
||||
select c from t1 where c=0xD0B1212223D0B1D0B1D0B1D0B1D0B1;
|
||||
c
|
||||
?!"#?????
|
||||
select t from t1 where t=0xD0B1D0B1212223D0B1D0B1D0B1D0B1;
|
||||
t
|
||||
??!"#????
|
||||
drop table t1;
|
||||
|
@@ -1,4 +1,6 @@
|
||||
drop table if exists t1,t2,t3,t4;
|
||||
drop table if exists t0,t5,t6,t7,t8,t9;
|
||||
drop database if exists mysqltest;
|
||||
create table T1 (id int primary key, Word varchar(40) not null, Index(Word));
|
||||
create table t4 (id int primary key, Word varchar(40) not null);
|
||||
INSERT INTO T1 VALUES (1, 'a'), (2, 'b'), (3, 'c');
|
||||
@@ -42,6 +44,26 @@ select count(bags.a) from t1 as Bags;
|
||||
count(bags.a)
|
||||
0
|
||||
drop table t1;
|
||||
create database mysqltest;
|
||||
use MYSQLTEST;
|
||||
create table t1 (a int);
|
||||
select T1.a from MYSQLTEST.T1;
|
||||
a
|
||||
select t1.a from MYSQLTEST.T1;
|
||||
a
|
||||
select mysqltest.t1.* from MYSQLTEST.t1;
|
||||
a
|
||||
select MYSQLTEST.t1.* from MYSQLTEST.t1;
|
||||
a
|
||||
select MYSQLTEST.T1.* from MYSQLTEST.T1;
|
||||
a
|
||||
select MYSQLTEST.T1.* from T1;
|
||||
a
|
||||
alter table t1 rename to T1;
|
||||
select MYSQLTEST.t1.* from MYSQLTEST.t1;
|
||||
a
|
||||
drop database mysqltest;
|
||||
use test;
|
||||
create table t1 (a int);
|
||||
create table t2 (a int);
|
||||
delete p1.*,P2.* from t1 as p1, t2 as p2 where p1.a=P2.a;
|
||||
|
@@ -642,3 +642,12 @@ x y
|
||||
1 3
|
||||
1 2
|
||||
drop table t1,t2,t3;
|
||||
create table t1 (a int);
|
||||
create table t2 (a int);
|
||||
insert into t1 values (0);
|
||||
insert into t2 values (1);
|
||||
create table t3 engine=merge union=(t1, t2) select * from t1;
|
||||
ERROR HY000: You can't specify target table 't1' for update in FROM clause
|
||||
create table t3 engine=merge union=(t1, t2) select * from t2;
|
||||
ERROR HY000: You can't specify target table 't2' for update in FROM clause
|
||||
drop table t1, t2;
|
||||
|
@@ -21,7 +21,7 @@ def test t1 t1 g g 5 4 0 Y 32768 3 63
|
||||
def test t1 t1 h h 0 7 0 Y 32768 4 63
|
||||
def test t1 t1 i i 13 4 0 Y 32864 0 63
|
||||
def test t1 t1 j j 10 10 0 Y 128 0 63
|
||||
def test t1 t1 k k 7 19 0 N 1217 0 63
|
||||
def test t1 t1 k k 7 19 0 N 1249 0 63
|
||||
def test t1 t1 l l 12 19 0 Y 128 0 63
|
||||
def test t1 t1 m m 254 1 0 Y 256 0 8
|
||||
def test t1 t1 n n 254 3 0 Y 2048 0 8
|
||||
|
@@ -428,6 +428,22 @@ select * from t1 where a='807780' and b='477' and c='165';
|
||||
a b c
|
||||
807780 477 165
|
||||
drop table t1;
|
||||
DROP TABLE IF EXISTS t1;
|
||||
Warnings:
|
||||
Note 1051 Unknown table 't1'
|
||||
CREATE TABLE t1 (a varchar(150) NOT NULL, KEY (a));
|
||||
INSERT t1 VALUES ("can \tcan");
|
||||
INSERT t1 VALUES ("can can");
|
||||
INSERT t1 VALUES ("can");
|
||||
SELECT * FROM t1;
|
||||
a
|
||||
can can
|
||||
can
|
||||
can can
|
||||
CHECK TABLE t1;
|
||||
Table Op Msg_type Msg_text
|
||||
test.t1 check status OK
|
||||
DROP TABLE t1;
|
||||
create table t1 (a blob);
|
||||
insert into t1 values('a '),('a');
|
||||
select concat(a,'.') from t1 where a='a';
|
||||
@@ -529,3 +545,12 @@ show keys 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 NULL NULL NULL NULL YES HASH
|
||||
drop table t1,t2;
|
||||
create table t1 ( a tinytext, b char(1), index idx (a(1),b) );
|
||||
insert into t1 values (null,''), (null,'');
|
||||
explain select count(*) from t1 where a is null;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref idx idx 4 const 1 Using where
|
||||
select count(*) from t1 where a is null;
|
||||
count(*)
|
||||
2
|
||||
drop table t1;
|
||||
|
9
mysql-test/r/mysql_protocols.result
Normal file
9
mysql-test/r/mysql_protocols.result
Normal file
@@ -0,0 +1,9 @@
|
||||
<default>
|
||||
ok
|
||||
TCP
|
||||
ok
|
||||
SOCKET
|
||||
ok
|
||||
ERROR 2047: Wrong or unknown protocol
|
||||
ERROR 2047: Wrong or unknown protocol
|
||||
Unknown option to protocol: NullS
|
512
mysql-test/r/mysqlbinlog2.result
Normal file
512
mysql-test/r/mysqlbinlog2.result
Normal file
@@ -0,0 +1,512 @@
|
||||
drop table if exists t1;
|
||||
reset master;
|
||||
set @a=UNIX_TIMESTAMP("2020-01-21 15:32:22");
|
||||
set timestamp=@a;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
insert into t1 values(null, "a");
|
||||
insert into t1 values(null, "b");
|
||||
set timestamp=@a+2;
|
||||
insert into t1 values(null, "c");
|
||||
set timestamp=@a+4;
|
||||
insert into t1 values(null, "d");
|
||||
insert into t1 values(null, "e");
|
||||
flush logs;
|
||||
set timestamp=@a+1;
|
||||
insert into t1 values(null, "f");
|
||||
|
||||
--- Local --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
SET INSERT_ID=1;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
SET INSERT_ID=3;
|
||||
SET TIMESTAMP=1579609944;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
|
||||
--- offset --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
SET INSERT_ID=1;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
SET INSERT_ID=3;
|
||||
SET TIMESTAMP=1579609944;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
|
||||
--- start-position --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609946;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
|
||||
--- stop-position --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
SET INSERT_ID=1;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
SET INSERT_ID=3;
|
||||
SET TIMESTAMP=1579609944;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
|
||||
--- start-datetime --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
SET INSERT_ID=3;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609944;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
|
||||
--- stop-datetime --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
SET INSERT_ID=1;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
|
||||
--- Local with 2 binlogs on command line --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
SET INSERT_ID=1;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
SET INSERT_ID=3;
|
||||
SET TIMESTAMP=1579609944;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
SET INSERT_ID=6;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609943;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "f");
|
||||
|
||||
--- offset --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
SET INSERT_ID=1;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
SET INSERT_ID=3;
|
||||
SET TIMESTAMP=1579609944;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
SET INSERT_ID=6;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609943;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "f");
|
||||
|
||||
--- start-position --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609946;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
SET INSERT_ID=6;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609943;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "f");
|
||||
|
||||
--- stop-position --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
SET INSERT_ID=1;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
SET INSERT_ID=3;
|
||||
SET TIMESTAMP=1579609944;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
SET INSERT_ID=6;
|
||||
|
||||
--- start-datetime --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
SET INSERT_ID=3;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609944;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
SET INSERT_ID=6;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609943;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "f");
|
||||
|
||||
--- stop-datetime --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
SET INSERT_ID=1;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
|
||||
--- Remote --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
SET INSERT_ID=1;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
SET INSERT_ID=3;
|
||||
SET TIMESTAMP=1579609944;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
|
||||
--- offset --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
SET INSERT_ID=1;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
SET INSERT_ID=3;
|
||||
SET TIMESTAMP=1579609944;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
|
||||
--- start-position --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609946;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
|
||||
--- stop-position --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
SET INSERT_ID=1;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
SET INSERT_ID=3;
|
||||
SET TIMESTAMP=1579609944;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
|
||||
--- start-datetime --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
SET INSERT_ID=3;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609944;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
|
||||
--- stop-datetime --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
SET INSERT_ID=1;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
|
||||
--- Remote with 2 binlogs on command line --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
SET INSERT_ID=1;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
SET INSERT_ID=3;
|
||||
SET TIMESTAMP=1579609944;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
SET INSERT_ID=6;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609943;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "f");
|
||||
|
||||
--- offset --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
SET INSERT_ID=1;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
SET INSERT_ID=3;
|
||||
SET TIMESTAMP=1579609944;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
SET INSERT_ID=6;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609943;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "f");
|
||||
|
||||
--- start-position --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609946;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
SET INSERT_ID=6;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609943;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "f");
|
||||
|
||||
--- stop-position --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
SET INSERT_ID=1;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
SET INSERT_ID=3;
|
||||
SET TIMESTAMP=1579609944;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
SET INSERT_ID=6;
|
||||
|
||||
--- start-datetime --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
SET INSERT_ID=3;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609944;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
SET INSERT_ID=6;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609943;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
insert into t1 values(null, "f");
|
||||
|
||||
--- stop-datetime --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
SET INSERT_ID=1;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
|
||||
--- to-last-log --
|
||||
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
|
||||
use test;
|
||||
SET TIMESTAMP=1579609942;
|
||||
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1;
|
||||
SET @@session.sql_mode=0;
|
||||
create table t1 (a int auto_increment not null primary key, b char(3));
|
||||
SET INSERT_ID=1;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "a");
|
||||
SET INSERT_ID=2;
|
||||
SET TIMESTAMP=1579609942;
|
||||
insert into t1 values(null, "b");
|
||||
SET INSERT_ID=3;
|
||||
SET TIMESTAMP=1579609944;
|
||||
insert into t1 values(null, "c");
|
||||
SET INSERT_ID=4;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "d");
|
||||
SET INSERT_ID=5;
|
||||
SET TIMESTAMP=1579609946;
|
||||
insert into t1 values(null, "e");
|
||||
SET INSERT_ID=6;
|
||||
SET TIMESTAMP=1579609943;
|
||||
insert into t1 values(null, "f");
|
||||
|
||||
--- end of test --
|
||||
drop table t1;
|
@@ -15,15 +15,60 @@ 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);
|
||||
col6 int not null, to_be_deleted int) ENGINE=ndbcluster;
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 ndbcluster 9 Dynamic 100 0 0 NULL 0 0 0 NULL NULL NULL latin1_swedish_ci NULL
|
||||
insert into t1 values
|
||||
(0,4,3,5,"PENDING",1,7),(NULL,4,3,5,"PENDING",1,7),(31,4,3,5,"PENDING",1,7), (7,4,3,5,"PENDING",1,7), (NULL,4,3,5,"PENDING",1,7), (100,4,3,5,"PENDING",1,7), (99,4,3,5,"PENDING",1,7), (8,4,3,5,"PENDING",1,7), (NULL,4,3,5,"PENDING",1,7);
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 ndbcluster 9 Dynamic 100 0 0 NULL 0 0 102 NULL NULL NULL latin1_swedish_ci NULL
|
||||
select * from t1 order by col1;
|
||||
col1 col2 col3 col4 col5 col6 to_be_deleted
|
||||
0 4 3 5 PENDING 1 7
|
||||
1 4 3 5 PENDING 1 7
|
||||
7 4 3 5 PENDING 1 7
|
||||
8 4 3 5 PENDING 1 7
|
||||
31 4 3 5 PENDING 1 7
|
||||
32 4 3 5 PENDING 1 7
|
||||
99 4 3 5 PENDING 1 7
|
||||
100 4 3 5 PENDING 1 7
|
||||
101 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;
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 ndbcluster 9 Dynamic 100 0 0 NULL 0 0 102 NULL NULL NULL latin1_swedish_ci NULL
|
||||
select * from t1 order by col1;
|
||||
col6 col1 col3 fourth col4 col4_5 col5 col7 col8
|
||||
1 2 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 0 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 1 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 7 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 8 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 31 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 32 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 99 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 100 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 101 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
insert into t1 values (2, NULL,4,3,5,99,"PENDING","EXTRA",'2004-01-01 00:00:00');
|
||||
show table status;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 ndbcluster 9 Dynamic 100 0 0 NULL 0 0 103 NULL NULL NULL latin1_swedish_ci NULL
|
||||
select * from t1 order by col1;
|
||||
col6 col1 col3 fourth col4 col4_5 col5 col7 col8
|
||||
1 0 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 1 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 7 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 8 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 31 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 32 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 99 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 100 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
1 101 3 4 5 PENDING 0000-00-00 00:00:00
|
||||
2 102 4 3 5 99 PENDING EXTRA 2004-01-01 00:00:00
|
||||
drop table t1;
|
||||
|
@@ -35,10 +35,10 @@ 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;
|
||||
select * from t1 order by id;
|
||||
id name
|
||||
2 Autodiscover
|
||||
1 Autodiscover
|
||||
2 Autodiscover
|
||||
3 Discover 3
|
||||
show status like 'handler_discover%';
|
||||
Variable_name Value
|
||||
|
@@ -1,98 +1,106 @@
|
||||
DROP TABLE IF EXISTS t1,t2,t3,t4,t5,t6,t7;
|
||||
drop database if exists mysqltest;
|
||||
CREATE TABLE t1 (
|
||||
pk1 INT NOT NULL PRIMARY KEY,
|
||||
attr1 INT NOT NULL
|
||||
attr1 INT NOT NULL,
|
||||
attr2 INT,
|
||||
attr3 VARCHAR(10)
|
||||
) ENGINE=ndbcluster;
|
||||
INSERT INTO t1 VALUES (9410,9412);
|
||||
SELECT pk1 FROM t1;
|
||||
INSERT INTO t1 VALUES (9410,9412, NULL, '9412'), (9411,9413, 17, '9413');
|
||||
SELECT pk1 FROM t1 ORDER BY pk1;
|
||||
pk1
|
||||
9410
|
||||
SELECT * FROM t1;
|
||||
pk1 attr1
|
||||
9410 9412
|
||||
SELECT t1.* FROM t1;
|
||||
pk1 attr1
|
||||
9410 9412
|
||||
9411
|
||||
SELECT * FROM t1 ORDER BY pk1;
|
||||
pk1 attr1 attr2 attr3
|
||||
9410 9412 NULL 9412
|
||||
9411 9413 17 9413
|
||||
SELECT t1.* FROM t1 ORDER BY pk1;
|
||||
pk1 attr1 attr2 attr3
|
||||
9410 9412 NULL 9412
|
||||
9411 9413 17 9413
|
||||
UPDATE t1 SET attr1=1 WHERE pk1=9410;
|
||||
SELECT * FROM t1;
|
||||
pk1 attr1
|
||||
9410 1
|
||||
SELECT * FROM t1 ORDER BY pk1;
|
||||
pk1 attr1 attr2 attr3
|
||||
9410 1 NULL 9412
|
||||
9411 9413 17 9413
|
||||
UPDATE t1 SET pk1=2 WHERE attr1=1;
|
||||
ERROR 42000: Table 't1' uses an extension that doesn't exist in this MySQL version
|
||||
SELECT * FROM t1;
|
||||
pk1 attr1
|
||||
9410 1
|
||||
SELECT * FROM t1 ORDER BY pk1;
|
||||
pk1 attr1 attr2 attr3
|
||||
2 1 NULL 9412
|
||||
9411 9413 17 9413
|
||||
UPDATE t1 SET pk1=pk1 + 1;
|
||||
SELECT * FROM t1 ORDER BY pk1;
|
||||
pk1 attr1 attr2 attr3
|
||||
3 1 NULL 9412
|
||||
9412 9413 17 9413
|
||||
DELETE FROM t1;
|
||||
SELECT * FROM t1;
|
||||
pk1 attr1
|
||||
INSERT INTO t1 VALUES (9410,9412), (9411, 9413), (9408, 8765),
|
||||
(7,8), (8,9), (9,10), (10,11), (11,12), (12,13), (13,14);
|
||||
pk1 attr1 attr2 attr3
|
||||
INSERT INTO t1 VALUES (9410,9412, NULL, '9412'), (9408, 8765, NULL, '8765'),
|
||||
(7,8, NULL, NULL), (8,9, NULL, NULL), (9,10, NULL, NULL), (10,11, NULL, NULL), (11,12, NULL, NULL), (12,13, NULL, NULL), (13,14, NULL, NULL);
|
||||
UPDATE t1 SET attr1 = 9999;
|
||||
SELECT * FROM t1 ORDER BY pk1;
|
||||
pk1 attr1
|
||||
7 9999
|
||||
8 9999
|
||||
9 9999
|
||||
10 9999
|
||||
11 9999
|
||||
12 9999
|
||||
13 9999
|
||||
9408 9999
|
||||
9410 9999
|
||||
9411 9999
|
||||
pk1 attr1 attr2 attr3
|
||||
7 9999 NULL NULL
|
||||
8 9999 NULL NULL
|
||||
9 9999 NULL NULL
|
||||
10 9999 NULL NULL
|
||||
11 9999 NULL NULL
|
||||
12 9999 NULL NULL
|
||||
13 9999 NULL NULL
|
||||
9408 9999 NULL 8765
|
||||
9410 9999 NULL 9412
|
||||
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
|
||||
pk1 attr1 attr2 attr3
|
||||
7 9998 NULL NULL
|
||||
8 9998 NULL NULL
|
||||
9 9998 NULL NULL
|
||||
10 9998 NULL NULL
|
||||
11 9998 NULL NULL
|
||||
12 9998 NULL NULL
|
||||
13 9998 NULL NULL
|
||||
9408 9999 NULL 8765
|
||||
9410 9999 NULL 9412
|
||||
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
|
||||
pk1 attr1 attr2 attr3
|
||||
7 9998 NULL NULL
|
||||
8 9998 NULL NULL
|
||||
9 9998 NULL NULL
|
||||
10 9998 NULL NULL
|
||||
11 9998 NULL NULL
|
||||
12 9998 NULL NULL
|
||||
13 9998 NULL NULL
|
||||
9408 9997 NULL 8765
|
||||
9410 9997 NULL 9412
|
||||
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
|
||||
pk1 attr1 attr2 attr3
|
||||
7 9998 NULL NULL
|
||||
8 9998 NULL NULL
|
||||
9 9998 NULL NULL
|
||||
10 9998 NULL NULL
|
||||
11 9998 NULL NULL
|
||||
12 9998 NULL NULL
|
||||
13 9998 NULL NULL
|
||||
9408 9997 NULL 8765
|
||||
DELETE FROM t1;
|
||||
SELECT * FROM t1;
|
||||
pk1 attr1
|
||||
INSERT INTO t1 values (1, 4), (2, 4), (3, 5), (4, 4), (5, 5);
|
||||
pk1 attr1 attr2 attr3
|
||||
INSERT INTO t1 values (1, 4, NULL, NULL), (2, 4, NULL, NULL), (3, 5, NULL, NULL), (4, 4, NULL, NULL), (5, 5, NULL, NULL);
|
||||
DELETE FROM t1 WHERE attr1=4;
|
||||
SELECT * FROM t1 order by pk1;
|
||||
pk1 attr1
|
||||
3 5
|
||||
5 5
|
||||
pk1 attr1 attr2 attr3
|
||||
3 5 NULL NULL
|
||||
5 5 NULL NULL
|
||||
DELETE FROM t1;
|
||||
INSERT INTO t1 VALUES (9410,9412), (9411, 9413);
|
||||
INSERT INTO t1 VALUES (9410,9412, NULL, NULL), (9411, 9413, NULL, NULL);
|
||||
DELETE FROM t1 WHERE pk1 = 9410;
|
||||
SELECT * FROM t1;
|
||||
pk1 attr1
|
||||
9411 9413
|
||||
pk1 attr1 attr2 attr3
|
||||
9411 9413 NULL NULL
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (id INT, id2 int) engine=ndbcluster;
|
||||
INSERT INTO t1 values(3456, 7890);
|
||||
@@ -108,13 +116,17 @@ SELECT * FROM t1;
|
||||
id id2
|
||||
1234 7890
|
||||
DELETE FROM t1;
|
||||
INSERT INTO t1 values(3456, 7890), (3456, 7890), (3456, 7890);
|
||||
SELECT * FROM t1;
|
||||
INSERT INTO t1 values(3456, 7890), (3456, 7890), (3456, 7890), (3454, 7890);
|
||||
SELECT * FROM t1 ORDER BY id;
|
||||
id id2
|
||||
3454 7890
|
||||
3456 7890
|
||||
3456 7890
|
||||
3456 7890
|
||||
DELETE FROM t1 WHERE id = 3456;
|
||||
SELECT * FROM t1 ORDER BY id;
|
||||
id id2
|
||||
3454 7890
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (
|
||||
pk1 INT NOT NULL PRIMARY KEY,
|
||||
@@ -222,6 +234,18 @@ 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 where a > 5;
|
||||
select x1.a, x1.b from t2 x1, t2 x2 where x1.b = x2.b order by x1.a;
|
||||
a b
|
||||
1 10
|
||||
3 12
|
||||
5 14
|
||||
select a, b FROM t2 outer_table where
|
||||
a = (select a from t2 where b = outer_table.b ) order by a;
|
||||
a b
|
||||
1 10
|
||||
3 12
|
||||
5 14
|
||||
delete from t2;
|
||||
delete from t3;
|
||||
delete from t4;
|
||||
@@ -338,3 +362,30 @@ select * from t7;
|
||||
adress a b c
|
||||
No adress 8 NULL 12
|
||||
drop table t7;
|
||||
CREATE TABLE t1 (
|
||||
pk1 INT NOT NULL PRIMARY KEY,
|
||||
attr1 INT NOT NULL,
|
||||
attr2 INT,
|
||||
attr3 VARCHAR(10)
|
||||
) ENGINE=ndbcluster;
|
||||
INSERT INTO t1 VALUES (9410,9412, NULL, '9412'), (9411,9413, 17, '9413');
|
||||
create database mysqltest;
|
||||
use mysqltest;
|
||||
CREATE TABLE t2 (
|
||||
a bigint unsigned NOT NULL PRIMARY KEY,
|
||||
b int unsigned not null,
|
||||
c int unsigned
|
||||
) engine=ndbcluster;
|
||||
insert into t2 select pk1,attr1,attr2 from test.t1;
|
||||
select * from t2 order by a;
|
||||
a b c
|
||||
9410 9412 NULL
|
||||
9411 9413 17
|
||||
select b from test.t1, t2 where c = test.t1.attr2;
|
||||
b
|
||||
9413
|
||||
select b,test.t1.attr1 from test.t1, t2 where test.t1.pk1 < a;
|
||||
b attr1
|
||||
9413 9412
|
||||
drop table test.t1, t2;
|
||||
drop database mysqltest;
|
||||
|
324
mysql-test/r/ndb_blob.result
Normal file
324
mysql-test/r/ndb_blob.result
Normal file
@@ -0,0 +1,324 @@
|
||||
drop table if exists t1;
|
||||
drop database if exists mysqltest;
|
||||
set autocommit=0;
|
||||
create table t1 (
|
||||
a int not null primary key,
|
||||
b text not null,
|
||||
c int not null,
|
||||
d longblob,
|
||||
key (c)
|
||||
) engine=ndbcluster;
|
||||
set @x0 = '01234567012345670123456701234567';
|
||||
set @x0 = concat(@x0,@x0,@x0,@x0,@x0,@x0,@x0,@x0);
|
||||
set @b1 = 'b1';
|
||||
set @b1 = concat(@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1);
|
||||
set @b1 = concat(@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1);
|
||||
set @b1 = concat(@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1,@b1);
|
||||
set @b1 = concat(@b1,@x0);
|
||||
set @d1 = 'dd1';
|
||||
set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
|
||||
set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
|
||||
set @d1 = concat(@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1,@d1);
|
||||
set @b2 = 'b2';
|
||||
set @b2 = concat(@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2);
|
||||
set @b2 = concat(@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2);
|
||||
set @b2 = concat(@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2);
|
||||
set @b2 = concat(@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2,@b2);
|
||||
set @d2 = 'dd2';
|
||||
set @d2 = concat(@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2);
|
||||
set @d2 = concat(@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2);
|
||||
set @d2 = concat(@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2);
|
||||
set @d2 = concat(@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2,@d2);
|
||||
select length(@x0),length(@b1),length(@d1) from dual;
|
||||
length(@x0) length(@b1) length(@d1)
|
||||
256 2256 3000
|
||||
select length(@x0),length(@b2),length(@d2) from dual;
|
||||
length(@x0) length(@b2) length(@d2)
|
||||
256 20000 30000
|
||||
insert into t1 values(1,@b1,111,@d1);
|
||||
insert into t1 values(2,@b2,222,@d2);
|
||||
commit;
|
||||
explain select * from t1 where a = 1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 const PRIMARY PRIMARY 4 const 1
|
||||
select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
|
||||
from t1 where a=1;
|
||||
a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
|
||||
1 2256 b1 3000 dd1
|
||||
select a,length(b),substr(b,1+2*9000,2),length(d),substr(d,1+3*9000,3)
|
||||
from t1 where a=2;
|
||||
a length(b) substr(b,1+2*9000,2) length(d) substr(d,1+3*9000,3)
|
||||
2 20000 b2 30000 dd2
|
||||
update t1 set b=@b2,d=@d2 where a=1;
|
||||
update t1 set b=@b1,d=@d1 where a=2;
|
||||
commit;
|
||||
select a,length(b),substr(b,1+2*9000,2),length(d),substr(d,1+3*9000,3)
|
||||
from t1 where a=1;
|
||||
a length(b) substr(b,1+2*9000,2) length(d) substr(d,1+3*9000,3)
|
||||
1 20000 b2 30000 dd2
|
||||
select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
|
||||
from t1 where a=2;
|
||||
a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
|
||||
2 2256 b1 3000 dd1
|
||||
update t1 set b=concat(b,b),d=concat(d,d) where a=1;
|
||||
update t1 set b=concat(b,b),d=concat(d,d) where a=2;
|
||||
commit;
|
||||
select a,length(b),substr(b,1+4*9000,2),length(d),substr(d,1+6*9000,3)
|
||||
from t1 where a=1;
|
||||
a length(b) substr(b,1+4*9000,2) length(d) substr(d,1+6*9000,3)
|
||||
1 40000 b2 60000 dd2
|
||||
select a,length(b),substr(b,1+4*900,2),length(d),substr(d,1+6*900,3)
|
||||
from t1 where a=2;
|
||||
a length(b) substr(b,1+4*900,2) length(d) substr(d,1+6*900,3)
|
||||
2 4512 b1 6000 dd1
|
||||
update t1 set d=null where a=1;
|
||||
commit;
|
||||
select a from t1 where d is null;
|
||||
a
|
||||
1
|
||||
delete from t1 where a=1;
|
||||
delete from t1 where a=2;
|
||||
commit;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
0
|
||||
insert into t1 values(1,@b1,111,@d1);
|
||||
insert into t1 values(2,@b2,222,@d2);
|
||||
commit;
|
||||
explain select * from t1 where c = 111;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref c c 4 const 10 Using where
|
||||
select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
|
||||
from t1 where c=111;
|
||||
a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
|
||||
1 2256 b1 3000 dd1
|
||||
select a,length(b),substr(b,1+2*9000,2),length(d),substr(d,1+3*9000,3)
|
||||
from t1 where c=222;
|
||||
a length(b) substr(b,1+2*9000,2) length(d) substr(d,1+3*9000,3)
|
||||
2 20000 b2 30000 dd2
|
||||
update t1 set b=@b2,d=@d2 where c=111;
|
||||
update t1 set b=@b1,d=@d1 where c=222;
|
||||
commit;
|
||||
select a,length(b),substr(b,1+2*9000,2),length(d),substr(d,1+3*9000,3)
|
||||
from t1 where c=111;
|
||||
a length(b) substr(b,1+2*9000,2) length(d) substr(d,1+3*9000,3)
|
||||
1 20000 b2 30000 dd2
|
||||
select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
|
||||
from t1 where c=222;
|
||||
a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
|
||||
2 2256 b1 3000 dd1
|
||||
update t1 set d=null where c=111;
|
||||
commit;
|
||||
select a from t1 where d is null;
|
||||
a
|
||||
1
|
||||
delete from t1 where c=111;
|
||||
delete from t1 where c=222;
|
||||
commit;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
0
|
||||
insert into t1 values(1,'b1',111,'dd1');
|
||||
insert into t1 values(2,'b2',222,'dd2');
|
||||
insert into t1 values(3,'b3',333,'dd3');
|
||||
insert into t1 values(4,'b4',444,'dd4');
|
||||
insert into t1 values(5,'b5',555,'dd5');
|
||||
insert into t1 values(6,'b6',666,'dd6');
|
||||
insert into t1 values(7,'b7',777,'dd7');
|
||||
insert into t1 values(8,'b8',888,'dd8');
|
||||
insert into t1 values(9,'b9',999,'dd9');
|
||||
commit;
|
||||
explain select * from t1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 100
|
||||
select * from t1 order by a;
|
||||
a b c d
|
||||
1 b1 111 dd1
|
||||
2 b2 222 dd2
|
||||
3 b3 333 dd3
|
||||
4 b4 444 dd4
|
||||
5 b5 555 dd5
|
||||
6 b6 666 dd6
|
||||
7 b7 777 dd7
|
||||
8 b8 888 dd8
|
||||
9 b9 999 dd9
|
||||
update t1 set b=concat(a,'x',b),d=concat(a,'x',d);
|
||||
commit;
|
||||
select * from t1 order by a;
|
||||
a b c d
|
||||
1 1xb1 111 1xdd1
|
||||
2 2xb2 222 2xdd2
|
||||
3 3xb3 333 3xdd3
|
||||
4 4xb4 444 4xdd4
|
||||
5 5xb5 555 5xdd5
|
||||
6 6xb6 666 6xdd6
|
||||
7 7xb7 777 7xdd7
|
||||
8 8xb8 888 8xdd8
|
||||
9 9xb9 999 9xdd9
|
||||
delete from t1;
|
||||
commit;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
0
|
||||
insert into t1 values(1,@b1,111,@d1);
|
||||
insert into t1 values(2,@b2,222,@d2);
|
||||
commit;
|
||||
explain select * from t1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 100
|
||||
select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
|
||||
from t1 order by a;
|
||||
a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
|
||||
1 2256 b1 3000 dd1
|
||||
2 20000 b2 30000 dd2
|
||||
update t1 set b=concat(b,b),d=concat(d,d);
|
||||
commit;
|
||||
select a,length(b),substr(b,1+4*9000,2),length(d),substr(d,1+6*9000,3)
|
||||
from t1 order by a;
|
||||
a length(b) substr(b,1+4*9000,2) length(d) substr(d,1+6*9000,3)
|
||||
1 4512 6000
|
||||
2 40000 b2 60000 dd2
|
||||
delete from t1;
|
||||
commit;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
0
|
||||
insert into t1 values(1,'b1',111,'dd1');
|
||||
insert into t1 values(2,'b2',222,'dd2');
|
||||
insert into t1 values(3,'b3',333,'dd3');
|
||||
insert into t1 values(4,'b4',444,'dd4');
|
||||
insert into t1 values(5,'b5',555,'dd5');
|
||||
insert into t1 values(6,'b6',666,'dd6');
|
||||
insert into t1 values(7,'b7',777,'dd7');
|
||||
insert into t1 values(8,'b8',888,'dd8');
|
||||
insert into t1 values(9,'b9',999,'dd9');
|
||||
commit;
|
||||
explain select * from t1 where c >= 100 order by a;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range c c 4 NULL 10 Using where; Using filesort
|
||||
select * from t1 where c >= 100 order by a;
|
||||
a b c d
|
||||
1 b1 111 dd1
|
||||
2 b2 222 dd2
|
||||
3 b3 333 dd3
|
||||
4 b4 444 dd4
|
||||
5 b5 555 dd5
|
||||
6 b6 666 dd6
|
||||
7 b7 777 dd7
|
||||
8 b8 888 dd8
|
||||
9 b9 999 dd9
|
||||
update t1 set b=concat(a,'x',b),d=concat(a,'x',d)
|
||||
where c >= 100;
|
||||
commit;
|
||||
select * from t1 where c >= 100 order by a;
|
||||
a b c d
|
||||
1 1xb1 111 1xdd1
|
||||
2 2xb2 222 2xdd2
|
||||
3 3xb3 333 3xdd3
|
||||
4 4xb4 444 4xdd4
|
||||
5 5xb5 555 5xdd5
|
||||
6 6xb6 666 6xdd6
|
||||
7 7xb7 777 7xdd7
|
||||
8 8xb8 888 8xdd8
|
||||
9 9xb9 999 9xdd9
|
||||
select * from t1 order by a;
|
||||
a b c d
|
||||
1 1xb1 111 1xdd1
|
||||
2 2xb2 222 2xdd2
|
||||
3 3xb3 333 3xdd3
|
||||
4 4xb4 444 4xdd4
|
||||
5 5xb5 555 5xdd5
|
||||
6 6xb6 666 6xdd6
|
||||
7 7xb7 777 7xdd7
|
||||
8 8xb8 888 8xdd8
|
||||
9 9xb9 999 9xdd9
|
||||
alter table t1 add x int;
|
||||
select * from t1 order by a;
|
||||
a b c d x
|
||||
1 1xb1 111 1xdd1 NULL
|
||||
2 2xb2 222 2xdd2 NULL
|
||||
3 3xb3 333 3xdd3 NULL
|
||||
4 4xb4 444 4xdd4 NULL
|
||||
5 5xb5 555 5xdd5 NULL
|
||||
6 6xb6 666 6xdd6 NULL
|
||||
7 7xb7 777 7xdd7 NULL
|
||||
8 8xb8 888 8xdd8 NULL
|
||||
9 9xb9 999 9xdd9 NULL
|
||||
alter table t1 drop x;
|
||||
select * from t1 order by a;
|
||||
a b c d
|
||||
1 1xb1 111 1xdd1
|
||||
2 2xb2 222 2xdd2
|
||||
3 3xb3 333 3xdd3
|
||||
4 4xb4 444 4xdd4
|
||||
5 5xb5 555 5xdd5
|
||||
6 6xb6 666 6xdd6
|
||||
7 7xb7 777 7xdd7
|
||||
8 8xb8 888 8xdd8
|
||||
9 9xb9 999 9xdd9
|
||||
create database mysqltest;
|
||||
use mysqltest;
|
||||
CREATE TABLE t2 (
|
||||
a bigint unsigned NOT NULL PRIMARY KEY,
|
||||
b int unsigned not null,
|
||||
c int unsigned
|
||||
) engine=ndbcluster;
|
||||
insert into t2 values (1,1,1),(2,2,2);
|
||||
select * from test.t1,t2 where test.t1.a = t2.a order by test.t1.a;
|
||||
a b c d a b c
|
||||
1 1xb1 111 1xdd1 1 1 1
|
||||
2 2xb2 222 2xdd2 2 2 2
|
||||
drop table t2;
|
||||
use test;
|
||||
delete from t1 where c >= 100;
|
||||
commit;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
0
|
||||
insert into t1 values(1,@b1,111,@d1);
|
||||
insert into t1 values(2,@b2,222,@d2);
|
||||
commit;
|
||||
explain select * from t1 where c >= 100 order by a;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range c c 4 NULL 10 Using where; Using filesort
|
||||
select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
|
||||
from t1 where c >= 100 order by a;
|
||||
a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
|
||||
1 2256 b1 3000 dd1
|
||||
2 20000 b2 30000 dd2
|
||||
update t1 set b=concat(b,b),d=concat(d,d);
|
||||
commit;
|
||||
select a,length(b),substr(b,1+4*9000,2),length(d),substr(d,1+6*9000,3)
|
||||
from t1 where c >= 100 order by a;
|
||||
a length(b) substr(b,1+4*9000,2) length(d) substr(d,1+6*9000,3)
|
||||
1 4512 6000
|
||||
2 40000 b2 60000 dd2
|
||||
delete from t1 where c >= 100;
|
||||
commit;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
0
|
||||
insert into t1 values(1,@b1,111,@d1);
|
||||
insert into t1 values(2,@b2,222,@d2);
|
||||
select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
|
||||
from t1 where a = 0;
|
||||
a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
|
||||
select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
|
||||
from t1 where a = 1;
|
||||
a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
|
||||
1 2256 b1 3000 dd1
|
||||
select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
|
||||
from t1 where a = 2;
|
||||
a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
|
||||
2 20000 b2 30000 dd2
|
||||
select a,length(b),substr(b,1+2*900,2),length(d),substr(d,1+3*900,3)
|
||||
from t1 order by a;
|
||||
a length(b) substr(b,1+2*900,2) length(d) substr(d,1+3*900,3)
|
||||
1 2256 b1 3000 dd1
|
||||
2 20000 b2 30000 dd2
|
||||
rollback;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
0
|
||||
drop table t1;
|
||||
drop database mysqltest;
|
@@ -82,6 +82,24 @@ a b c
|
||||
4 5 12
|
||||
5 6 12
|
||||
6 7 12
|
||||
update t1 set b = b + 1 where b > 4 and b < 7;
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
1 2 13
|
||||
2 3 13
|
||||
3 4 12
|
||||
4 6 12
|
||||
5 7 12
|
||||
6 7 12
|
||||
update t1 set a = a + 10 where b > 1 and b < 7;
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
5 7 12
|
||||
6 7 12
|
||||
11 2 13
|
||||
12 3 13
|
||||
13 4 12
|
||||
14 6 12
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (
|
||||
a int unsigned NOT NULL PRIMARY KEY,
|
||||
@@ -187,4 +205,55 @@ a b c
|
||||
select * from t1 where b<=5 and c=0 or b<=5 and c=2;
|
||||
a b c
|
||||
19 4 0
|
||||
select count(*) from t1 where b = 0;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t1 where b = 1;
|
||||
count(*)
|
||||
1
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (
|
||||
a int unsigned NOT NULL PRIMARY KEY,
|
||||
b int unsigned,
|
||||
c int unsigned,
|
||||
KEY bc(b,c)
|
||||
) engine = ndb;
|
||||
insert into t1 values(1,1,1),(2,NULL,2),(3,NULL,NULL),(4,4,NULL);
|
||||
select * from t1 use index (bc) where b IS NULL;
|
||||
a b c
|
||||
3 NULL NULL
|
||||
2 NULL 2
|
||||
select * from t1 use index (bc)order by a;
|
||||
a b c
|
||||
1 1 1
|
||||
2 NULL 2
|
||||
3 NULL NULL
|
||||
4 4 NULL
|
||||
select * from t1 use index (bc) order by a;
|
||||
a b c
|
||||
1 1 1
|
||||
2 NULL 2
|
||||
3 NULL NULL
|
||||
4 4 NULL
|
||||
select * from t1 use index (PRIMARY) where b IS NULL order by a;
|
||||
a b c
|
||||
2 NULL 2
|
||||
3 NULL NULL
|
||||
select * from t1 use index (bc) where b IS NULL order by a;
|
||||
a b c
|
||||
2 NULL 2
|
||||
3 NULL NULL
|
||||
select * from t1 use index (bc) where b IS NULL and c IS NULL order by a;
|
||||
a b c
|
||||
3 NULL NULL
|
||||
select * from t1 use index (bc) where b IS NULL and c = 2 order by a;
|
||||
a b c
|
||||
2 NULL 2
|
||||
select * from t1 use index (bc) where b < 4 order by a;
|
||||
a b c
|
||||
1 1 1
|
||||
select * from t1 use index (bc) where b IS NOT NULL order by a;
|
||||
a b c
|
||||
1 1 1
|
||||
4 4 NULL
|
||||
drop table t1;
|
||||
|
@@ -21,6 +21,28 @@ insert into t1 values(7,8,3);
|
||||
select * from t1 where b = 4 order by a;
|
||||
a b c
|
||||
3 4 6
|
||||
insert into t1 values(8, 2, 3);
|
||||
ERROR 23000: Can't write, because of unique constraint, to table 't1'
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
1 2 3
|
||||
2 3 5
|
||||
3 4 6
|
||||
4 5 8
|
||||
5 6 2
|
||||
6 7 2
|
||||
7 8 3
|
||||
delete from t1 where a = 1;
|
||||
insert into t1 values(8, 2, 3);
|
||||
select * from t1 order by a;
|
||||
a b c
|
||||
2 3 5
|
||||
3 4 6
|
||||
4 5 8
|
||||
5 6 2
|
||||
6 7 2
|
||||
7 8 3
|
||||
8 2 3
|
||||
drop table t1;
|
||||
CREATE TABLE t2 (
|
||||
a int unsigned NOT NULL PRIMARY KEY,
|
||||
@@ -42,6 +64,28 @@ insert into t2 values(7,8,3);
|
||||
select * from t2 where b = 4 order by a;
|
||||
a b c
|
||||
3 4 6
|
||||
insert into t2 values(8, 2, 3);
|
||||
ERROR 23000: Can't write, because of unique constraint, to table 't2'
|
||||
select * from t2 order by a;
|
||||
a b c
|
||||
1 2 3
|
||||
2 3 5
|
||||
3 4 6
|
||||
4 5 8
|
||||
5 6 2
|
||||
6 7 2
|
||||
7 8 3
|
||||
delete from t2 where a = 1;
|
||||
insert into t2 values(8, 2, 3);
|
||||
select * from t2 order by a;
|
||||
a b c
|
||||
2 3 5
|
||||
3 4 6
|
||||
4 5 8
|
||||
5 6 2
|
||||
6 7 2
|
||||
7 8 3
|
||||
8 2 3
|
||||
drop table t2;
|
||||
CREATE TABLE t3 (
|
||||
a int unsigned NOT NULL,
|
||||
@@ -65,6 +109,68 @@ a b c
|
||||
3 4 6
|
||||
drop table t3;
|
||||
CREATE TABLE t1 (
|
||||
pk int NOT NULL PRIMARY KEY,
|
||||
a int unsigned,
|
||||
UNIQUE KEY (a)
|
||||
) engine=ndbcluster;
|
||||
insert into t1 values (-1,NULL), (0,0), (1,NULL),(2,2),(3,NULL),(4,4);
|
||||
select * from t1 order by pk;
|
||||
pk a
|
||||
-1 NULL
|
||||
0 0
|
||||
1 NULL
|
||||
2 2
|
||||
3 NULL
|
||||
4 4
|
||||
insert into t1 values (5,0);
|
||||
ERROR 23000: Can't write, because of unique constraint, to table 't1'
|
||||
select * from t1 order by pk;
|
||||
pk a
|
||||
-1 NULL
|
||||
0 0
|
||||
1 NULL
|
||||
2 2
|
||||
3 NULL
|
||||
4 4
|
||||
delete from t1 where a = 0;
|
||||
insert into t1 values (5,0);
|
||||
select * from t1 order by pk;
|
||||
pk a
|
||||
-1 NULL
|
||||
1 NULL
|
||||
2 2
|
||||
3 NULL
|
||||
4 4
|
||||
5 0
|
||||
CREATE TABLE t2 (
|
||||
pk int NOT NULL PRIMARY KEY,
|
||||
a int unsigned,
|
||||
b tinyint NOT NULL,
|
||||
c VARCHAR(10),
|
||||
UNIQUE KEY si(a, c)
|
||||
) engine=ndbcluster;
|
||||
insert into t2 values (-1,1,17,NULL),(0,NULL,18,NULL),(1,3,19,'abc');
|
||||
select * from t2 order by pk;
|
||||
pk a b c
|
||||
-1 1 17 NULL
|
||||
0 NULL 18 NULL
|
||||
1 3 19 abc
|
||||
insert into t2 values(2,3,19,'abc');
|
||||
ERROR 23000: Can't write, because of unique constraint, to table 't2'
|
||||
select * from t2 order by pk;
|
||||
pk a b c
|
||||
-1 1 17 NULL
|
||||
0 NULL 18 NULL
|
||||
1 3 19 abc
|
||||
delete from t2 where c IS NOT NULL;
|
||||
insert into t2 values(2,3,19,'abc');
|
||||
select * from t2 order by pk;
|
||||
pk a b c
|
||||
-1 1 17 NULL
|
||||
0 NULL 18 NULL
|
||||
2 3 19 abc
|
||||
drop table t1, t2;
|
||||
CREATE TABLE t1 (
|
||||
cid smallint(5) unsigned NOT NULL default '0',
|
||||
cv varchar(250) NOT NULL default '',
|
||||
PRIMARY KEY (cid),
|
||||
@@ -74,8 +180,10 @@ 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)
|
||||
PRIMARY KEY (cid),
|
||||
UNIQUE KEY (cid, cap)
|
||||
) engine=ndbcluster;
|
||||
INSERT INTO t2 VALUES (NULL,'another dummy');
|
||||
CREATE TABLE t3 (
|
||||
gid bigint(20) unsigned NOT NULL auto_increment,
|
||||
gn varchar(255) NOT NULL default '',
|
||||
@@ -132,6 +240,9 @@ cid cv
|
||||
8 dummy
|
||||
select * from t1 where cv = 'test';
|
||||
cid cv
|
||||
select * from t2 where cap = 'another dummy';
|
||||
cid cap
|
||||
0 another dummy
|
||||
select * from t4 where uid = 1 and gid=1 and rid=2 and cid=4;
|
||||
uid gid rid cid
|
||||
1 1 2 4
|
||||
|
31
mysql-test/r/ndb_limit.result
Normal file
31
mysql-test/r/ndb_limit.result
Normal file
@@ -0,0 +1,31 @@
|
||||
DROP TABLE IF EXISTS t2;
|
||||
CREATE TABLE t2 (
|
||||
a bigint unsigned NOT NULL PRIMARY KEY,
|
||||
b int unsigned not null,
|
||||
c int unsigned
|
||||
) engine=ndbcluster;
|
||||
select count(*) from t2;
|
||||
count(*)
|
||||
10000
|
||||
delete from t2 limit 1;
|
||||
select count(*) from t2;
|
||||
count(*)
|
||||
9999
|
||||
delete from t2 limit 100;
|
||||
select count(*) from t2;
|
||||
count(*)
|
||||
9899
|
||||
delete from t2 limit 1000;
|
||||
select count(*) from t2;
|
||||
count(*)
|
||||
8899
|
||||
update t2 set c=12345678 limit 100;
|
||||
select count(*) from t2 where c=12345678;
|
||||
count(*)
|
||||
100
|
||||
select count(*) from t2 where c=12345678 limit 1000;
|
||||
count(*)
|
||||
100
|
||||
select * from t2 limit 0;
|
||||
a b c
|
||||
drop table t2;
|
30
mysql-test/r/ndb_lock.result
Normal file
30
mysql-test/r/ndb_lock.result
Normal file
@@ -0,0 +1,30 @@
|
||||
DROP TABLE IF EXISTS t1,t2,t3,t4,t5,t6,t7;
|
||||
create table t1 (x integer not null primary key, y varchar(32)) engine = ndb;
|
||||
insert into t1 values (1,'one'), (2,'two');
|
||||
select * from t1 order by x;
|
||||
x y
|
||||
1 one
|
||||
2 two
|
||||
select * from t1 order by x;
|
||||
x y
|
||||
1 one
|
||||
2 two
|
||||
start transaction;
|
||||
insert into t1 values (3,'three');
|
||||
select * from t1 order by x;
|
||||
x y
|
||||
1 one
|
||||
2 two
|
||||
3 three
|
||||
start transaction;
|
||||
select * from t1 order by x;
|
||||
x y
|
||||
1 one
|
||||
2 two
|
||||
commit;
|
||||
select * from t1 order by x;
|
||||
x y
|
||||
1 one
|
||||
2 two
|
||||
3 three
|
||||
commit;
|
@@ -11,7 +11,7 @@ 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'
|
||||
ERROR 23000: Duplicate entry '1-1' for key 1
|
||||
replace into t1 (gesuchnr,benutzer_id) values (1,1);
|
||||
select * from t1 order by gesuchnr;
|
||||
gesuchnr benutzer_id
|
||||
|
257
mysql-test/r/ndb_transaction.result
Normal file
257
mysql-test/r/ndb_transaction.result
Normal file
@@ -0,0 +1,257 @@
|
||||
DROP TABLE IF EXISTS t1,t2,t3,t4,t5,t6,t7;
|
||||
drop database if exists mysqltest;
|
||||
CREATE TABLE t1 (
|
||||
pk1 INT NOT NULL PRIMARY KEY,
|
||||
attr1 INT NOT NULL
|
||||
) ENGINE=ndbcluster;
|
||||
begin;
|
||||
insert into t1 values(1,1);
|
||||
insert into t1 values(2,2);
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
2
|
||||
select * from t1 where pk1 = 1;
|
||||
pk1 attr1
|
||||
1 1
|
||||
select t1.attr1 from t1, t1 as t1x where t1.pk1 = t1x.pk1 + 1;
|
||||
attr1
|
||||
2
|
||||
rollback;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
0
|
||||
select * from t1 where pk1 = 1;
|
||||
pk1 attr1
|
||||
select t1.attr1 from t1, t1 as t1x where t1.pk1 = t1x.pk1 + 1;
|
||||
attr1
|
||||
begin;
|
||||
insert into t1 values(1,1);
|
||||
insert into t1 values(2,2);
|
||||
commit;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
2
|
||||
select * from t1 where pk1 = 1;
|
||||
pk1 attr1
|
||||
1 1
|
||||
select t1.attr1 from t1, t1 as t1x where t1.pk1 = t1x.pk1 + 1;
|
||||
attr1
|
||||
2
|
||||
begin;
|
||||
update t1 set attr1 = attr1 * 2;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
2
|
||||
select * from t1 where pk1 = 1;
|
||||
pk1 attr1
|
||||
1 2
|
||||
select * from t1, t1 as t1x where t1x.attr1 = t1.attr1 - 2;
|
||||
pk1 attr1 pk1 attr1
|
||||
2 4 1 2
|
||||
rollback;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
2
|
||||
select * from t1 where pk1 = 1;
|
||||
pk1 attr1
|
||||
1 1
|
||||
select * from t1, t1 as t1x where t1x.attr1 = t1.attr1 - 2;
|
||||
pk1 attr1 pk1 attr1
|
||||
begin;
|
||||
update t1 set attr1 = attr1 * 2;
|
||||
commit;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
2
|
||||
select * from t1 where pk1 = 1;
|
||||
pk1 attr1
|
||||
1 2
|
||||
select * from t1, t1 as t1x where t1x.attr1 = t1.attr1 - 2;
|
||||
pk1 attr1 pk1 attr1
|
||||
2 4 1 2
|
||||
begin;
|
||||
delete from t1 where attr1 = 2;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
1
|
||||
select * from t1 where pk1 = 1;
|
||||
pk1 attr1
|
||||
select * from t1, t1 as t1x where t1x.attr1 = t1.attr1 - 2;
|
||||
pk1 attr1 pk1 attr1
|
||||
rollback;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
2
|
||||
select * from t1 where pk1 = 1;
|
||||
pk1 attr1
|
||||
1 2
|
||||
select * from t1, t1 as t1x where t1x.attr1 = t1.attr1 - 2;
|
||||
pk1 attr1 pk1 attr1
|
||||
2 4 1 2
|
||||
begin;
|
||||
delete from t1 where attr1 = 2;
|
||||
commit;
|
||||
select count(*) from t1;
|
||||
count(*)
|
||||
1
|
||||
select * from t1 where pk1 = 1;
|
||||
pk1 attr1
|
||||
select * from t1, t1 as t1x where t1x.attr1 = t1.attr1 - 2;
|
||||
pk1 attr1 pk1 attr1
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (id INT, id2 int) engine=ndbcluster;
|
||||
begin;
|
||||
insert into t1 values(1,1);
|
||||
insert into t1 values(2,2);
|
||||
select sum(id) from t1;
|
||||
sum(id)
|
||||
3
|
||||
select * from t1 where id = 1;
|
||||
id id2
|
||||
1 1
|
||||
select t1.id from t1, t1 as t1x where t1.id2 = t1x.id2 + 1;
|
||||
id
|
||||
2
|
||||
rollback;
|
||||
select sum(id) from t1;
|
||||
sum(id)
|
||||
NULL
|
||||
select * from t1 where id = 1;
|
||||
id id2
|
||||
select t1.id from t1, t1 as t1x where t1.id2 = t1x.id2 + 1;
|
||||
id
|
||||
begin;
|
||||
insert into t1 values(1,1);
|
||||
insert into t1 values(2,2);
|
||||
commit;
|
||||
select sum(id) from t1;
|
||||
sum(id)
|
||||
3
|
||||
select * from t1 where id = 1;
|
||||
id id2
|
||||
1 1
|
||||
select t1.id from t1, t1 as t1x where t1.id2 = t1x.id2 + 1;
|
||||
id
|
||||
2
|
||||
begin;
|
||||
update t1 set id = id * 2;
|
||||
select sum(id) from t1;
|
||||
sum(id)
|
||||
6
|
||||
select * from t1 where id = 2;
|
||||
id id2
|
||||
2 1
|
||||
select * from t1, t1 as t1x where t1x.id = t1.id - 2;
|
||||
id id2 id id2
|
||||
4 2 2 1
|
||||
rollback;
|
||||
select sum(id) from t1;
|
||||
sum(id)
|
||||
3
|
||||
select * from t1 where id = 2;
|
||||
id id2
|
||||
2 2
|
||||
select * from t1, t1 as t1x where t1x.id = t1.id - 2;
|
||||
id id2 id id2
|
||||
begin;
|
||||
update t1 set id = id * 2;
|
||||
commit;
|
||||
select sum(id) from t1;
|
||||
sum(id)
|
||||
6
|
||||
select * from t1 where id = 2;
|
||||
id id2
|
||||
2 1
|
||||
select * from t1, t1 as t1x where t1x.id = t1.id - 2;
|
||||
id id2 id id2
|
||||
4 2 2 1
|
||||
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 count(*) from t2;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t3;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t4;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t2;
|
||||
count(*)
|
||||
100
|
||||
select count(*) from t3;
|
||||
count(*)
|
||||
100
|
||||
select count(*) from t4;
|
||||
count(*)
|
||||
100
|
||||
begin;
|
||||
begin;
|
||||
drop table t2;
|
||||
drop table t3;
|
||||
drop table t4;
|
||||
CREATE TABLE t1 (
|
||||
pk1 INT NOT NULL PRIMARY KEY,
|
||||
attr1 INT NOT NULL
|
||||
) ENGINE=ndbcluster;
|
||||
create database mysqltest;
|
||||
use mysqltest;
|
||||
CREATE TABLE t2 (
|
||||
a bigint unsigned NOT NULL PRIMARY KEY,
|
||||
b int unsigned not null,
|
||||
c int unsigned
|
||||
) engine=ndbcluster;
|
||||
begin;
|
||||
insert into test.t1 values(1,1);
|
||||
insert into t2 values(1,1,1);
|
||||
insert into test.t1 values(2,2);
|
||||
insert into t2 values(2,2,2);
|
||||
select count(*) from test.t1;
|
||||
count(*)
|
||||
2
|
||||
select count(*) from t2;
|
||||
count(*)
|
||||
2
|
||||
select * from test.t1 where pk1 = 1;
|
||||
pk1 attr1
|
||||
1 1
|
||||
select * from t2 where a = 1;
|
||||
a b c
|
||||
1 1 1
|
||||
select test.t1.attr1
|
||||
from test.t1, test.t1 as t1x where test.t1.pk1 = t1x.pk1 + 1;
|
||||
attr1
|
||||
2
|
||||
select t2.a
|
||||
from t2, t2 as t2x where t2.a = t2x.a + 1;
|
||||
a
|
||||
2
|
||||
select test.t1.pk1, a from test.t1,t2 where b > test.t1.attr1;
|
||||
pk1 a
|
||||
1 2
|
||||
rollback;
|
||||
select count(*) from test.t1;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t2;
|
||||
count(*)
|
||||
0
|
||||
drop table test.t1, t2;
|
||||
drop database mysqltest;
|
14
mysql-test/r/ndb_truncate.result
Normal file
14
mysql-test/r/ndb_truncate.result
Normal file
@@ -0,0 +1,14 @@
|
||||
DROP TABLE IF EXISTS t2;
|
||||
CREATE TABLE t2 (
|
||||
a bigint unsigned NOT NULL PRIMARY KEY,
|
||||
b int unsigned not null,
|
||||
c int unsigned
|
||||
) engine=ndbcluster;
|
||||
select count(*) from t2;
|
||||
count(*)
|
||||
5000
|
||||
truncate table t2;
|
||||
select count(*) from t2;
|
||||
count(*)
|
||||
0
|
||||
drop table t2;
|
36
mysql-test/r/ndb_types.result
Normal file
36
mysql-test/r/ndb_types.result
Normal file
@@ -0,0 +1,36 @@
|
||||
DROP TABLE IF EXISTS t1;
|
||||
CREATE TABLE t1 (
|
||||
auto int(5) unsigned NOT NULL auto_increment,
|
||||
string char(10) default "hello",
|
||||
tiny tinyint(4) DEFAULT '0' NOT NULL ,
|
||||
short smallint(6) DEFAULT '1' NOT NULL ,
|
||||
medium mediumint(8) DEFAULT '0' NOT NULL,
|
||||
long_int int(11) DEFAULT '0' NOT NULL,
|
||||
longlong bigint(13) DEFAULT '0' NOT NULL,
|
||||
real_float float(13,1) DEFAULT 0.0 NOT NULL,
|
||||
real_double double(16,4),
|
||||
utiny tinyint(3) unsigned DEFAULT '0' NOT NULL,
|
||||
ushort smallint(5) unsigned zerofill DEFAULT '00000' NOT NULL,
|
||||
umedium mediumint(8) unsigned DEFAULT '0' NOT NULL,
|
||||
ulong int(11) unsigned DEFAULT '0' NOT NULL,
|
||||
ulonglong bigint(13) unsigned DEFAULT '0' NOT NULL,
|
||||
time_stamp timestamp,
|
||||
date_field date,
|
||||
time_field time,
|
||||
date_time datetime,
|
||||
options enum('one','two','tree') not null,
|
||||
flags set('one','two','tree') not null,
|
||||
PRIMARY KEY (auto),
|
||||
KEY (utiny),
|
||||
KEY (tiny),
|
||||
KEY (short),
|
||||
KEY any_name (medium),
|
||||
KEY (longlong),
|
||||
KEY (real_float),
|
||||
KEY (ushort),
|
||||
KEY (umedium),
|
||||
KEY (ulong),
|
||||
KEY (ulonglong,ulong),
|
||||
KEY (options,flags)
|
||||
);
|
||||
drop table t1;
|
@@ -375,4 +375,17 @@ a
|
||||
13
|
||||
14
|
||||
15
|
||||
delete from t1 where a > 3;
|
||||
select a, not(not(a)) from t1;
|
||||
a not(not(a))
|
||||
NULL NULL
|
||||
0 0
|
||||
1 1
|
||||
2 1
|
||||
3 1
|
||||
explain extended select a, not(not(a)), not(a <= 2 and not(a)), not(a not like "1"), not (a not in (1,2)), not(a != 2) from t1 where not(not(a)) having not(not(a));
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 index NULL a 5 NULL 5 Using where; Using index
|
||||
Warnings:
|
||||
Note 1003 select `test`.`t1`.`a` AS `a`,(`test`.`t1`.`a` <> 0) AS `not(not(a))`,((`test`.`t1`.`a` > 2) or `test`.`t1`.`a`) AS `not(a <= 2 and not(a))`,(`test`.`t1`.`a` like _latin1'1') AS `not(a not like "1")`,(`test`.`t1`.`a` in (1,2)) AS `not (a not in (1,2))`,(`test`.`t1`.`a` = 2) AS `not(a != 2)` from `test`.`t1` where `test`.`t1`.`a` having `test`.`t1`.`a`
|
||||
drop table t1;
|
||||
|
@@ -156,3 +156,31 @@ drop table t1;
|
||||
select cast(NULL as signed);
|
||||
cast(NULL as signed)
|
||||
NULL
|
||||
create table t1(i int, key(i));
|
||||
insert into t1 values(1);
|
||||
insert into t1 select i*2 from t1;
|
||||
insert into t1 select i*2 from t1;
|
||||
insert into t1 select i*2 from t1;
|
||||
insert into t1 select i*2 from t1;
|
||||
insert into t1 select i*2 from t1;
|
||||
insert into t1 select i*2 from t1;
|
||||
insert into t1 select i*2 from t1;
|
||||
insert into t1 select i*2 from t1;
|
||||
insert into t1 select i*2 from t1;
|
||||
insert into t1 values(null);
|
||||
explain select * from t1 where i=2 or i is null;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref_or_null i i 5 const 10 Using where; Using index
|
||||
select count(*) from t1 where i=2 or i is null;
|
||||
count(*)
|
||||
10
|
||||
alter table t1 change i i int not null;
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'i' at row 513
|
||||
explain select * from t1 where i=2 or i is null;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref i i 4 const 8 Using index
|
||||
select count(*) from t1 where i=2 or i is null;
|
||||
count(*)
|
||||
9
|
||||
drop table t1;
|
||||
|
@@ -33,10 +33,10 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref a,b a 5 const 2 Using where; Using index
|
||||
explain select * from t1 where a > 1 and a < 3 limit 1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 index a a 9 NULL 12 Using where; Using index
|
||||
1 SIMPLE t1 range a a 5 NULL 1 Using where; Using index
|
||||
explain select * from t1 where a > 8 and a < 9;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 index a a 9 NULL 12 Using where; Using index
|
||||
1 SIMPLE t1 range a a 5 NULL 1 Using where; Using index
|
||||
select * from t1 where a is null;
|
||||
a b
|
||||
NULL 7
|
||||
@@ -66,6 +66,11 @@ a b
|
||||
NULL 7
|
||||
NULL 9
|
||||
NULL 9
|
||||
select * from t1 where a > 1 and a < 3 limit 1;
|
||||
a b
|
||||
2 2
|
||||
select * from t1 where a > 8 and a < 9;
|
||||
a b
|
||||
create table t2 like t1;
|
||||
insert into t2 select * from t1;
|
||||
alter table t1 modify b blob not null, add c int not null, drop key a, add unique key (a,b(20),c), drop key b, add key (b(10));
|
||||
@@ -153,12 +158,12 @@ a b
|
||||
7 NULL
|
||||
explain select * from t1 where (a = 7 or a is null) and (b=7 or b is null);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range a,b a 10 NULL 3 Using where; Using index
|
||||
1 SIMPLE t1 ref_or_null a,b a 5 const 4 Using where; Using index
|
||||
select * from t1 where (a = 7 or a is null) and (b=7 or b is null);
|
||||
a b
|
||||
NULL 7
|
||||
7 NULL
|
||||
7 7
|
||||
NULL 7
|
||||
explain select * from t1 where (a = 7 or a is null) and (a = 7 or a is null);
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref_or_null a a 5 const 5 Using where; Using index
|
||||
|
@@ -271,3 +271,39 @@ i i COUNT(*)
|
||||
100 NULL 2
|
||||
NULL NULL 2
|
||||
drop table t1,t2;
|
||||
CREATE TABLE user_day(
|
||||
user_id INT NOT NULL,
|
||||
date DATE NOT NULL,
|
||||
UNIQUE INDEX user_date (user_id, date)
|
||||
);
|
||||
INSERT INTO user_day VALUES
|
||||
(1, '2004-06-06' ),
|
||||
(1, '2004-06-07' ),
|
||||
(2, '2004-06-06' );
|
||||
SELECT
|
||||
d.date AS day,
|
||||
COUNT(d.user_id) as sample,
|
||||
COUNT(next_day.user_id) AS not_cancelled
|
||||
FROM user_day d
|
||||
LEFT JOIN user_day next_day
|
||||
ON next_day.user_id=d.user_id AND
|
||||
next_day.date= DATE_ADD( d.date, interval 1 day )
|
||||
GROUP BY day;
|
||||
day sample not_cancelled
|
||||
2004-06-06 2 1
|
||||
2004-06-07 1 0
|
||||
SELECT
|
||||
d.date AS day,
|
||||
COUNT(d.user_id) as sample,
|
||||
COUNT(next_day.user_id) AS not_cancelled
|
||||
FROM user_day d
|
||||
LEFT JOIN user_day next_day
|
||||
ON next_day.user_id=d.user_id AND
|
||||
next_day.date= DATE_ADD( d.date, interval 1 day )
|
||||
GROUP BY day
|
||||
WITH ROLLUP;
|
||||
day sample not_cancelled
|
||||
2004-06-06 2 1
|
||||
2004-06-07 1 0
|
||||
NULL 3 1
|
||||
DROP TABLE user_day;
|
||||
|
@@ -116,7 +116,7 @@ col1
|
||||
2
|
||||
3
|
||||
2
|
||||
select col1 as id from t1 order by t1.id;
|
||||
select col1 as id from t1 order by id;
|
||||
id
|
||||
1
|
||||
1
|
||||
@@ -126,16 +126,16 @@ id
|
||||
2
|
||||
2
|
||||
3
|
||||
select concat(col1) as id from t1 order by t1.id;
|
||||
select concat(col1) as id from t1 order by id;
|
||||
id
|
||||
1
|
||||
1
|
||||
1
|
||||
2
|
||||
2
|
||||
2
|
||||
1
|
||||
1
|
||||
1
|
||||
2
|
||||
3
|
||||
2
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (id int auto_increment primary key,aika varchar(40),aikakentta timestamp);
|
||||
insert into t1 (aika) values ('Keskiviikko');
|
||||
@@ -328,7 +328,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range a a 9 NULL 5 Using where; Using index
|
||||
explain select * from t1 where a = 2 and b < 2 order by a desc,b desc;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref a a 4 const 2 Using where; Using index
|
||||
1 SIMPLE t1 range a a 9 NULL 2 Using where; Using index
|
||||
explain select * from t1 where a = 1 order by b desc;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref a a 4 const 5 Using where; Using index
|
||||
@@ -660,3 +660,66 @@ a b c d
|
||||
1 1 12 -1
|
||||
1 1 2 0
|
||||
drop table t1, t2;
|
||||
create table t1 (col1 int, col int);
|
||||
create table t2 (col2 int, col int);
|
||||
insert into t1 values (1,1),(2,2),(3,3);
|
||||
insert into t2 values (1,3),(2,2),(3,1);
|
||||
select t1.* , t2.col as t2_col from t1 left join t2 on (t1.col1=t2.col2)
|
||||
order by col;
|
||||
col1 col t2_col
|
||||
1 1 3
|
||||
2 2 2
|
||||
3 3 1
|
||||
select col1 as col, col from t1 order by col;
|
||||
ERROR 23000: Column 'col' in order clause is ambiguous
|
||||
select t1.col as c1, t2.col as c2 from t1, t2 where t1.col1=t2.col2
|
||||
order by col;
|
||||
ERROR 23000: Column 'col' in order clause is ambiguous
|
||||
select t1.col as c1, t2.col as c2 from t1, t2 where t1.col1=t2.col2
|
||||
order by col;
|
||||
ERROR 23000: Column 'col' in order clause is ambiguous
|
||||
select col1 from t1, t2 where t1.col1=t2.col2 order by col;
|
||||
ERROR 23000: Column 'col' in order clause is ambiguous
|
||||
select t1.col as t1_col, t2.col from t1, t2 where t1.col1=t2.col2
|
||||
order by col;
|
||||
t1_col col
|
||||
3 1
|
||||
2 2
|
||||
1 3
|
||||
select col2 as c, col as c from t2 order by col;
|
||||
c c
|
||||
3 1
|
||||
2 2
|
||||
1 3
|
||||
select col2 as col, col as col2 from t2 order by col;
|
||||
col col2
|
||||
1 3
|
||||
2 2
|
||||
3 1
|
||||
select t1.col as t1_col, t2.col2 from t1, t2 where t1.col1=t2.col2
|
||||
order by col;
|
||||
t1_col col2
|
||||
1 1
|
||||
2 2
|
||||
3 3
|
||||
select t2.col2, t2.col, t2.col from t2 order by col;
|
||||
col2 col col
|
||||
3 1 1
|
||||
2 2 2
|
||||
1 3 3
|
||||
select t2.col2 as col from t2 order by t2.col;
|
||||
col
|
||||
3
|
||||
2
|
||||
1
|
||||
select t2.col2 as col, t2.col from t2 order by t2.col;
|
||||
col col
|
||||
3 1
|
||||
2 2
|
||||
1 3
|
||||
select t2.col2, t2.col, t2.col from t2 order by t2.col;
|
||||
col2 col col
|
||||
3 1 1
|
||||
2 2 2
|
||||
1 3 3
|
||||
drop table t1, t2;
|
||||
|
@@ -219,3 +219,54 @@ Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length I
|
||||
t1 MyISAM 9 Dynamic 0 0 0 4294967295 1024 0 NULL # # # latin1_swedish_ci NULL
|
||||
deallocate prepare stmt1 ;
|
||||
drop table t1;
|
||||
create table t1(a varchar(2), b varchar(3));
|
||||
prepare stmt1 from "select a, b from t1 where (not (a='aa' and b < 'zzz'))";
|
||||
execute stmt1;
|
||||
a b
|
||||
execute stmt1;
|
||||
a b
|
||||
deallocate prepare stmt1;
|
||||
drop table t1;
|
||||
prepare stmt1 from "select 1 into @var";
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
prepare stmt1 from "create table t1 select 1 as i";
|
||||
execute stmt1;
|
||||
drop table t1;
|
||||
execute stmt1;
|
||||
prepare stmt1 from "insert into t1 select i from t1";
|
||||
execute stmt1;
|
||||
execute stmt1;
|
||||
prepare stmt1 from "select * from t1 into outfile 'f1.txt'";
|
||||
execute stmt1;
|
||||
deallocate prepare stmt1;
|
||||
drop table t1;
|
||||
prepare stmt1 from 'select 1';
|
||||
prepare STMT1 from 'select 2';
|
||||
execute sTmT1;
|
||||
2
|
||||
2
|
||||
deallocate prepare StMt1;
|
||||
deallocate prepare Stmt1;
|
||||
ERROR HY000: Unknown prepared statement handler (Stmt1) given to DEALLOCATE PREPARE
|
||||
set names utf8;
|
||||
prepare `ü` from 'select 1234';
|
||||
execute `ü` ;
|
||||
1234
|
||||
1234
|
||||
set names latin1;
|
||||
execute `<60>`;
|
||||
1234
|
||||
1234
|
||||
set names default;
|
||||
create table t1 (a varchar(10)) charset=utf8;
|
||||
insert into t1 (a) values ('yahoo');
|
||||
set character_set_connection=latin1;
|
||||
prepare stmt from 'select a from t1 where a like ?';
|
||||
set @var='google';
|
||||
execute stmt using @var;
|
||||
a
|
||||
execute stmt using @var;
|
||||
a
|
||||
deallocate prepare stmt;
|
||||
drop table t1;
|
||||
|
@@ -317,6 +317,7 @@ NDBCLUSTER YES/NO Clustered, fault-tolerant, memory-based tables
|
||||
NDB YES/NO Alias for NDBCLUSTER
|
||||
EXAMPLE YES/NO Example storage engine
|
||||
ARCHIVE YES/NO Archive storage engine
|
||||
CSV YES/NO CSV storage engine
|
||||
drop table if exists tx;
|
||||
prepare stmt1 from ' drop table if exists tx ' ;
|
||||
execute stmt1 ;
|
||||
@@ -333,12 +334,12 @@ prepare stmt1 from ' deallocate prepare never_prepared ' ;
|
||||
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 'never_prepared' at line 1
|
||||
prepare stmt4 from ' use test ' ;
|
||||
ERROR HY000: This command is not supported in the prepared statement protocol yet
|
||||
prepare stmt3 from ' create database drop_me ';
|
||||
prepare stmt3 from ' create database mysqltest ';
|
||||
ERROR HY000: This command is not supported in the prepared statement protocol yet
|
||||
create database drop_me ;
|
||||
prepare stmt3 from ' drop database drop_me ';
|
||||
create database mysqltest ;
|
||||
prepare stmt3 from ' drop database mysqltest ';
|
||||
ERROR HY000: This command is not supported in the prepared statement protocol yet
|
||||
drop database drop_me ;
|
||||
drop database mysqltest ;
|
||||
prepare stmt3 from ' grant all on test.t1 to drop_user@localhost
|
||||
identified by ''looser'' ';
|
||||
ERROR HY000: This command is not supported in the prepared statement protocol yet
|
||||
|
@@ -870,7 +870,7 @@ def test t_many_col_types t_many_col_types c11 c11 0 9 6 Y 32768 4 63
|
||||
def test t_many_col_types t_many_col_types c12 c12 0 10 6 Y 32768 4 63
|
||||
def test t_many_col_types t_many_col_types c13 c13 10 10 10 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c14 c14 12 19 19 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c15 c15 7 19 19 N 1217 0 63
|
||||
def test t_many_col_types t_many_col_types c15 c15 7 19 19 N 1249 0 63
|
||||
def test t_many_col_types t_many_col_types c16 c16 11 8 8 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c17 c17 13 4 4 Y 32864 0 63
|
||||
def test t_many_col_types t_many_col_types c18 c18 1 1 1 Y 32768 0 63
|
||||
|
@@ -870,7 +870,7 @@ def test t_many_col_types t_many_col_types c11 c11 0 9 6 Y 32768 4 63
|
||||
def test t_many_col_types t_many_col_types c12 c12 0 10 6 Y 32768 4 63
|
||||
def test t_many_col_types t_many_col_types c13 c13 10 10 10 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c14 c14 12 19 19 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c15 c15 7 19 19 N 1217 0 63
|
||||
def test t_many_col_types t_many_col_types c15 c15 7 19 19 N 1249 0 63
|
||||
def test t_many_col_types t_many_col_types c16 c16 11 8 8 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c17 c17 13 4 4 Y 32864 0 63
|
||||
def test t_many_col_types t_many_col_types c18 c18 1 1 1 Y 32768 0 63
|
||||
|
@@ -871,7 +871,7 @@ def test t_many_col_types t_many_col_types c11 c11 0 9 6 Y 32768 4 63
|
||||
def test t_many_col_types t_many_col_types c12 c12 0 10 6 Y 32768 4 63
|
||||
def test t_many_col_types t_many_col_types c13 c13 10 10 10 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c14 c14 12 19 19 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c15 c15 7 19 19 N 1217 0 63
|
||||
def test t_many_col_types t_many_col_types c15 c15 7 19 19 N 1249 0 63
|
||||
def test t_many_col_types t_many_col_types c16 c16 11 8 8 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c17 c17 13 4 4 Y 32864 0 63
|
||||
def test t_many_col_types t_many_col_types c18 c18 1 1 1 Y 32768 0 63
|
||||
|
@@ -913,7 +913,7 @@ def test t_many_col_types t_many_col_types c11 c11 0 9 6 Y 32768 4 63
|
||||
def test t_many_col_types t_many_col_types c12 c12 0 10 6 Y 32768 4 63
|
||||
def test t_many_col_types t_many_col_types c13 c13 10 10 10 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c14 c14 12 19 19 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c15 c15 7 19 19 N 1217 0 63
|
||||
def test t_many_col_types t_many_col_types c15 c15 7 19 19 N 1249 0 63
|
||||
def test t_many_col_types t_many_col_types c16 c16 11 8 8 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c17 c17 13 4 4 Y 32864 0 63
|
||||
def test t_many_col_types t_many_col_types c18 c18 1 1 1 Y 32768 0 63
|
||||
@@ -2105,7 +2105,7 @@ def test t_many_col_types t_many_col_types c11 c11 0 9 6 Y 32768 4 63
|
||||
def test t_many_col_types t_many_col_types c12 c12 0 10 6 Y 32768 4 63
|
||||
def test t_many_col_types t_many_col_types c13 c13 10 10 10 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c14 c14 12 19 19 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c15 c15 7 19 19 N 1217 0 63
|
||||
def test t_many_col_types t_many_col_types c15 c15 7 19 19 N 1249 0 63
|
||||
def test t_many_col_types t_many_col_types c16 c16 11 8 8 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c17 c17 13 4 4 Y 32864 0 63
|
||||
def test t_many_col_types t_many_col_types c18 c18 1 1 1 Y 32768 0 63
|
||||
|
@@ -870,7 +870,7 @@ def test t_many_col_types t_many_col_types c11 c11 0 9 6 Y 32768 4 63
|
||||
def test t_many_col_types t_many_col_types c12 c12 0 10 6 Y 32768 4 63
|
||||
def test t_many_col_types t_many_col_types c13 c13 10 10 10 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c14 c14 12 19 19 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c15 c15 7 19 19 N 1217 0 63
|
||||
def test t_many_col_types t_many_col_types c15 c15 7 19 19 N 1249 0 63
|
||||
def test t_many_col_types t_many_col_types c16 c16 11 8 8 Y 128 0 63
|
||||
def test t_many_col_types t_many_col_types c17 c17 13 4 4 Y 32864 0 63
|
||||
def test t_many_col_types t_many_col_types c18 c18 1 1 1 Y 32768 0 63
|
||||
|
@@ -257,6 +257,11 @@ explain select * from t1, t2 where (t1.key1 <t2.keya + 1) and t2.keya=3;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ref j1 j1 4 const 1 Using index
|
||||
1 SIMPLE t1 ALL i1 NULL NULL NULL 4 Range checked for each record (index map: 0x1)
|
||||
explain select * from t1 force index(i1), t2 force index(j1) where
|
||||
(t1.key1 <t2.keya + 1) and t2.keya=3;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t2 ref j1 j1 4 const 1 Using index
|
||||
1 SIMPLE t1 ALL i1 NULL NULL NULL 4 Range checked for each record (index map: 0x1)
|
||||
DROP TABLE t1,t2;
|
||||
CREATE TABLE t1 (
|
||||
a int(11) default NULL,
|
||||
@@ -475,3 +480,91 @@ id name uid id name uid
|
||||
1025 Y 25 1025 Y 25
|
||||
1026 Z 26 1026 Z 26
|
||||
drop table t1,t2;
|
||||
create table t1 (x bigint unsigned not null);
|
||||
insert into t1(x) values (0xfffffffffffffff0);
|
||||
insert into t1(x) values (0xfffffffffffffff1);
|
||||
select * from t1;
|
||||
x
|
||||
18446744073709551600
|
||||
18446744073709551601
|
||||
select count(*) from t1 where x>0;
|
||||
count(*)
|
||||
2
|
||||
select count(*) from t1 where x=0;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t1 where x<0;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t1 where x < -16;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t1 where x = -16;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t1 where x > -16;
|
||||
count(*)
|
||||
2
|
||||
select count(*) from t1 where x = 18446744073709551601;
|
||||
count(*)
|
||||
1
|
||||
create table t2 (x bigint not null);
|
||||
insert into t2(x) values (0xfffffffffffffff0);
|
||||
insert into t2(x) values (0xfffffffffffffff1);
|
||||
select * from t2;
|
||||
x
|
||||
-16
|
||||
-15
|
||||
select count(*) from t2 where x>0;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t2 where x=0;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t2 where x<0;
|
||||
count(*)
|
||||
2
|
||||
select count(*) from t2 where x < -16;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t2 where x = -16;
|
||||
count(*)
|
||||
1
|
||||
select count(*) from t2 where x > -16;
|
||||
count(*)
|
||||
1
|
||||
select count(*) from t2 where x = 18446744073709551601;
|
||||
count(*)
|
||||
0
|
||||
drop table t1;
|
||||
create table t1 (x bigint unsigned not null primary key) engine=innodb;
|
||||
insert into t1(x) values (0xfffffffffffffff0),(0xfffffffffffffff1);
|
||||
select * from t1;
|
||||
x
|
||||
18446744073709551600
|
||||
18446744073709551601
|
||||
select count(*) from t1 where x>0;
|
||||
count(*)
|
||||
2
|
||||
select count(*) from t1 where x=0;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t1 where x<0;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t1 where x < -16;
|
||||
count(*)
|
||||
0
|
||||
select count(*) from t1 where x = -16;
|
||||
count(*)
|
||||
0
|
||||
explain select count(*) from t1 where x > -16;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range PRIMARY PRIMARY 8 NULL 1 Using where; Using index
|
||||
select count(*) from t1 where x > -16;
|
||||
count(*)
|
||||
1
|
||||
select count(*) from t1 where x = 18446744073709551601;
|
||||
count(*)
|
||||
1
|
||||
drop table t1;
|
||||
|
@@ -1,4 +1,5 @@
|
||||
drop table if exists t0,t1,t2,t3,t4;
|
||||
drop table if exists t0,t5,t6,t7,t8,t9;
|
||||
create table t0 SELECT 1,"table 1";
|
||||
create table t2 SELECT 2,"table 2";
|
||||
create table t3 SELECT 3,"table 3";
|
||||
|
@@ -4,41 +4,41 @@ reset master;
|
||||
reset slave;
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
start slave;
|
||||
drop database if exists test2;
|
||||
drop database if exists test3;
|
||||
create database test2 character set latin2;
|
||||
drop database if exists mysqltest2;
|
||||
drop database if exists mysqltest3;
|
||||
create database mysqltest2 character set latin2;
|
||||
set @@character_set_server=latin5;
|
||||
create database test3;
|
||||
create database mysqltest3;
|
||||
|
||||
--- --master--
|
||||
show create database test2;
|
||||
show create database mysqltest2;
|
||||
Database Create Database
|
||||
test2 CREATE DATABASE `test2` /*!40100 DEFAULT CHARACTER SET latin2 */
|
||||
show create database test3;
|
||||
mysqltest2 CREATE DATABASE `mysqltest2` /*!40100 DEFAULT CHARACTER SET latin2 */
|
||||
show create database mysqltest3;
|
||||
Database Create Database
|
||||
test3 CREATE DATABASE `test3` /*!40100 DEFAULT CHARACTER SET latin5 */
|
||||
mysqltest3 CREATE DATABASE `mysqltest3` /*!40100 DEFAULT CHARACTER SET latin5 */
|
||||
|
||||
--- --slave--
|
||||
show create database test2;
|
||||
show create database mysqltest2;
|
||||
Database Create Database
|
||||
test2 CREATE DATABASE `test2` /*!40100 DEFAULT CHARACTER SET latin2 */
|
||||
show create database test3;
|
||||
mysqltest2 CREATE DATABASE `mysqltest2` /*!40100 DEFAULT CHARACTER SET latin2 */
|
||||
show create database mysqltest3;
|
||||
Database Create Database
|
||||
test3 CREATE DATABASE `test3` /*!40100 DEFAULT CHARACTER SET latin5 */
|
||||
mysqltest3 CREATE DATABASE `mysqltest3` /*!40100 DEFAULT CHARACTER SET latin5 */
|
||||
set @@collation_server=armscii8_bin;
|
||||
drop database test3;
|
||||
create database test3;
|
||||
drop database mysqltest3;
|
||||
create database mysqltest3;
|
||||
|
||||
--- --master--
|
||||
show create database test3;
|
||||
show create database mysqltest3;
|
||||
Database Create Database
|
||||
test3 CREATE DATABASE `test3` /*!40100 DEFAULT CHARACTER SET armscii8 COLLATE armscii8_bin */
|
||||
mysqltest3 CREATE DATABASE `mysqltest3` /*!40100 DEFAULT CHARACTER SET armscii8 COLLATE armscii8_bin */
|
||||
|
||||
--- --slave--
|
||||
show create database test3;
|
||||
show create database mysqltest3;
|
||||
Database Create Database
|
||||
test3 CREATE DATABASE `test3` /*!40100 DEFAULT CHARACTER SET armscii8 COLLATE armscii8_bin */
|
||||
use test2;
|
||||
mysqltest3 CREATE DATABASE `mysqltest3` /*!40100 DEFAULT CHARACTER SET armscii8 COLLATE armscii8_bin */
|
||||
use mysqltest2;
|
||||
create table t1 (a int auto_increment primary key, b varchar(100));
|
||||
set character_set_client=cp850, collation_connection=latin2_croatian_ci;
|
||||
insert into t1 (b) values(@@character_set_server);
|
||||
@@ -57,7 +57,7 @@ a b
|
||||
5 latin2_croatian_ci
|
||||
|
||||
--- --slave--
|
||||
select * from test2.t1 order by a;
|
||||
select * from mysqltest2.t1 order by a;
|
||||
a b
|
||||
1 armscii8
|
||||
2 armscii8_bin
|
||||
@@ -81,7 +81,7 @@ a b
|
||||
4 M<>ller
|
||||
|
||||
--- --slave--
|
||||
select * from test2.t1 order by a;
|
||||
select * from mysqltest2.t1 order by a;
|
||||
a b
|
||||
1 latin1_german1_ci
|
||||
2 Muffler
|
||||
@@ -98,69 +98,69 @@ a b
|
||||
1 cp850_general_ci
|
||||
|
||||
--- --slave--
|
||||
select * from test2.t1 order by a;
|
||||
select * from mysqltest2.t1 order by a;
|
||||
a b
|
||||
1 cp850_general_ci
|
||||
drop database test2;
|
||||
drop database test3;
|
||||
drop database mysqltest2;
|
||||
drop database mysqltest3;
|
||||
show binlog events from 95;
|
||||
Log_name Pos Event_type Server_id End_log_pos Info
|
||||
master-bin.000001 95 Query 1 181 use `test`; drop database if exists test2
|
||||
master-bin.000001 181 Query 1 267 use `test`; drop database if exists test3
|
||||
master-bin.000001 267 Query 1 366 use `test`; create database test2 character set latin2
|
||||
master-bin.000001 366 Query 1 522 use `test`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=8,COLLATION_DATABASE=8,COLLATION_SERVER=30
|
||||
master-bin.000001 522 Query 1 600 use `test`; create database test3
|
||||
master-bin.000001 600 Query 1 756 use `test`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=8,COLLATION_DATABASE=8,COLLATION_SERVER=64
|
||||
master-bin.000001 756 Query 1 832 use `test`; drop database test3
|
||||
master-bin.000001 832 Query 1 988 use `test`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=8,COLLATION_DATABASE=8,COLLATION_SERVER=64
|
||||
master-bin.000001 988 Query 1 1066 use `test`; create database test3
|
||||
master-bin.000001 1066 Query 1 1223 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=8,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 1223 Query 1 1347 use `test2`; create table t1 (a int auto_increment primary key, b varchar(100))
|
||||
master-bin.000001 1347 Query 1 1505 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=4,COLLATION_CONNECTION=27,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 1505 Intvar 1 1533 INSERT_ID=1
|
||||
master-bin.000001 1533 Query 1 1640 use `test2`; insert into t1 (b) values(@@character_set_server)
|
||||
master-bin.000001 1640 Query 1 1798 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=4,COLLATION_CONNECTION=27,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 1798 Intvar 1 1826 INSERT_ID=2
|
||||
master-bin.000001 1826 Query 1 1929 use `test2`; insert into t1 (b) values(@@collation_server)
|
||||
master-bin.000001 1929 Query 1 2087 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=4,COLLATION_CONNECTION=27,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 2087 Intvar 1 2115 INSERT_ID=3
|
||||
master-bin.000001 2115 Query 1 2222 use `test2`; insert into t1 (b) values(@@character_set_client)
|
||||
master-bin.000001 2222 Query 1 2380 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=4,COLLATION_CONNECTION=27,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 2380 Intvar 1 2408 INSERT_ID=4
|
||||
master-bin.000001 2408 Query 1 2519 use `test2`; insert into t1 (b) values(@@character_set_connection)
|
||||
master-bin.000001 2519 Query 1 2677 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=4,COLLATION_CONNECTION=27,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 2677 Intvar 1 2705 INSERT_ID=5
|
||||
master-bin.000001 2705 Query 1 2812 use `test2`; insert into t1 (b) values(@@collation_connection)
|
||||
master-bin.000001 2812 Query 1 2969 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=5,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 2969 Query 1 3044 use `test2`; truncate table t1
|
||||
master-bin.000001 3044 Query 1 3201 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=5,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 3201 Intvar 1 3229 INSERT_ID=1
|
||||
master-bin.000001 3229 Query 1 3336 use `test2`; insert into t1 (b) values(@@collation_connection)
|
||||
master-bin.000001 3336 Query 1 3493 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=5,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 3493 Intvar 1 3521 INSERT_ID=2
|
||||
master-bin.000001 3521 Query 1 3631 use `test2`; insert into t1 (b) values(LEAST("M<>ller","Muffler"))
|
||||
master-bin.000001 3631 Query 1 3789 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 3789 Intvar 1 3817 INSERT_ID=3
|
||||
master-bin.000001 3817 Query 1 3924 use `test2`; insert into t1 (b) values(@@collation_connection)
|
||||
master-bin.000001 3924 Query 1 4082 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 4082 Intvar 1 4110 INSERT_ID=4
|
||||
master-bin.000001 4110 Query 1 4220 use `test2`; insert into t1 (b) values(LEAST("M<>ller","Muffler"))
|
||||
master-bin.000001 4220 Query 1 4378 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 4378 Intvar 1 4406 INSERT_ID=74
|
||||
master-bin.000001 4406 Create_file 1 5074 db=test2;table=t1;file_id=1;block_len=581
|
||||
master-bin.000001 5074 Query 1 5232 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 5232 Intvar 1 5260 INSERT_ID=5
|
||||
master-bin.000001 5260 Exec_load 1 5283 ;file_id=1
|
||||
master-bin.000001 5283 Query 1 5441 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 5441 Query 1 5516 use `test2`; truncate table t1
|
||||
master-bin.000001 5516 Query 1 5674 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 5674 Intvar 1 5702 INSERT_ID=1
|
||||
master-bin.000001 5702 User var 1 5742 @`a`=_cp850 0x4DFC6C6C6572 COLLATE cp850_general_ci
|
||||
master-bin.000001 5742 Query 1 5840 use `test2`; insert into t1 (b) values(collation(@a))
|
||||
master-bin.000001 5840 Query 1 5998 use `test2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 5998 Query 1 6075 use `test2`; drop database test2
|
||||
master-bin.000001 6075 Query 1 6228 SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 6228 Query 1 6300 drop database test3
|
||||
master-bin.000001 # Query 1 # use `test`; drop database if exists mysqltest2
|
||||
master-bin.000001 # Query 1 # use `test`; drop database if exists mysqltest3
|
||||
master-bin.000001 # Query 1 # use `test`; create database mysqltest2 character set latin2
|
||||
master-bin.000001 # Query 1 # use `test`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=8,COLLATION_DATABASE=8,COLLATION_SERVER=30
|
||||
master-bin.000001 # Query 1 # use `test`; create database mysqltest3
|
||||
master-bin.000001 # Query 1 # use `test`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=8,COLLATION_DATABASE=8,COLLATION_SERVER=64
|
||||
master-bin.000001 # Query 1 # use `test`; drop database mysqltest3
|
||||
master-bin.000001 # Query 1 # use `test`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=8,COLLATION_DATABASE=8,COLLATION_SERVER=64
|
||||
master-bin.000001 # Query 1 # use `test`; create database mysqltest3
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=8,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; create table t1 (a int auto_increment primary key, b varchar(100))
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=4,COLLATION_CONNECTION=27,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Intvar 1 # INSERT_ID=1
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@character_set_server)
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=4,COLLATION_CONNECTION=27,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Intvar 1 # INSERT_ID=2
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@collation_server)
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=4,COLLATION_CONNECTION=27,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Intvar 1 # INSERT_ID=3
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@character_set_client)
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=4,COLLATION_CONNECTION=27,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Intvar 1 # INSERT_ID=4
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@character_set_connection)
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=4,COLLATION_CONNECTION=27,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Intvar 1 # INSERT_ID=5
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@collation_connection)
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=5,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; truncate table t1
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=5,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Intvar 1 # INSERT_ID=1
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@collation_connection)
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=5,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Intvar 1 # INSERT_ID=2
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(LEAST("M<>ller","Muffler"))
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Intvar 1 # INSERT_ID=3
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(@@collation_connection)
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Intvar 1 # INSERT_ID=4
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(LEAST("M<>ller","Muffler"))
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Intvar 1 # INSERT_ID=74
|
||||
master-bin.000001 # Create_file 1 # db=mysqltest2;table=t1;file_id=1;block_len=581
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Intvar 1 # INSERT_ID=5
|
||||
master-bin.000001 # Exec_load 1 # ;file_id=1
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; truncate table t1
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Intvar 1 # INSERT_ID=1
|
||||
master-bin.000001 # User var 1 # @`a`=_cp850 0x4DFC6C6C6572 COLLATE cp850_general_ci
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; insert into t1 (b) values(collation(@a))
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Query 1 # use `mysqltest2`; drop database mysqltest2
|
||||
master-bin.000001 # Query 1 # SET ONE_SHOT CHARACTER_SET_CLIENT=8,COLLATION_CONNECTION=31,COLLATION_DATABASE=9,COLLATION_SERVER=64
|
||||
master-bin.000001 # Query 1 # drop database mysqltest3
|
||||
set global character_set_server=latin2;
|
||||
ERROR HY000: Binary logging and replication forbid changing the global server character set or collation
|
||||
set global character_set_server=latin2;
|
||||
|
@@ -4,12 +4,12 @@ reset master;
|
||||
reset slave;
|
||||
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
|
||||
start slave;
|
||||
create database test1;
|
||||
drop database if exists test1;
|
||||
create database mysqltest;
|
||||
drop database if exists mysqltest;
|
||||
Warnings:
|
||||
Note 1008 Can't drop database 'test1'; database doesn't exist
|
||||
show tables from test1;
|
||||
ERROR HY000: Can't read dir of './test1/' (Errcode: X)
|
||||
Note 1008 Can't drop database 'mysqltest'; database doesn't exist
|
||||
show tables from mysqltest;
|
||||
ERROR HY000: Can't read dir of './mysqltest/' (Errcode: X)
|
||||
create table t1 (a int);
|
||||
drop table if exists t1;
|
||||
Warnings:
|
||||
|
@@ -1,22 +1,22 @@
|
||||
reset master;
|
||||
drop table if exists t1;
|
||||
create table t1 (a int) type=HEAP;
|
||||
insert into t1 values(10);
|
||||
create table t1 type=HEAP select 10 as a;
|
||||
insert into t1 values(11);
|
||||
show binlog events from 79;
|
||||
Log_name Pos Event_type Server_id Orig_log_pos Info
|
||||
master-bin.001 79 Query 1 79 use `test`; create table t1 (a int) type=HEAP
|
||||
master-bin.001 147 Query 1 147 use `test`; DELETE FROM `test`.`t1`
|
||||
master-bin.001 205 Query 1 205 use `test`; insert into t1 values(10)
|
||||
master-bin.001 79 Query 1 79 use `test`; create table t1 type=HEAP select 10 as a
|
||||
master-bin.001 154 Query 1 154 use `test`; insert into t1 values(11)
|
||||
reset slave;
|
||||
start slave;
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) default NULL
|
||||
`a` bigint(2) NOT NULL default '0'
|
||||
) TYPE=HEAP
|
||||
select * from t1;
|
||||
a
|
||||
10
|
||||
11
|
||||
select * from t1;
|
||||
a
|
||||
select * from t1 limit 10;
|
||||
|
File diff suppressed because one or more lines are too long
@@ -1,4 +1,5 @@
|
||||
drop table if exists t1,t2;
|
||||
drop database if exists mysqltest;
|
||||
create table t1 (a int not null primary key, b int not null,c int not null, key(b,c));
|
||||
insert into t1 values (1,2,2),(2,2,3),(3,2,4),(4,2,4);
|
||||
check table t1 fast;
|
||||
@@ -361,39 +362,39 @@ t1 HEAP 9 Fixed 0 5 # # # 5 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t2 HEAP 9 Fixed 0 5 # # # 5 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t3 HEAP 9 Fixed 0 9 # # # 9 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
drop table t1, t2, t3;
|
||||
create database test_$1;
|
||||
show create database test_$1;
|
||||
create database mysqltest;
|
||||
show create database mysqltest;
|
||||
Database Create Database
|
||||
test_$1 CREATE DATABASE `test_$1` /*!40100 DEFAULT CHARACTER SET latin1 */
|
||||
create table test_$1.t1(a int);
|
||||
insert into test_$1.t1 values(1);
|
||||
grant select on `test_$1`.* to mysqltest_1@localhost;
|
||||
grant usage on `test_$1`.* to mysqltest_2@localhost;
|
||||
grant drop on `test_$1`.* to mysqltest_3@localhost;
|
||||
mysqltest CREATE DATABASE `mysqltest` /*!40100 DEFAULT CHARACTER SET latin1 */
|
||||
create table mysqltest.t1(a int);
|
||||
insert into mysqltest.t1 values(1);
|
||||
grant select on `mysqltest`.* to mysqltest_1@localhost;
|
||||
grant usage on `mysqltest`.* to mysqltest_2@localhost;
|
||||
grant drop on `mysqltest`.* to mysqltest_3@localhost;
|
||||
select * from t1;
|
||||
a
|
||||
1
|
||||
show create database test_$1;
|
||||
show create database mysqltest;
|
||||
Database Create Database
|
||||
test_$1 CREATE DATABASE `test_$1` /*!40100 DEFAULT CHARACTER SET latin1 */
|
||||
mysqltest CREATE DATABASE `mysqltest` /*!40100 DEFAULT CHARACTER SET latin1 */
|
||||
drop table t1;
|
||||
ERROR 42000: Access denied for user 'mysqltest_1'@'localhost' to database 'test_$1'
|
||||
drop database test_$1;
|
||||
ERROR 42000: Access denied for user 'mysqltest_1'@'localhost' to database 'test_$1'
|
||||
select * from test_$1.t1;
|
||||
ERROR 42000: Access denied for user 'mysqltest_2'@'localhost' to database 'test_$1'
|
||||
show create database test_$1;
|
||||
ERROR 42000: Access denied for user 'mysqltest_2'@'localhost' to database 'test_$1'
|
||||
drop table test_$1.t1;
|
||||
ERROR 42000: Access denied for user 'mysqltest_2'@'localhost' to database 'test_$1'
|
||||
drop database test_$1;
|
||||
ERROR 42000: Access denied for user 'mysqltest_2'@'localhost' to database 'test_$1'
|
||||
select * from test_$1.t1;
|
||||
ERROR 42000: Access denied for user 'mysqltest_3'@'localhost' to database 'test_$1'
|
||||
show create database test_$1;
|
||||
ERROR 42000: Access denied for user 'mysqltest_3'@'localhost' to database 'test_$1'
|
||||
drop table test_$1.t1;
|
||||
drop database test_$1;
|
||||
ERROR 42000: Access denied for user 'mysqltest_1'@'localhost' to database 'mysqltest'
|
||||
drop database mysqltest;
|
||||
ERROR 42000: Access denied for user 'mysqltest_1'@'localhost' to database 'mysqltest'
|
||||
select * from mysqltest.t1;
|
||||
ERROR 42000: Access denied for user 'mysqltest_2'@'localhost' to database 'mysqltest'
|
||||
show create database mysqltest;
|
||||
ERROR 42000: Access denied for user 'mysqltest_2'@'localhost' to database 'mysqltest'
|
||||
drop table mysqltest.t1;
|
||||
ERROR 42000: Access denied for user 'mysqltest_2'@'localhost' to database 'mysqltest'
|
||||
drop database mysqltest;
|
||||
ERROR 42000: Access denied for user 'mysqltest_2'@'localhost' to database 'mysqltest'
|
||||
select * from mysqltest.t1;
|
||||
ERROR 42000: Access denied for user 'mysqltest_3'@'localhost' to database 'mysqltest'
|
||||
show create database mysqltest;
|
||||
ERROR 42000: Access denied for user 'mysqltest_3'@'localhost' to database 'mysqltest'
|
||||
drop table mysqltest.t1;
|
||||
drop database mysqltest;
|
||||
set names binary;
|
||||
delete from mysql.user
|
||||
where user='mysqltest_1' || user='mysqltest_2' || user='mysqltest_3';
|
||||
|
@@ -1,4 +1,27 @@
|
||||
delete from mysql.proc;
|
||||
create function .f1() returns int return 1;
|
||||
create procedure .p1() select 1, database();
|
||||
create procedure p1() select 2, database();
|
||||
alter procedure .p1 sql security invoker;
|
||||
select .f1();
|
||||
.f1()
|
||||
1
|
||||
call .p1();
|
||||
1 database()
|
||||
1 test
|
||||
call p1();
|
||||
2 database()
|
||||
2 test
|
||||
select f1();
|
||||
ERROR 42000: FUNCTION test.f1 does not exist
|
||||
select db,name,type,security_type from mysql.proc;
|
||||
db name type security_type
|
||||
f1 FUNCTION DEFINER
|
||||
p1 PROCEDURE INVOKER
|
||||
test p1 PROCEDURE DEFINER
|
||||
drop function .f1;
|
||||
drop procedure .p1;
|
||||
drop procedure p1;
|
||||
create procedure syntaxerror(t 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
|
||||
create procedure syntaxerror(t int)|
|
||||
@@ -44,7 +67,7 @@ call foo()|
|
||||
ERROR 42000: PROCEDURE test.foo does not exist
|
||||
drop procedure if exists foo|
|
||||
Warnings:
|
||||
Warning 1304 PROCEDURE foo does not exist
|
||||
Note 1305 PROCEDURE foo does not exist
|
||||
show create procedure foo|
|
||||
ERROR 42000: PROCEDURE foo does not exist
|
||||
create procedure foo()
|
||||
@@ -121,7 +144,7 @@ declare y int;
|
||||
set x = y;
|
||||
end|
|
||||
Warnings:
|
||||
Warning 1310 Referring to uninitialized variable y
|
||||
Warning 1311 Referring to uninitialized variable y
|
||||
drop procedure foo|
|
||||
create procedure foo()
|
||||
return 42|
|
||||
|
@@ -1,6 +1,28 @@
|
||||
use test;
|
||||
drop table if exists t1;
|
||||
drop table if exists t2;
|
||||
drop table if exists t1,t2,t3,t4;
|
||||
drop procedure if exists goto1;
|
||||
drop procedure if exists goto2;
|
||||
drop procedure if exists goto3;
|
||||
drop procedure if exists goto4;
|
||||
drop procedure if exists goto5;
|
||||
drop procedure if exists goto6;
|
||||
drop procedure if exists into_outfile;
|
||||
drop procedure if exists into_dumpfile;
|
||||
drop procedure if exists create_select;
|
||||
drop procedure if exists bar;
|
||||
drop procedure if exists hndlr1;
|
||||
drop procedure if exists hndlr2;
|
||||
drop procedure if exists hndlr3;
|
||||
drop procedure if exists hndlr4;
|
||||
drop procedure if exists cur1;
|
||||
drop procedure if exists cur2;
|
||||
drop procedure if exists chistics;
|
||||
drop procedure if exists chistics2;
|
||||
drop procedure if exists modes;
|
||||
drop procedure if exists dummy;
|
||||
drop procedure if exists bug;
|
||||
drop procedure if exists bug2;
|
||||
drop function if exists fac;
|
||||
create table t1 (
|
||||
id char(16) not null,
|
||||
data int not null
|
||||
@@ -78,7 +100,6 @@ foo 1
|
||||
kaka 3
|
||||
delete from t1|
|
||||
drop procedure setcontext|
|
||||
drop table if exists t3|
|
||||
create table t3 ( d date, i int, f double, s varchar(32) )|
|
||||
create procedure nullset()
|
||||
begin
|
||||
@@ -962,7 +983,7 @@ select row_count()|
|
||||
row_count()
|
||||
-1
|
||||
drop procedure rc|
|
||||
create procedure bug822(a_id char(16), a_data int)
|
||||
create procedure bug(a_id char(16), a_data int)
|
||||
begin
|
||||
declare n int;
|
||||
select count(*) into n from t1 where id = a_id and data = a_data;
|
||||
@@ -970,16 +991,16 @@ if n = 0 then
|
||||
insert into t1 (id, data) values (a_id, a_data);
|
||||
end if;
|
||||
end|
|
||||
call bug822('foo', 42)|
|
||||
call bug822('foo', 42)|
|
||||
call bug822('bar', 666)|
|
||||
call bug('foo', 42)|
|
||||
call bug('foo', 42)|
|
||||
call bug('bar', 666)|
|
||||
select * from t1|
|
||||
id data
|
||||
foo 42
|
||||
bar 666
|
||||
delete from t1|
|
||||
drop procedure bug822|
|
||||
create procedure bug1495()
|
||||
drop procedure bug|
|
||||
create procedure bug()
|
||||
begin
|
||||
declare x int;
|
||||
select data into x from t1 order by id limit 1;
|
||||
@@ -990,18 +1011,18 @@ insert into t1 values ("more", x+10);
|
||||
end if;
|
||||
end|
|
||||
insert into t1 values ('foo', 12)|
|
||||
call bug1495()|
|
||||
call bug()|
|
||||
delete from t1 where id='foo'|
|
||||
insert into t1 values ('bar', 7)|
|
||||
call bug1495()|
|
||||
call bug()|
|
||||
delete from t1 where id='bar'|
|
||||
select * from t1|
|
||||
id data
|
||||
less 2
|
||||
more 17
|
||||
delete from t1|
|
||||
drop procedure bug1495|
|
||||
create procedure bug1547(s char(16))
|
||||
drop procedure bug|
|
||||
create procedure bug(s char(16))
|
||||
begin
|
||||
declare x int;
|
||||
select data into x from t1 where s = id limit 1;
|
||||
@@ -1012,8 +1033,8 @@ insert into t1 values ("more", x+10);
|
||||
end if;
|
||||
end|
|
||||
insert into t1 values ("foo", 12), ("bar", 7)|
|
||||
call bug1547("foo")|
|
||||
call bug1547("bar")|
|
||||
call bug("foo")|
|
||||
call bug("bar")|
|
||||
select * from t1|
|
||||
id data
|
||||
foo 12
|
||||
@@ -1021,34 +1042,34 @@ bar 7
|
||||
less 2
|
||||
more 17
|
||||
delete from t1|
|
||||
drop procedure bug1547|
|
||||
drop procedure bug|
|
||||
drop table if exists t70|
|
||||
create table t70 (s1 int,s2 int)|
|
||||
insert into t70 values (1,2)|
|
||||
create procedure bug1656(out p1 int, out p2 int)
|
||||
create procedure bug(out p1 int, out p2 int)
|
||||
select * into p1, p1 from t70|
|
||||
call bug1656(@1, @2)|
|
||||
call bug(@1, @2)|
|
||||
select @1, @2|
|
||||
@1 @2
|
||||
2 NULL
|
||||
drop table t70|
|
||||
drop procedure bug1656|
|
||||
drop procedure bug|
|
||||
drop table if exists t3|
|
||||
create table t3(a int)|
|
||||
create procedure bug1862()
|
||||
create procedure bug()
|
||||
begin
|
||||
insert into t3 values(2);
|
||||
flush tables;
|
||||
end|
|
||||
call bug1862()|
|
||||
call bug1862()|
|
||||
call bug()|
|
||||
call bug()|
|
||||
select * from t3|
|
||||
a
|
||||
2
|
||||
2
|
||||
drop table t3|
|
||||
drop procedure bug1862|
|
||||
create procedure bug1874()
|
||||
drop procedure bug|
|
||||
create procedure bug()
|
||||
begin
|
||||
declare x int;
|
||||
declare y double;
|
||||
@@ -1062,7 +1083,7 @@ select avg(data) into y from t1;
|
||||
insert into t2 values ("avg", 0, y);
|
||||
end|
|
||||
insert into t1 (data) values (3), (1), (5), (9), (4)|
|
||||
call bug1874()|
|
||||
call bug()|
|
||||
select * from t2|
|
||||
s i d
|
||||
max 9 0
|
||||
@@ -1071,8 +1092,8 @@ sum 22 0
|
||||
avg 0 4.4
|
||||
delete from t1|
|
||||
delete from t2|
|
||||
drop procedure bug1874|
|
||||
create procedure bug2260()
|
||||
drop procedure bug|
|
||||
create procedure bug()
|
||||
begin
|
||||
declare v1 int;
|
||||
declare c1 cursor for select data from t1;
|
||||
@@ -1082,11 +1103,11 @@ fetch c1 into v1;
|
||||
set @x2 = 2;
|
||||
close c1;
|
||||
end|
|
||||
call bug2260()|
|
||||
call bug()|
|
||||
select @x2|
|
||||
@x2
|
||||
2
|
||||
drop procedure bug2260|
|
||||
drop procedure bug|
|
||||
create procedure bug2267_1()
|
||||
begin
|
||||
show procedure status;
|
||||
@@ -1133,35 +1154,35 @@ drop procedure bug2267_1|
|
||||
drop procedure bug2267_2|
|
||||
drop procedure bug2267_3|
|
||||
drop procedure bug2267_4|
|
||||
create procedure bug2227(x int)
|
||||
create procedure bug(x int)
|
||||
begin
|
||||
declare y float default 2.6;
|
||||
declare z char(16) default "zzz";
|
||||
select 1.3, x, y, 42, z;
|
||||
end|
|
||||
call bug2227(9)|
|
||||
call bug(9)|
|
||||
1.3 x y 42 z
|
||||
1.3 9 2.6 42 zzz
|
||||
drop procedure bug2227|
|
||||
create procedure bug2614()
|
||||
drop procedure bug|
|
||||
create procedure bug()
|
||||
begin
|
||||
drop table if exists t3;
|
||||
create table t3 (id int default '0' not null);
|
||||
insert into t3 select 12;
|
||||
insert into t3 select * from t3;
|
||||
end|
|
||||
call bug2614()|
|
||||
call bug2614()|
|
||||
call bug()|
|
||||
call bug()|
|
||||
drop table t3|
|
||||
drop procedure bug2614|
|
||||
create function bug2674 () returns int
|
||||
drop procedure bug|
|
||||
create function bug () returns int
|
||||
return @@sort_buffer_size|
|
||||
set @osbs = @@sort_buffer_size|
|
||||
set @@sort_buffer_size = 262000|
|
||||
select bug2674()|
|
||||
bug2674()
|
||||
select bug()|
|
||||
bug()
|
||||
262000
|
||||
drop function bug2674|
|
||||
drop function bug|
|
||||
set @@sort_buffer_size = @osbs|
|
||||
create procedure bug3259_1 () begin end|
|
||||
create procedure BUG3259_2 () begin end|
|
||||
@@ -1175,48 +1196,48 @@ call bUG3259_3()|
|
||||
drop procedure bUg3259_1|
|
||||
drop procedure BuG3259_2|
|
||||
drop procedure BUG3259_3|
|
||||
create function bug2772() returns char(10) character set latin2
|
||||
create function bug() returns char(10) character set latin2
|
||||
return 'a'|
|
||||
select bug2772()|
|
||||
bug2772()
|
||||
select bug()|
|
||||
bug()
|
||||
a
|
||||
drop function bug2772|
|
||||
create procedure bug2776_1(out x int)
|
||||
drop function bug|
|
||||
create procedure bug(out x int)
|
||||
begin
|
||||
declare v int;
|
||||
set v = default;
|
||||
set x = v;
|
||||
end|
|
||||
create procedure bug2776_2(out x int)
|
||||
create procedure bug2(out x int)
|
||||
begin
|
||||
declare v int default 42;
|
||||
set v = default;
|
||||
set x = v;
|
||||
end|
|
||||
set @x = 1|
|
||||
call bug2776_1(@x)|
|
||||
call bug(@x)|
|
||||
select @x|
|
||||
@x
|
||||
NULL
|
||||
call bug2776_2(@x)|
|
||||
call bug2(@x)|
|
||||
select @x|
|
||||
@x
|
||||
42
|
||||
drop procedure bug2776_1|
|
||||
drop procedure bug2776_2|
|
||||
drop procedure bug|
|
||||
drop procedure bug2|
|
||||
drop table if exists t3|
|
||||
create table t3 (s1 smallint)|
|
||||
insert into t3 values (123456789012)|
|
||||
Warnings:
|
||||
Warning 1264 Data truncated; out of range for column 's1' at row 1
|
||||
create procedure bug2780()
|
||||
create procedure bug()
|
||||
begin
|
||||
declare exit handler for sqlwarning set @x = 1;
|
||||
set @x = 0;
|
||||
insert into t3 values (123456789012);
|
||||
insert into t3 values (0);
|
||||
end|
|
||||
call bug2780()|
|
||||
call bug()|
|
||||
select @x|
|
||||
@x
|
||||
1
|
||||
@@ -1224,13 +1245,11 @@ select * from t3|
|
||||
s1
|
||||
32767
|
||||
32767
|
||||
drop procedure bug2780|
|
||||
drop procedure bug|
|
||||
drop table t3|
|
||||
drop table if exists t3|
|
||||
create table t3 (content varchar(10) )|
|
||||
insert into t3 values ("test1")|
|
||||
insert into t3 values ("test2")|
|
||||
drop table if exists t4|
|
||||
create table t4 (f1 int, rc int, t3 int)|
|
||||
create procedure bug1863(in1 int)
|
||||
begin
|
||||
@@ -1406,7 +1425,6 @@ select @a|
|
||||
@a
|
||||
5
|
||||
drop procedure bug3863|
|
||||
drop table if exists t3|
|
||||
create table t3 (
|
||||
id int(10) unsigned not null default 0,
|
||||
rid int(10) unsigned not null default 0,
|
||||
@@ -1784,6 +1802,24 @@ select @x|
|
||||
@x
|
||||
3
|
||||
drop procedure bug5307|
|
||||
create procedure bug5258()
|
||||
begin
|
||||
end|
|
||||
create procedure bug5258_aux()
|
||||
begin
|
||||
declare c, m char(19);
|
||||
select created,modified into c,m from mysql.proc where name = 'bug5258';
|
||||
if c = m then
|
||||
select 'Ok';
|
||||
else
|
||||
select c, m;
|
||||
end if;
|
||||
end|
|
||||
call bug5258_aux()|
|
||||
Ok
|
||||
Ok
|
||||
drop procedure bug5258|
|
||||
drop procedure bug5258_aux|
|
||||
drop table if exists fac|
|
||||
create table fac (n int unsigned not null primary key, f bigint unsigned)|
|
||||
create procedure ifac(n int unsigned)
|
||||
|
@@ -1259,11 +1259,6 @@ a b
|
||||
2 NULL
|
||||
3 1
|
||||
drop table t1, t2;
|
||||
create table t1(City VARCHAR(30),Location geometry);
|
||||
insert into t1 values("Paris",GeomFromText('POINT(2.33 48.87)'));
|
||||
select City from t1 where (select intersects(GeomFromText(AsText(Location)),GeomFromText('Polygon((2 50, 2.5 50, 2.5 47, 2 47, 2 50))'))=0);
|
||||
City
|
||||
drop table t1;
|
||||
CREATE TABLE `t1` (
|
||||
`id` mediumint(8) unsigned NOT NULL auto_increment,
|
||||
`pseudo` varchar(35) NOT NULL default '',
|
||||
@@ -1907,3 +1902,77 @@ select t000.a, count(*) `C` FROM t1 t000 GROUP BY t000.a HAVING count(*) > ALL (
|
||||
a C
|
||||
1 1
|
||||
drop table t1,t2;
|
||||
create table t1 (a int not null auto_increment primary key, b varchar(40), fulltext(b));
|
||||
insert into t1 (b) values ('ball'),('ball games'), ('games'), ('foo'), ('foobar'), ('Serg'), ('Sergei'),('Georg'), ('Patrik'),('Hakan');
|
||||
create table t2 (a int);
|
||||
insert into t2 values (1),(3),(2),(7);
|
||||
select a,b from t1 where match(b) against ('Ball') > 0;
|
||||
a b
|
||||
1 ball
|
||||
2 ball games
|
||||
select a from t2 where a in (select a from t1 where match(b) against ('Ball') > 0);
|
||||
a
|
||||
1
|
||||
2
|
||||
drop table t1,t2;
|
||||
CREATE TABLE t1(`IZAVORGANG_ID` VARCHAR(11) CHARACTER SET latin1 COLLATE latin1_bin,`KUERZEL` VARCHAR(10) CHARACTER SET latin1 COLLATE latin1_bin,`IZAANALYSEART_ID` VARCHAR(11) CHARACTER SET latin1 COLLATE latin1_bin,`IZAPMKZ_ID` VARCHAR(11) CHARACTER SET latin1 COLLATE latin1_bin);
|
||||
CREATE INDEX AK01IZAVORGANG ON t1(izaAnalyseart_id,Kuerzel);
|
||||
INSERT INTO t1(`IZAVORGANG_ID`,`KUERZEL`,`IZAANALYSEART_ID`,`IZAPMKZ_ID`)VALUES('D0000000001','601','D0000000001','I0000000001');
|
||||
INSERT INTO t1(`IZAVORGANG_ID`,`KUERZEL`,`IZAANALYSEART_ID`,`IZAPMKZ_ID`)VALUES('D0000000002','602','D0000000001','I0000000001');
|
||||
INSERT INTO t1(`IZAVORGANG_ID`,`KUERZEL`,`IZAANALYSEART_ID`,`IZAPMKZ_ID`)VALUES('D0000000003','603','D0000000001','I0000000001');
|
||||
INSERT INTO t1(`IZAVORGANG_ID`,`KUERZEL`,`IZAANALYSEART_ID`,`IZAPMKZ_ID`)VALUES('D0000000004','101','D0000000001','I0000000001');
|
||||
SELECT `IZAVORGANG_ID` FROM t1 WHERE `KUERZEL` IN(SELECT MIN(`KUERZEL`)`Feld1` FROM t1 WHERE `KUERZEL` LIKE'601%'And`IZAANALYSEART_ID`='D0000000001');
|
||||
IZAVORGANG_ID
|
||||
D0000000001
|
||||
drop table t1;
|
||||
CREATE TABLE `t1` ( `aid` int(11) NOT NULL default '0', `bid` int(11) NOT NULL default '0', PRIMARY KEY (`aid`,`bid`));
|
||||
CREATE TABLE `t2` ( `aid` int(11) NOT NULL default '0', `bid` int(11) NOT NULL default '0', PRIMARY KEY (`aid`,`bid`));
|
||||
insert into t1 values (1,1),(1,2),(2,1),(2,2);
|
||||
insert into t2 values (1,2),(2,2);
|
||||
select * from t1 where t1.aid not in (select aid from t2 where bid=t1.bid);
|
||||
aid bid
|
||||
1 1
|
||||
2 1
|
||||
alter table t2 drop primary key;
|
||||
alter table t2 add key KEY1 (aid, bid);
|
||||
select * from t1 where t1.aid not in (select aid from t2 where bid=t1.bid);
|
||||
aid bid
|
||||
1 1
|
||||
2 1
|
||||
alter table t2 drop key KEY1;
|
||||
alter table t2 add primary key (bid, aid);
|
||||
select * from t1 where t1.aid not in (select aid from t2 where bid=t1.bid);
|
||||
aid bid
|
||||
1 1
|
||||
2 1
|
||||
drop table t1,t2;
|
||||
CREATE TABLE t1 (howmanyvalues bigint, avalue int);
|
||||
INSERT INTO t1 VALUES (1, 1),(2, 1),(2, 2),(3, 1),(3, 2),(3, 3),(4, 1),(4, 2),(4, 3),(4, 4);
|
||||
SELECT howmanyvalues, count(*) from t1 group by howmanyvalues;
|
||||
howmanyvalues count(*)
|
||||
1 1
|
||||
2 2
|
||||
3 3
|
||||
4 4
|
||||
SELECT a.howmanyvalues, (SELECT count(*) from t1 b where b.howmanyvalues = a.howmanyvalues) as mycount from t1 a group by a.howmanyvalues;
|
||||
howmanyvalues mycount
|
||||
1 1
|
||||
2 2
|
||||
3 3
|
||||
4 4
|
||||
CREATE INDEX t1_howmanyvalues_idx ON t1 (howmanyvalues);
|
||||
SELECT a.howmanyvalues, (SELECT count(*) from t1 b where b.howmanyvalues+1 = a.howmanyvalues+1) as mycount from t1 a group by a.howmanyvalues;
|
||||
howmanyvalues mycount
|
||||
1 1
|
||||
2 2
|
||||
3 3
|
||||
4 4
|
||||
SELECT a.howmanyvalues, (SELECT count(*) from t1 b where b.howmanyvalues = a.howmanyvalues) as mycount from t1 a group by a.howmanyvalues;
|
||||
howmanyvalues mycount
|
||||
1 1
|
||||
2 2
|
||||
3 3
|
||||
4 4
|
||||
SELECT a.howmanyvalues, (SELECT count(*) from t1 b where b.howmanyvalues = a.avalue) as mycount from t1 a group by a.howmanyvalues;
|
||||
ERROR 42S22: Unknown column 'a.avalue' in 'where clause'
|
||||
drop table t1;
|
||||
|
8
mysql-test/r/subselect_gis.result
Normal file
8
mysql-test/r/subselect_gis.result
Normal file
@@ -0,0 +1,8 @@
|
||||
drop table if exists t1;
|
||||
create table t1(City VARCHAR(30),Location geometry);
|
||||
insert into t1 values("Paris",GeomFromText('POINT(2.33 48.87)'));
|
||||
select City from t1 where (select
|
||||
intersects(GeomFromText(AsText(Location)),GeomFromText('Polygon((2 50, 2.5
|
||||
50, 2.5 47, 2 47, 2 50))'))=0);
|
||||
City
|
||||
drop table t1;
|
@@ -19,77 +19,77 @@ user BASE TABLE
|
||||
show create table db;
|
||||
Table Create Table
|
||||
db CREATE TABLE `db` (
|
||||
`Host` char(60) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`Db` char(64) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`User` char(16) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`Select_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Insert_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Update_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Delete_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Create_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Drop_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Grant_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`References_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Index_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Alter_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Create_tmp_table_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Lock_tables_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Create_view_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Show_view_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Host` char(60) collate utf8_bin NOT NULL default '',
|
||||
`Db` char(64) collate utf8_bin NOT NULL default '',
|
||||
`User` char(16) collate utf8_bin NOT NULL default '',
|
||||
`Select_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Insert_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Update_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Delete_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Create_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Drop_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Grant_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`References_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Index_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Alter_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Create_tmp_table_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Lock_tables_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Create_view_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Show_view_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
PRIMARY KEY (`Host`,`Db`,`User`),
|
||||
KEY `User` (`User`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Database privileges'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Database privileges'
|
||||
show create table host;
|
||||
Table Create Table
|
||||
host CREATE TABLE `host` (
|
||||
`Host` char(60) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`Db` char(64) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`Select_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Insert_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Update_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Delete_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Create_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Drop_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Grant_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`References_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Index_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Alter_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Create_tmp_table_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Lock_tables_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Create_view_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Show_view_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Host` char(60) collate utf8_bin NOT NULL default '',
|
||||
`Db` char(64) collate utf8_bin NOT NULL default '',
|
||||
`Select_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Insert_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Update_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Delete_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Create_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Drop_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Grant_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`References_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Index_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Alter_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Create_tmp_table_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Lock_tables_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Create_view_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Show_view_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
PRIMARY KEY (`Host`,`Db`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Host privileges; Merged with database privileges'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Host privileges; Merged with database privileges'
|
||||
show create table user;
|
||||
Table Create Table
|
||||
user CREATE TABLE `user` (
|
||||
`Host` varchar(60) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`User` varchar(16) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`Password` varchar(41) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`Select_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Insert_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Update_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Delete_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Create_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Drop_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Reload_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Shutdown_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Process_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`File_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Grant_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`References_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Index_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Alter_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Show_db_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Super_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Create_tmp_table_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Lock_tables_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Execute_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Repl_slave_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Repl_client_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Create_view_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`Show_view_priv` enum('N','Y') NOT NULL default 'N',
|
||||
`ssl_type` enum('','ANY','X509','SPECIFIED') NOT NULL default '',
|
||||
`Host` varchar(60) collate utf8_bin NOT NULL default '',
|
||||
`User` varchar(16) collate utf8_bin NOT NULL default '',
|
||||
`Password` varchar(41) collate utf8_bin NOT NULL default '',
|
||||
`Select_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Insert_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Update_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Delete_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Create_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Drop_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Reload_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Shutdown_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Process_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`File_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Grant_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`References_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Index_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Alter_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Show_db_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Super_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Create_tmp_table_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Lock_tables_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Execute_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Repl_slave_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Repl_client_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Create_view_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`Show_view_priv` enum('N','Y') collate utf8_bin NOT NULL default 'N',
|
||||
`ssl_type` enum('','ANY','X509','SPECIFIED') collate utf8_bin NOT NULL default '',
|
||||
`ssl_cipher` blob NOT NULL,
|
||||
`x509_issuer` blob NOT NULL,
|
||||
`x509_subject` blob NOT NULL,
|
||||
@@ -97,41 +97,41 @@ user CREATE TABLE `user` (
|
||||
`max_updates` int(11) unsigned NOT NULL default '0',
|
||||
`max_connections` int(11) unsigned NOT NULL default '0',
|
||||
PRIMARY KEY (`Host`,`User`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Users and global privileges'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Users and global privileges'
|
||||
show create table func;
|
||||
Table Create Table
|
||||
func CREATE TABLE `func` (
|
||||
`name` char(64) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`name` char(64) collate utf8_bin NOT NULL default '',
|
||||
`ret` tinyint(1) NOT NULL default '0',
|
||||
`dl` char(128) NOT NULL default '',
|
||||
`type` enum('function','aggregate') NOT NULL default 'function',
|
||||
`dl` char(128) collate utf8_bin NOT NULL default '',
|
||||
`type` enum('function','aggregate') collate utf8_bin NOT NULL default 'function',
|
||||
PRIMARY KEY (`name`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='User defined functions'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='User defined functions'
|
||||
show create table tables_priv;
|
||||
Table Create Table
|
||||
tables_priv CREATE TABLE `tables_priv` (
|
||||
`Host` char(60) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`Db` char(64) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`User` char(16) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`Table_name` char(64) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`Grantor` char(77) NOT NULL default '',
|
||||
`Host` char(60) collate utf8_bin NOT NULL default '',
|
||||
`Db` char(64) collate utf8_bin NOT NULL default '',
|
||||
`User` char(16) collate utf8_bin NOT NULL default '',
|
||||
`Table_name` char(64) collate utf8_bin NOT NULL default '',
|
||||
`Grantor` char(77) collate utf8_bin NOT NULL default '',
|
||||
`Timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
|
||||
`Table_priv` set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter') NOT NULL default '',
|
||||
`Column_priv` set('Select','Insert','Update','References') NOT NULL default '',
|
||||
`Table_priv` set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter') collate utf8_bin NOT NULL default '',
|
||||
`Column_priv` set('Select','Insert','Update','References') collate utf8_bin NOT NULL default '',
|
||||
PRIMARY KEY (`Host`,`Db`,`User`,`Table_name`),
|
||||
KEY `Grantor` (`Grantor`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Table privileges'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Table privileges'
|
||||
show create table columns_priv;
|
||||
Table Create Table
|
||||
columns_priv CREATE TABLE `columns_priv` (
|
||||
`Host` char(60) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`Db` char(64) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`User` char(16) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`Table_name` char(64) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`Column_name` char(64) character set latin1 collate latin1_bin NOT NULL default '',
|
||||
`Host` char(60) collate utf8_bin NOT NULL default '',
|
||||
`Db` char(64) collate utf8_bin NOT NULL default '',
|
||||
`User` char(16) collate utf8_bin NOT NULL default '',
|
||||
`Table_name` char(64) collate utf8_bin NOT NULL default '',
|
||||
`Column_name` char(64) collate utf8_bin NOT NULL default '',
|
||||
`Timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
|
||||
`Column_priv` set('Select','Insert','Update','References') NOT NULL default '',
|
||||
`Column_priv` set('Select','Insert','Update','References') collate utf8_bin NOT NULL default '',
|
||||
PRIMARY KEY (`Host`,`Db`,`User`,`Table_name`,`Column_name`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Column privileges'
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Column privileges'
|
||||
show tables;
|
||||
Tables_in_test table_type
|
||||
|
@@ -244,3 +244,10 @@ NULL
|
||||
select convert_tz( NULL, 'MET', 'UTC');
|
||||
convert_tz( NULL, 'MET', 'UTC')
|
||||
NULL
|
||||
create table t1 (ts timestamp);
|
||||
set timestamp=1000000000;
|
||||
insert into t1 (ts) values (now());
|
||||
select convert_tz(ts, @@time_zone, 'Japan') from t1;
|
||||
convert_tz(ts, @@time_zone, 'Japan')
|
||||
2001-09-09 10:46:40
|
||||
drop table t1;
|
||||
|
@@ -31,4 +31,25 @@ SELECT * from t1;
|
||||
a
|
||||
1
|
||||
2
|
||||
delete from t1;
|
||||
insert into t1 (a) values (NULL),(NULL);
|
||||
SELECT * from t1;
|
||||
a
|
||||
3
|
||||
4
|
||||
drop table t1;
|
||||
create temporary table t1 (a integer auto_increment primary key);
|
||||
insert into t1 (a) values (NULL),(NULL);
|
||||
truncate table t1;
|
||||
insert into t1 (a) values (NULL),(NULL);
|
||||
SELECT * from t1;
|
||||
a
|
||||
1
|
||||
2
|
||||
delete from t1;
|
||||
insert into t1 (a) values (NULL),(NULL);
|
||||
SELECT * from t1;
|
||||
a
|
||||
3
|
||||
4
|
||||
drop table t1;
|
||||
|
@@ -9,9 +9,9 @@ d mediumtext YES NULL
|
||||
e longtext YES NULL
|
||||
CREATE TABLE t2 (a char(257), b varbinary(70000), c varchar(70000000));
|
||||
Warnings:
|
||||
Warning 1246 Converting column 'a' from CHAR to TEXT
|
||||
Warning 1246 Converting column 'b' from CHAR to BLOB
|
||||
Warning 1246 Converting column 'c' from CHAR to TEXT
|
||||
Note 1246 Converting column 'a' from CHAR to TEXT
|
||||
Note 1246 Converting column 'b' from CHAR to BLOB
|
||||
Note 1246 Converting column 'c' from CHAR to TEXT
|
||||
show columns from t2;
|
||||
Field Type Null Key Default Extra
|
||||
a text YES NULL
|
||||
@@ -593,9 +593,12 @@ create table t1 (id integer primary key auto_increment, txt text, unique index t
|
||||
insert into t1 (txt) values ('Chevy'), ('Chevy '), (NULL);
|
||||
select * from t1 where txt='Chevy' or txt is NULL;
|
||||
id txt
|
||||
3 NULL
|
||||
1 Chevy
|
||||
2 Chevy
|
||||
3 NULL
|
||||
explain select * from t1 where txt='Chevy' or txt is NULL;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 range txt_index txt_index 23 NULL 2 Using where
|
||||
select * from t1 where txt='Chevy ';
|
||||
id txt
|
||||
1 Chevy
|
||||
@@ -663,6 +666,21 @@ id txt
|
||||
1 Chevy
|
||||
2 Chevy
|
||||
4 Ford
|
||||
alter table t1 modify column txt blob;
|
||||
explain select * from t1 where txt='Chevy' or txt is NULL;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref_or_null txt_index txt_index 23 const 2 Using where
|
||||
select * from t1 where txt='Chevy' or txt is NULL;
|
||||
id txt
|
||||
1 Chevy
|
||||
3 NULL
|
||||
explain select * from t1 where txt='Chevy' or txt is NULL order by txt;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref_or_null txt_index txt_index 23 const 2 Using where; Using filesort
|
||||
select * from t1 where txt='Chevy' or txt is NULL order by txt;
|
||||
id txt
|
||||
3 NULL
|
||||
1 Chevy
|
||||
drop table t1;
|
||||
CREATE TABLE t1 ( i int(11) NOT NULL default '0', c text NOT NULL, PRIMARY KEY (i), KEY (c(1),c(1)));
|
||||
INSERT t1 VALUES (1,''),(2,''),(3,'asdfh'),(4,'');
|
||||
|
@@ -79,3 +79,20 @@ SELECT DATE_FORMAT(f1, "%l.%i %p") , DATE_FORMAT(f2, "%l.%i %p") FROM t1;
|
||||
DATE_FORMAT(f1, "%l.%i %p") DATE_FORMAT(f2, "%l.%i %p")
|
||||
9.00 AM 12.00 PM
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (f1 DATE);
|
||||
CREATE TABLE t2 (f2 VARCHAR(8));
|
||||
CREATE TABLE t3 (f2 CHAR(8));
|
||||
INSERT INTO t1 VALUES ('1978-11-26');
|
||||
INSERT INTO t2 SELECT f1+0 FROM t1;
|
||||
INSERT INTO t2 SELECT f1+0 FROM t1 UNION SELECT f1+0 FROM t1;
|
||||
INSERT INTO t3 SELECT f1+0 FROM t1;
|
||||
INSERT INTO t3 SELECT f1+0 FROM t1 UNION SELECT f1+0 FROM t1;
|
||||
SELECT * FROM t2;
|
||||
f2
|
||||
19781126
|
||||
19781126
|
||||
SELECT * FROM t3;
|
||||
f2
|
||||
19781126
|
||||
19781126
|
||||
DROP TABLE t1, t2, t3;
|
||||
|
@@ -75,14 +75,17 @@ insert t1 values (121,"16");
|
||||
select c1 + c1 * (c2 / 100) as col from t1;
|
||||
col
|
||||
140.36
|
||||
create table t2 select c1 + c1 * (c2 / 100) as col from t1;
|
||||
create table t2 select c1 + c1 * (c2 / 100) as col1, round(c1, 5) as col2, round(c1, 35) as col3, sqrt(c1*1e-15) col4 from t1;
|
||||
select * from t2;
|
||||
col
|
||||
140.36
|
||||
col1 col2 col3 col4
|
||||
140.36 121.00000 121 3.47850542618522e-07
|
||||
show create table t2;
|
||||
Table Create Table
|
||||
t2 CREATE TABLE `t2` (
|
||||
`col` double default NULL
|
||||
`col1` double default NULL,
|
||||
`col2` double(22,5) default NULL,
|
||||
`col3` double default NULL,
|
||||
`col4` double default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
drop table t1,t2;
|
||||
create table t1 (a float);
|
||||
@@ -132,6 +135,9 @@ t1 CREATE TABLE `t1` (
|
||||
`b` double(200,30) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
drop table t1;
|
||||
create table t1 (c20 char);
|
||||
insert into t1 values (5000.0);
|
||||
drop table t1;
|
||||
create table t1 (f float(54));
|
||||
ERROR 42000: Incorrect column specifier for column 'f'
|
||||
drop table if exists t1;
|
||||
|
@@ -272,7 +272,7 @@ auto bigint(17) unsigned NULL PRI 0 select,insert,update,references
|
||||
t1 bigint(1) NULL 0 select,insert,update,references
|
||||
t2 char(1) latin1_swedish_ci select,insert,update,references
|
||||
t3 longtext latin1_swedish_ci select,insert,update,references
|
||||
t4 longtext latin1_bin select,insert,update,references
|
||||
t4 longblob NULL select,insert,update,references
|
||||
select * from t2;
|
||||
auto t1 t2 t3 t4
|
||||
11 1 a aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
|
||||
|
@@ -365,3 +365,15 @@ select * from t1;
|
||||
t1 i
|
||||
2004-04-01 00:00:00 10
|
||||
drop table t1;
|
||||
create table t1 (ts timestamp(19));
|
||||
show create table t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`ts` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
set TIMESTAMP=1000000000;
|
||||
insert into t1 values ();
|
||||
select * from t1;
|
||||
ts
|
||||
2001-09-09 04:46:40
|
||||
drop table t1;
|
||||
|
@@ -5,8 +5,12 @@ insert into t1 values (1);
|
||||
insert into t1 values (-1);
|
||||
Warnings:
|
||||
Warning 1264 Data truncated; out of range for column 'this' at row 1
|
||||
insert into t1 values ('5000000000');
|
||||
Warnings:
|
||||
Warning 1265 Data truncated for column 'this' at row 1
|
||||
select * from t1;
|
||||
this
|
||||
1
|
||||
0
|
||||
4294967295
|
||||
drop table t1;
|
||||
|
@@ -436,6 +436,14 @@ select length(version()) > 1 as `*` UNION select 2;
|
||||
*
|
||||
1
|
||||
2
|
||||
create table t1 (a int);
|
||||
insert into t1 values (0), (3), (1), (2);
|
||||
explain (select * from t1) union (select * from t1) order by a;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 PRIMARY t1 ALL NULL NULL NULL NULL 4
|
||||
2 UNION t1 ALL NULL NULL NULL NULL 4
|
||||
NULL UNION RESULT <union1,2> ALL NULL NULL NULL NULL NULL Using filesort
|
||||
drop table t1;
|
||||
CREATE TABLE t1 ( id int(3) unsigned default '0') ENGINE=MyISAM;
|
||||
INSERT INTO t1 (id) VALUES("1");
|
||||
CREATE TABLE t2 ( id int(3) unsigned default '0', id_master int(5) default '0', text1 varchar(5) default NULL, text2 varchar(5) default NULL) ENGINE=MyISAM;
|
||||
|
@@ -23,7 +23,11 @@ i @vv1:=if(sv1.i,1,0) @vv2:=if(sv2.i,1,0) @vv3:=if(sv3.i,1,0) @vv1+@vv2+@vv3
|
||||
2 1 0 0 1
|
||||
explain select * from t1 where i=@vv1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref i i 4 const 1 Using where
|
||||
1 SIMPLE t1 ref i i 4 const 1
|
||||
select @vv1,i,v from t1 where i=@vv1;
|
||||
@vv1 i v
|
||||
1 1 1
|
||||
1 1 3
|
||||
explain select * from t1 where @vv1:=@vv1+1 and i=@vv1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using where
|
||||
@@ -32,7 +36,7 @@ id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 index NULL i 4 NULL 3 Using where; Using index
|
||||
explain select * from t1 where i=@vv1;
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 ref i i 4 const 1 Using where
|
||||
1 SIMPLE t1 ref i i 4 const 1
|
||||
drop table t1,t2;
|
||||
set @a=0,@b=0;
|
||||
select @a:=10, @b:=1, @a > @b, @a < @b;
|
||||
|
@@ -364,7 +364,7 @@ set sql_log_bin=1;
|
||||
set sql_log_off=1;
|
||||
set sql_log_update=1;
|
||||
Warnings:
|
||||
Note 1314 The update log is deprecated and replaced by the binary log; SET SQL_LOG_UPDATE has been ignored
|
||||
Note 1315 The update log is deprecated and replaced by the binary log; SET SQL_LOG_UPDATE has been ignored
|
||||
set sql_low_priority_updates=1;
|
||||
set sql_max_join_size=200;
|
||||
select @@sql_max_join_size,@@max_join_size;
|
||||
@@ -460,3 +460,19 @@ SELECT @@global.session.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 'key_buffer_size' at line 1
|
||||
SELECT @@global.local.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 'key_buffer_size' at line 1
|
||||
set @tstlw = @@log_warnings;
|
||||
show global variables like 'log_warnings';
|
||||
Variable_name Value
|
||||
log_warnings 1
|
||||
set global log_warnings = 0;
|
||||
show global variables like 'log_warnings';
|
||||
Variable_name Value
|
||||
log_warnings 0
|
||||
set global log_warnings = 42;
|
||||
show global variables like 'log_warnings';
|
||||
Variable_name Value
|
||||
log_warnings 42
|
||||
set global log_warnings = @tstlw;
|
||||
show global variables like 'log_warnings';
|
||||
Variable_name Value
|
||||
log_warnings 1
|
||||
|
@@ -761,7 +761,7 @@ set sql_updatable_view_key=LIMIT1;
|
||||
update v1 set x=x+1;
|
||||
update v2 set x=x+1;
|
||||
Warnings:
|
||||
Note 1354 View being updated does not have complete key of underlying table in it
|
||||
Note 1355 View being updated does not have complete key of underlying table in it
|
||||
update v1 set x=x+1 limit 1;
|
||||
update v2 set x=x+1 limit 1;
|
||||
ERROR HY000: The target table v2 of the UPDATE is not updatable
|
||||
@@ -769,7 +769,7 @@ set sql_updatable_view_key=NO;
|
||||
update v1 set x=x+1 limit 1;
|
||||
update v2 set x=x+1 limit 1;
|
||||
Warnings:
|
||||
Note 1354 View being updated does not have complete key of underlying table in it
|
||||
Note 1355 View being updated does not have complete key of underlying table in it
|
||||
set sql_updatable_view_key=DEFAULT;
|
||||
select * from t1;
|
||||
a b c
|
||||
@@ -979,7 +979,7 @@ create view v1 (a,a) as select 'a','a';
|
||||
ERROR 42S21: Duplicate column name 'a'
|
||||
create procedure p1 () begin declare v int; create view v1 as select v; end;//
|
||||
Warnings:
|
||||
Warning 1310 Referring to uninitialized variable v
|
||||
Warning 1311 Referring to uninitialized variable v
|
||||
call p1();
|
||||
ERROR HY000: View's SELECT contains a variable or parameter
|
||||
drop procedure p1;
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user