set GLOBAL sql_mode=
"";
set LOCAL sql_mode=
"";
create table t1(a int)
;
insert into t1 values(
1)
;
ERROR at line
9: DELIMITER must be followed by a
'delimiter' character
or string
Test default delimiter
;
a
1
Test delimiter without arg
Test delimiter :
a
1
Test delimiter :
a
1
Test delimiter :
;
a
1
Test delimiter //
a
1
Test delimiter MySQL
a
1
Test delimiter delimiter
a
1
Tables_in_test
t1
t2
t3
Tables_in_test
t1
_
Test delimiter : from command line
a
1
_
Test delimiter :
; from command line
a
1
_
Test
'go' command(vertical output) G
***************************
1. row ***************************
a:
1
_
Test
'go' command g
a
1
_
Test
'silent' command(no column names) S
a b
1 x
1 x
_
Test
'silent' command(overrides --table) S
1 x
_
Test
'silent' command(overrides --vertical) S
1 x
_
Test
'silent' command(already silent) S
1 x
_
Test
'silent' command(next statement unaffected) S
1
+---+
| a |
+---+
|
1 |
+---+
1
***************************
1. row ***************************
a:
1
_
Test
'silent' command(G unaffected) S
1
***************************
1. row ***************************
a:
1
_
Test
'silent' command(statement with a quoted delimiter) S
analyze table t1
;
_
Test
'silent' command(empty result
and error) S
drop table t1
;
create table t1(a int)
;
lock tables t1 write
;
database()
test
unlock tables
;
drop table t1
;
+----------------------+------------+--------+
| concat(
'>',col1,
'<') | col2 | col3 |
+----------------------+------------+--------+
| >a < | b |
123421 |
| >a < |
0123456789 |
4 |
| >abcd< | |
4 |
+----------------------+------------+--------+
+-------------------+
| __tañgè Ñãmé |
+-------------------+
| John Doe |
+-------------------+
+-------------------+
| John Doe |
+-------------------+
| __tañgè Ñãmé |
+-------------------+
+------+------+---------------------------+
| i | j | k |
+------+------+---------------------------+
|
1 | NULL | NULL |
| NULL | NULL | <-----------------------> |
| NULL | NULL | <----- |
| NULL | NULL | Τη γλώσσα |
| NULL | NULL | ᛖᚴ ᚷᛖᛏ |
+------+------+---------------------------+
i j k
NULL
1 NULL
Field Type Null Key Default Extra
i int(
11) YES NULL
j int(
11) NO NULL
k int(
11) YES NULL
+------+---+------+
| i | j | k |
+------+---+------+
| NULL |
1 | NULL |
+------+---+------+
+-------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| i | int(
11) | YES | | NULL | |
| j | int(
11) | NO | | NULL | |
| k | int(
11) | YES | | NULL | |
+-------+---------+------+-----+---------+-------+
i s1
1 x
2 NULL
3
+------+------+
| i | s1 |
+------+------+
|
1 | x |
|
2 | NULL |
|
3 | |
+------+------+
unhex(
'zz')
NULL
+-------------+
| unhex(
'zz') |
+-------------+
| NULL |
+-------------+
create table t1(a int, b varchar(
255), c int)
;
Field Type Null Key Default Extra
a int(
11) YES NULL
b varchar(
255) YES NULL
c int(
11) YES NULL
Field Type Null Key Default Extra
a int(
11) YES NULL
b varchar(
255) YES NULL
c int(
11) YES NULL
drop table t1
;
1
1
--------------
use
--------------
ERROR 1064 (
42000) at line
3: You have an
error in your SQL syntax
; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 1
ERROR at line
1: USE must be followed by a database name
1 +
1
2
1 +
1
2
1 +
1
2
1 +
1
2
\
\\
';
';
create table t17583 (a int)
;
insert into t17583 (a) values (
0),(
1),(
2),(
3),(
4),(
5),(
6),(
7),(
8),(
9)
;
insert into t17583 select a from t17583
;
insert into t17583 select a from t17583
;
insert into t17583 select a from t17583
;
insert into t17583 select a from t17583
;
insert into t17583 select a from t17583
;
insert into t17583 select a from t17583
;
insert into t17583 select a from t17583
;
select count(*) from t17583
;
count(*)
1280
drop table t17583
;
Test connect without db-
or host-name => reconnect
Test connect with dbname only => new dbname, old hostname
--------------
connecttest
--------------
ERROR 1064 (
42000) at line
1: You have an
error in your SQL syntax
; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'connecttest' at line 1
Test connect with _invalid_ dbname only => new invalid dbname, old hostname
ERROR 1049 (
42000) at line
1: Unknown database
'invalid'
ERROR 1049 (
42000) at line
1: Unknown database
'invalid'
Test connect with dbname + hostname
Test connect with dbname + _invalid_ hostname
ERROR 2005 (HY000) at line
1: Unknown server host
'invalid_hostname' (errno)
ERROR 2005 (HY000) at line
1: Unknown server host
'invalid_hostname' (errno)
The commands reported in the bug report
ERROR 2005 (HY000) at line
1: Unknown server host
'cyril has found a bug :)XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' (errno)
Too long dbname
ERROR 1102 (
42000) at line
1: Incorrect database name
'test_really_long_dbnamexxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...'
Too long hostname
ERROR 2005 (HY000) at line
1: Unknown server host
'cyrils_superlonghostnameXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' (errno)
1
1
ERROR at line
1: DELIMITER cannot contain a backslash character
ERROR at line
1: DELIMITER cannot contain a backslash character
1
1
1
1
This is a file starting with UTF8 BOM
0xEFBBBF
This is a file starting with UTF8 BOM
0xEFBBBF
delimiter
1
2
2
2
2
@z:=
'1' @z=database()
1 NULL
1
1
1
1
COUNT (*)
1
COUNT (*)
1
COUNT (*)
1
ERROR 2005 (HY000) at line
1: Unknown server host
'invalid_hostname' (errno)
End of
5.
0 tests
WARNING: --server-arg option
not supported in this configuration.
***************************
1. row ***************************
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
1:
1
2:
2
3:
3
4:
4
5:
5
6:
6
7:
7
8:
8
9:
9
0:
0
+---+
|
1 |
+---+
|
1 |
+---+
Warning (Code
1286): Unknown storage engine
'nonexistent'
Warning (Code
1266): Using storage engine MyISAM for table
't2'
Warning (Code
1286): Unknown storage engine
'nonexistent2'
Warning (Code
1266): Using storage engine MyISAM for table
't2'
Error (Code
1050): Table
't2' already exists
drop tables t1, t2
;
Variable_name Value
lc_messages ru_RU
<TABLE BORDER=
1><TR><TH><
;</TH></TR><TR><TD>< & ></TD></TR></TABLE>create table t1 (a char(5));
insert into t1 values (
'\0b\0')
;
a
\
0b\
0
a
\
0b\
0
+------+
| a |
+------+
| b |
+------+
***************************
1. row ***************************
a: b
<TABLE BORDER=
1><TR><TH>a</TH></TR><TR><TD> b </TD></TR></TABLE><?xml version=
"1.0"?>
<resultset statement=
"select a from t1
" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance
">
<row>
<field name=
"a"> b </field>
</row>
</resultset>
drop table t1
;
Bug #
47147: mysql client option --skip-column-names does
not apply to vertical output
***************************
1. row ***************************
1
#
# Bug #
54899: --one-database option cannot handle DROP/CREATE DATABASE
# commands.
#
CREATE DATABASE connected_db
;
USE connected_db
;
SHOW TABLES
;
Tables_in_connected_db
table_in_connected_db
DROP DATABASE connected_db
;
#
# Testing --one-database option
#
CREATE DATABASE connected_db
;
SHOW TABLES IN connected_db
;
Tables_in_connected_db
t1
SHOW TABLES IN test
;
Tables_in_test
t1
USE test
;
DROP TABLE t1
;
DROP DATABASE connected_db
;
SHOW TABLES IN test
;
Tables_in_test
SHOW TABLES IN test1
;
Tables_in_test1
DROP DATABASE test1
;
#
# Checking --one-database option followed by the execution of
# connect command.
#
CREATE DATABASE connected_db
;
SHOW TABLES IN connected_db
;
Tables_in_connected_db
t1
t2
SHOW TABLES IN test
;
Tables_in_test
t1
t2
DROP TABLE test.t1
;
DROP TABLE test.t2
;
DROP DATABASE connected_db
;
#
# Checking --one-database option with no database specified
# at command-line.
#
SHOW TABLES IN test
;
Tables_in_test
#
# Checking --one-database option with non_existent_db
# specified with USE command
#
CREATE DATABASE connected_db
;
SHOW TABLES IN connected_db
;
Tables_in_connected_db
table_in_connected_db
SHOW TABLES IN connected_db
;
Tables_in_connected_db
table_in_connected_db
DROP DATABASE connected_db
;
create database `aa``bb````cc`
;
DATABASE()
aa`bb``cc
DATABASE()
test
DATABASE()
aa`bb``cc
DATABASE()
test
DATABASE()
aa`bb``cc
drop database `aa``bb````cc`
;
a
>>\ndelimiter\n<<
+-------------------+
| a |
| aaaaaaaaaaaaaaaaa |
+-------------------+
#
# Start of
10.
1 tests
#
#
# MDEV-
6572 "USE dbname" with a bad sequence erroneously connects to a wrong database
#
#
# End of
10.
1 tests
#
ERROR 1300 (HY000) at line
2: Invalid utf8mb4 character string:
'test\xF0\x9F\x98\x81'
set GLOBAL sql_mode=default
;
End of tests
create table `a1\``b1` (a int)
;
show tables
;
Tables_in_test
a1\`b1
insert `a1\``b1` values (
1),(
2)
;
show create table `a1\``b1`
;
Table Create Table
a1\`b1 CREATE TABLE `a1\``b1` (
`a` int(
11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci
/*M!999999\- enable the sandbox mode */
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `a1\``b1` (
`a` int(
11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci
;
/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO `a1\``b1` VALUES
(
1),
(
2)
;
insert `a1\``b1` values (
4),(
5)
;
show create table `a1\``b1`
;
Table Create Table
a1\`b1 CREATE TABLE `a1\``b1` (
`a` int(
11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci
select * from `a1\``b1`
;
a
1
2
drop table `a1\``b1`
;
set sql_mode=ansi_quotes
;
create table
"a1\""b1" (a int)
;
show tables
;
Tables_in_test
a1\
"b1
insert
"a1\""b1" values (
1),(
2)
;
show create table
"a1\""b1";
Table Create Table
a1\
"b1 CREATE TABLE "a1\
""b1
" (
"a" int(
11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci
/*M!999999\- enable the sandbox mode */
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE
"a1\""b1" (
"a" int(
11) DEFAULT NULL
)
;
/*!40101 SET character_set_client = @saved_cs_client */;
INSERT INTO
"a1\""b1" VALUES
(
1),
(
2)
;
insert
"a1\""b1" values (
4),(
5)
;
show create table
"a1\""b1";
Table Create Table
a1\
"b1 CREATE TABLE "a1\
""b1
" (
"a" int(
11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci
select * from
"a1\""b1";
a
1
2
drop table
"a1\""b1";
set sql_mode=default
;
create table t1 (a text)
;
select count(*) from t1
;
count(*)
44
truncate table t1
;
select count(*) from t1
;
count(*)
44
truncate table t1
;
select count(*) from t1
;
count(*)
0
truncate table t1
;
select count(*) from t1
;
count(*)
0
truncate table t1
;
select count(*) from t1
;
count(*)
44
truncate table t1
;
select count(*) from t1
;
count(*)
0
truncate table t1
;
drop table t1
;
#
# MDEV-
15538 '-N' Produce html output wrong
#
<TABLE BORDER=
1><TR><TD>
1</TD></TR></TABLE>
WARNING: option --enable-cleartext-plugin is obsolete.
1
1
# End of
10.
3 tests
#
# MDEV-
21778 Disable system commands in mysql/mariadb client
#
ERROR at line
1:
Not allowed in the sandbox mode
1
ERROR at line
1:
Not allowed in the sandbox mode
2
ERROR at line
1:
Not allowed in the sandbox mode
3
1
entering sandbox
system
tee
source
^^^
2
entering sandbox
system
tee
source
^^^
3
#
# MDEV-
34203: Sandbox mode \- is
not compatible with --binary-mode
#
create table t1 (a int)
;
drop table t1
;
show create table t1
;
Table Create Table
t1 CREATE TABLE `t1` (
`a` int(
11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci
drop table t1
;
# End of
10.
5 tests
#
# MDEV-
30327 Client crashes in print_last_query_cost
#
# End of
11.
0 tests
#
# show whether server cert was verified
#
create user ser@localhost identified by
"ass";
MYSQL --disable-ssl-verify-server-cert -e
"\s"
SSL: Cipher in use is XXX, cert is UNKNOWN
MYSQL --ssl-verify-server-cert -e
"\s"
SSL: Cipher in use is XXX, cert is OK
drop user ser@localhost
;
#
# MDEV-
32473 --disable-ssl doesn
't disable it
#
MYSQL --ssl-verify-server-cert --disable-ssl -e
"\s"
SSL:
Not in use