mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +01:00
1864d9596d
Documentation of the feature can be found at: http://kb.askmonty.org/en/multi-source-replication/ This code is based on code from Taobao, developed by Plinux BUILD/SETUP.sh: Added -Wno-invalid-offsetof to get rid of warning of offsetof() on C++ class (safe in the contex we use it) client/mysqltest.cc: Added support for error names starting with 'W' Added connection_name support to --sync_with_master cmake/maintainer.cmake: Added -Wno-invalid-offsetof to get rid of warning of offsetof() on C++ class (safe in the contex we use it) mysql-test/r/mysqltest.result: Updated results mysql-test/r/parser.result: Updated results mysql-test/suite/multi_source/my.cnf: Setup of multi-master tests mysql-test/suite/multi_source/simple.result: Simple basic test of multi-source functionality mysql-test/suite/multi_source/simple.test: Simple basic test of multi-source functionality mysql-test/suite/multi_source/syntax.result: Test of multi-source syntax mysql-test/suite/multi_source/syntax.test: Test of multi-source syntax mysql-test/suite/rpl/r/rpl_rotate_logs.result: Updated results because of new error messages mysql-test/t/parser.test: Updated test as master_pos_wait() now takes more arguments than before sql/event_scheduler.cc: No reason to initialize slave_thread (it's guaranteed to be zero here) sql/item_create.cc: Added connection_name argument to master_pos_wait() Simplified code sql/item_func.cc: Added connection_name argument to master_pos_wait() sql/item_func.h: Added connection_name argument to master_pos_wait() sql/log.cc: Added tag "Master 'connection_name'" to slave errors that has a connection name. sql/mysqld.cc: Added variable mysqld_server_initialized so that other functions can test if server is fully initialized. Free all slave data in one place (fewer ifdef's) Removed not needed call to close_active_mi() Initialize slaves() later in startup to ensure that everthing is really initialized when slaves start. Made status variable slave_running multi-source safe sql/mysqld.h: Added mysqld_server_initialized sql/rpl_mi.cc: Store connection name and cmp_connection_name (only used for show full slave status) in Master_info Added code for Master_info_index, which handles storage of multi-master information Don't write the empty "" connection_name to multi-master.info file. This is handled by the original code. sql/rpl_mi.h: Added connection_name and Master_info_index sql/rpl_rli.cc: Added connection_name to relay log files. sql/rpl_rli.h: Fixed type of slave_skip_counter as we now access it directly in sys_vars.cc, so it must be uint sql/share/errmsg-utf8.txt: Added new error messages needed for multi-source Added multi-source name to error ER_MASTER_INFO and WARN_NO_MASTER_INFO sql/slave.cc: Moved things a bit around to make it easier to handle error conditions. Create a global master_info_index and add the "" connection to it Ensure that new Master_info doesn't fail. Don't call terminate_slave_threads(active_mi..) on end_slave() as this is now done automaticly when deleting master_info_index. Delete not needed function close_active_mi(). One can achive same thing by calling end_slave(). Added support for SHOW FULL SLAVE STATUS (show status for all master connections with connection_name as first column) sql/slave.h: Added new prototypes sql/sql_base.cc: More DBUG_PRINT sql/sql_class.cc: Reset thd->connection_name and thd-->default_master_connection sql/sql_class.h: Added thd->connection_name and thd-->default_master_connection Added slave_skip_count to variables to make changing the @@sql_slave_skip_count variable thread safe sql/sql_const.h: Added MAX_CONNECTION_NAME sql/sql_lex.cc: Reset 'lex->verbose' (to simplify some sql_yacc.yy code) sql/sql_lex.h: Added connection_name sql/sql_parse.cc: Added support for connection_name to all SLAVE commands. - Instead of using active_mi, we now get the current Master_info from master_info_index. - Create new replication threads with CHANGE MASTER - Added support for show_all_master_info() sql/sql_reload.cc: Made reset/full slave use master_info_index->get_master_info() instead of active_mi. If one uses 'RESET SLAVE "connection_name" all' the connection is removed from master_info_index. sql/sql_repl.cc: sql_slave_skip_counter is moved to thd->variables to make it thread safe and fix some bugs with it Add connection name to relay log files. Added connection name to errors. Added some logging for multi-master if log_warnings > 1 stop_slave(): - Don't check if thd is set. It's guaranteed to always be set. change_master(): - Check for duplicate connection names in change_master() - Check for wrong arguments first in file (to simplify error handling) - Register new connections in master_info_index sql/sql_yacc.yy: Added optional connection_name to a all relevant master/slave commands sql/strfunc.cc: my_global.h shoud always be included first. sql/sys_vars.cc: Added variable default_master_connection Made variable sql_slave_skip_counter multi-source safe sql/sys_vars.h: Added Sys_var_session_lexstring (needed for default_master_connection) Added Sys_var_multi_source_uint (needed for sql_slave_skip_counter).
624 lines
33 KiB
Text
624 lines
33 KiB
Text
SET @save_sql_mode=@@sql_mode;
|
|
set SQL_MODE='';
|
|
create table ADDDATE(a int);
|
|
drop table ADDDATE;
|
|
create table ADDDATE (a int);
|
|
drop table ADDDATE;
|
|
create table BIT_AND(a int);
|
|
ERROR 42000: 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 'BIT_AND(a int)' at line 1
|
|
create table BIT_AND (a int);
|
|
drop table BIT_AND;
|
|
create table BIT_OR(a int);
|
|
ERROR 42000: 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 'BIT_OR(a int)' at line 1
|
|
create table BIT_OR (a int);
|
|
drop table BIT_OR;
|
|
create table BIT_XOR(a int);
|
|
ERROR 42000: 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 'BIT_XOR(a int)' at line 1
|
|
create table BIT_XOR (a int);
|
|
drop table BIT_XOR;
|
|
create table CAST(a int);
|
|
ERROR 42000: 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 'CAST(a int)' at line 1
|
|
create table CAST (a int);
|
|
drop table CAST;
|
|
create table COUNT(a int);
|
|
ERROR 42000: 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 'COUNT(a int)' at line 1
|
|
create table COUNT (a int);
|
|
drop table COUNT;
|
|
create table CURDATE(a int);
|
|
ERROR 42000: 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 'CURDATE(a int)' at line 1
|
|
create table CURDATE (a int);
|
|
drop table CURDATE;
|
|
create table CURTIME(a int);
|
|
ERROR 42000: 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 'CURTIME(a int)' at line 1
|
|
create table CURTIME (a int);
|
|
drop table CURTIME;
|
|
create table DATE_ADD(a int);
|
|
ERROR 42000: 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 'DATE_ADD(a int)' at line 1
|
|
create table DATE_ADD (a int);
|
|
drop table DATE_ADD;
|
|
create table DATE_SUB(a int);
|
|
ERROR 42000: 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 'DATE_SUB(a int)' at line 1
|
|
create table DATE_SUB (a int);
|
|
drop table DATE_SUB;
|
|
create table EXTRACT(a int);
|
|
ERROR 42000: 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 'EXTRACT(a int)' at line 1
|
|
create table EXTRACT (a int);
|
|
drop table EXTRACT;
|
|
create table GROUP_CONCAT(a int);
|
|
ERROR 42000: 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 'GROUP_CONCAT(a int)' at line 1
|
|
create table GROUP_CONCAT (a int);
|
|
drop table GROUP_CONCAT;
|
|
create table GROUP_UNIQUE_USERS(a int);
|
|
drop table GROUP_UNIQUE_USERS;
|
|
create table GROUP_UNIQUE_USERS (a int);
|
|
drop table GROUP_UNIQUE_USERS;
|
|
create table MAX(a int);
|
|
ERROR 42000: 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 'MAX(a int)' at line 1
|
|
create table MAX (a int);
|
|
drop table MAX;
|
|
create table MID(a int);
|
|
ERROR 42000: 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 'MID(a int)' at line 1
|
|
create table MID (a int);
|
|
drop table MID;
|
|
create table MIN(a int);
|
|
ERROR 42000: 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 'MIN(a int)' at line 1
|
|
create table MIN (a int);
|
|
drop table MIN;
|
|
create table NOW(a int);
|
|
ERROR 42000: 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 'NOW(a int)' at line 1
|
|
create table NOW (a int);
|
|
drop table NOW;
|
|
create table POSITION(a int);
|
|
ERROR 42000: 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 'POSITION(a int)' at line 1
|
|
create table POSITION (a int);
|
|
drop table POSITION;
|
|
create table SESSION_USER(a int);
|
|
drop table SESSION_USER;
|
|
create table SESSION_USER (a int);
|
|
drop table SESSION_USER;
|
|
create table STD(a int);
|
|
ERROR 42000: 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 'STD(a int)' at line 1
|
|
create table STD (a int);
|
|
drop table STD;
|
|
create table STDDEV(a int);
|
|
ERROR 42000: 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 'STDDEV(a int)' at line 1
|
|
create table STDDEV (a int);
|
|
drop table STDDEV;
|
|
create table STDDEV_POP(a int);
|
|
ERROR 42000: 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 'STDDEV_POP(a int)' at line 1
|
|
create table STDDEV_POP (a int);
|
|
drop table STDDEV_POP;
|
|
create table STDDEV_SAMP(a int);
|
|
ERROR 42000: 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 'STDDEV_SAMP(a int)' at line 1
|
|
create table STDDEV_SAMP (a int);
|
|
drop table STDDEV_SAMP;
|
|
create table SUBDATE(a int);
|
|
drop table SUBDATE;
|
|
create table SUBDATE (a int);
|
|
drop table SUBDATE;
|
|
create table SUBSTR(a int);
|
|
ERROR 42000: 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 'SUBSTR(a int)' at line 1
|
|
create table SUBSTR (a int);
|
|
drop table SUBSTR;
|
|
create table SUBSTRING(a int);
|
|
ERROR 42000: 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 'SUBSTRING(a int)' at line 1
|
|
create table SUBSTRING (a int);
|
|
drop table SUBSTRING;
|
|
create table SUM(a int);
|
|
ERROR 42000: 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 'SUM(a int)' at line 1
|
|
create table SUM (a int);
|
|
drop table SUM;
|
|
create table SYSDATE(a int);
|
|
ERROR 42000: 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 'SYSDATE(a int)' at line 1
|
|
create table SYSDATE (a int);
|
|
drop table SYSDATE;
|
|
create table SYSTEM_USER(a int);
|
|
drop table SYSTEM_USER;
|
|
create table SYSTEM_USER (a int);
|
|
drop table SYSTEM_USER;
|
|
create table TRIM(a int);
|
|
ERROR 42000: 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 'TRIM(a int)' at line 1
|
|
create table TRIM (a int);
|
|
drop table TRIM;
|
|
create table UNIQUE_USERS(a int);
|
|
drop table UNIQUE_USERS;
|
|
create table UNIQUE_USERS (a int);
|
|
drop table UNIQUE_USERS;
|
|
create table VARIANCE(a int);
|
|
ERROR 42000: 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 'VARIANCE(a int)' at line 1
|
|
create table VARIANCE (a int);
|
|
drop table VARIANCE;
|
|
create table VAR_POP(a int);
|
|
ERROR 42000: 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 'VAR_POP(a int)' at line 1
|
|
create table VAR_POP (a int);
|
|
drop table VAR_POP;
|
|
create table VAR_SAMP(a int);
|
|
ERROR 42000: 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 'VAR_SAMP(a int)' at line 1
|
|
create table VAR_SAMP (a int);
|
|
drop table VAR_SAMP;
|
|
set SQL_MODE='IGNORE_SPACE';
|
|
create table ADDDATE(a int);
|
|
drop table ADDDATE;
|
|
create table ADDDATE (a int);
|
|
drop table ADDDATE;
|
|
create table BIT_AND(a int);
|
|
ERROR 42000: 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 'BIT_AND(a int)' at line 1
|
|
create table BIT_AND (a int);
|
|
ERROR 42000: 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 'BIT_AND (a int)' at line 1
|
|
create table BIT_OR(a int);
|
|
ERROR 42000: 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 'BIT_OR(a int)' at line 1
|
|
create table BIT_OR (a int);
|
|
ERROR 42000: 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 'BIT_OR (a int)' at line 1
|
|
create table BIT_XOR(a int);
|
|
ERROR 42000: 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 'BIT_XOR(a int)' at line 1
|
|
create table BIT_XOR (a int);
|
|
ERROR 42000: 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 'BIT_XOR (a int)' at line 1
|
|
create table CAST(a int);
|
|
ERROR 42000: 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 'CAST(a int)' at line 1
|
|
create table CAST (a int);
|
|
ERROR 42000: 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 'CAST (a int)' at line 1
|
|
create table COUNT(a int);
|
|
ERROR 42000: 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 'COUNT(a int)' at line 1
|
|
create table COUNT (a int);
|
|
ERROR 42000: 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 'COUNT (a int)' at line 1
|
|
create table CURDATE(a int);
|
|
ERROR 42000: 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 'CURDATE(a int)' at line 1
|
|
create table CURDATE (a int);
|
|
ERROR 42000: 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 'CURDATE (a int)' at line 1
|
|
create table CURTIME(a int);
|
|
ERROR 42000: 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 'CURTIME(a int)' at line 1
|
|
create table CURTIME (a int);
|
|
ERROR 42000: 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 'CURTIME (a int)' at line 1
|
|
create table DATE_ADD(a int);
|
|
ERROR 42000: 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 'DATE_ADD(a int)' at line 1
|
|
create table DATE_ADD (a int);
|
|
ERROR 42000: 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 'DATE_ADD (a int)' at line 1
|
|
create table DATE_SUB(a int);
|
|
ERROR 42000: 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 'DATE_SUB(a int)' at line 1
|
|
create table DATE_SUB (a int);
|
|
ERROR 42000: 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 'DATE_SUB (a int)' at line 1
|
|
create table EXTRACT(a int);
|
|
ERROR 42000: 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 'EXTRACT(a int)' at line 1
|
|
create table EXTRACT (a int);
|
|
ERROR 42000: 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 'EXTRACT (a int)' at line 1
|
|
create table GROUP_CONCAT(a int);
|
|
ERROR 42000: 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 'GROUP_CONCAT(a int)' at line 1
|
|
create table GROUP_CONCAT (a int);
|
|
ERROR 42000: 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 'GROUP_CONCAT (a int)' at line 1
|
|
create table GROUP_UNIQUE_USERS(a int);
|
|
drop table GROUP_UNIQUE_USERS;
|
|
create table GROUP_UNIQUE_USERS (a int);
|
|
drop table GROUP_UNIQUE_USERS;
|
|
create table MAX(a int);
|
|
ERROR 42000: 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 'MAX(a int)' at line 1
|
|
create table MAX (a int);
|
|
ERROR 42000: 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 'MAX (a int)' at line 1
|
|
create table MID(a int);
|
|
ERROR 42000: 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 'MID(a int)' at line 1
|
|
create table MID (a int);
|
|
ERROR 42000: 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 'MID (a int)' at line 1
|
|
create table MIN(a int);
|
|
ERROR 42000: 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 'MIN(a int)' at line 1
|
|
create table MIN (a int);
|
|
ERROR 42000: 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 'MIN (a int)' at line 1
|
|
create table NOW(a int);
|
|
ERROR 42000: 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 'NOW(a int)' at line 1
|
|
create table NOW (a int);
|
|
ERROR 42000: 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 'NOW (a int)' at line 1
|
|
create table POSITION(a int);
|
|
ERROR 42000: 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 'POSITION(a int)' at line 1
|
|
create table POSITION (a int);
|
|
ERROR 42000: 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 'POSITION (a int)' at line 1
|
|
create table SESSION_USER(a int);
|
|
drop table SESSION_USER;
|
|
create table SESSION_USER (a int);
|
|
drop table SESSION_USER;
|
|
create table STD(a int);
|
|
ERROR 42000: 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 'STD(a int)' at line 1
|
|
create table STD (a int);
|
|
ERROR 42000: 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 'STD (a int)' at line 1
|
|
create table STDDEV(a int);
|
|
ERROR 42000: 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 'STDDEV(a int)' at line 1
|
|
create table STDDEV (a int);
|
|
ERROR 42000: 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 'STDDEV (a int)' at line 1
|
|
create table STDDEV_POP(a int);
|
|
ERROR 42000: 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 'STDDEV_POP(a int)' at line 1
|
|
create table STDDEV_POP (a int);
|
|
ERROR 42000: 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 'STDDEV_POP (a int)' at line 1
|
|
create table STDDEV_SAMP(a int);
|
|
ERROR 42000: 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 'STDDEV_SAMP(a int)' at line 1
|
|
create table STDDEV_SAMP (a int);
|
|
ERROR 42000: 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 'STDDEV_SAMP (a int)' at line 1
|
|
create table SUBDATE(a int);
|
|
drop table SUBDATE;
|
|
create table SUBDATE (a int);
|
|
drop table SUBDATE;
|
|
create table SUBSTR(a int);
|
|
ERROR 42000: 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 'SUBSTR(a int)' at line 1
|
|
create table SUBSTR (a int);
|
|
ERROR 42000: 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 'SUBSTR (a int)' at line 1
|
|
create table SUBSTRING(a int);
|
|
ERROR 42000: 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 'SUBSTRING(a int)' at line 1
|
|
create table SUBSTRING (a int);
|
|
ERROR 42000: 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 'SUBSTRING (a int)' at line 1
|
|
create table SUM(a int);
|
|
ERROR 42000: 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 'SUM(a int)' at line 1
|
|
create table SUM (a int);
|
|
ERROR 42000: 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 'SUM (a int)' at line 1
|
|
create table SYSDATE(a int);
|
|
ERROR 42000: 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 'SYSDATE(a int)' at line 1
|
|
create table SYSDATE (a int);
|
|
ERROR 42000: 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 'SYSDATE (a int)' at line 1
|
|
create table SYSTEM_USER(a int);
|
|
drop table SYSTEM_USER;
|
|
create table SYSTEM_USER (a int);
|
|
drop table SYSTEM_USER;
|
|
create table TRIM(a int);
|
|
ERROR 42000: 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 'TRIM(a int)' at line 1
|
|
create table TRIM (a int);
|
|
ERROR 42000: 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 'TRIM (a int)' at line 1
|
|
create table UNIQUE_USERS(a int);
|
|
drop table UNIQUE_USERS;
|
|
create table UNIQUE_USERS (a int);
|
|
drop table UNIQUE_USERS;
|
|
create table VARIANCE(a int);
|
|
ERROR 42000: 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 'VARIANCE(a int)' at line 1
|
|
create table VARIANCE (a int);
|
|
ERROR 42000: 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 'VARIANCE (a int)' at line 1
|
|
create table VAR_POP(a int);
|
|
ERROR 42000: 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 'VAR_POP(a int)' at line 1
|
|
create table VAR_POP (a int);
|
|
ERROR 42000: 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 'VAR_POP (a int)' at line 1
|
|
create table VAR_SAMP(a int);
|
|
ERROR 42000: 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 'VAR_SAMP(a int)' at line 1
|
|
create table VAR_SAMP (a int);
|
|
ERROR 42000: 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 'VAR_SAMP (a int)' at line 1
|
|
DROP TABLE IF EXISTS table_25930_a;
|
|
DROP TABLE IF EXISTS table_25930_b;
|
|
SET SQL_MODE = 'ANSI_QUOTES';
|
|
CREATE TABLE table_25930_a ( "blah" INT );
|
|
CREATE TABLE table_25930_b SELECT "blah" - 1 FROM table_25930_a;
|
|
desc table_25930_b;
|
|
Field Type Null Key Default Extra
|
|
"blah" - 1 bigint(12) YES NULL
|
|
DROP TABLE table_25930_a;
|
|
DROP TABLE table_25930_b;
|
|
SET @@sql_mode=@save_sql_mode;
|
|
DROP PROCEDURE IF EXISTS p26030;
|
|
select "non terminated"$$
|
|
non terminated
|
|
non terminated
|
|
select "terminated";$$
|
|
terminated
|
|
terminated
|
|
select "non terminated, space" $$
|
|
non terminated, space
|
|
non terminated, space
|
|
select "terminated, space"; $$
|
|
terminated, space
|
|
terminated, space
|
|
select "non terminated, comment" /* comment */$$
|
|
non terminated, comment
|
|
non terminated, comment
|
|
select "terminated, comment"; /* comment */$$
|
|
terminated, comment
|
|
terminated, comment
|
|
select "stmt 1";select "stmt 2 non terminated"$$
|
|
stmt 1
|
|
stmt 1
|
|
stmt 2 non terminated
|
|
stmt 2 non terminated
|
|
select "stmt 1";select "stmt 2 terminated";$$
|
|
stmt 1
|
|
stmt 1
|
|
stmt 2 terminated
|
|
stmt 2 terminated
|
|
select "stmt 1";select "stmt 2 non terminated, space" $$
|
|
stmt 1
|
|
stmt 1
|
|
stmt 2 non terminated, space
|
|
stmt 2 non terminated, space
|
|
select "stmt 1";select "stmt 2 terminated, space"; $$
|
|
stmt 1
|
|
stmt 1
|
|
stmt 2 terminated, space
|
|
stmt 2 terminated, space
|
|
select "stmt 1";select "stmt 2 non terminated, comment" /* comment */$$
|
|
stmt 1
|
|
stmt 1
|
|
stmt 2 non terminated, comment
|
|
stmt 2 non terminated, comment
|
|
select "stmt 1";select "stmt 2 terminated, comment"; /* comment */$$
|
|
stmt 1
|
|
stmt 1
|
|
stmt 2 terminated, comment
|
|
stmt 2 terminated, comment
|
|
select "stmt 1"; select "space, stmt 2"$$
|
|
stmt 1
|
|
stmt 1
|
|
space, stmt 2
|
|
space, stmt 2
|
|
select "stmt 1";/* comment */select "comment, stmt 2"$$
|
|
stmt 1
|
|
stmt 1
|
|
comment, stmt 2
|
|
comment, stmt 2
|
|
DROP PROCEDURE IF EXISTS p26030; CREATE PROCEDURE p26030() BEGIN SELECT 1; END; CALL p26030()
|
|
$$
|
|
1
|
|
1
|
|
DROP PROCEDURE IF EXISTS p26030; CREATE PROCEDURE p26030() SELECT 1; CALL p26030()
|
|
$$
|
|
1
|
|
1
|
|
DROP PROCEDURE p26030;
|
|
select pi(3.14);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'pi'
|
|
select tan();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'tan'
|
|
select tan(1, 2);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'tan'
|
|
select makedate(1);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'makedate'
|
|
select makedate(1, 2, 3);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'makedate'
|
|
select maketime();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'maketime'
|
|
select maketime(1);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'maketime'
|
|
select maketime(1, 2);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'maketime'
|
|
select maketime(1, 2, 3, 4);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'maketime'
|
|
select atan();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'atan'
|
|
select atan2(1, 2, 3);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'atan2'
|
|
select concat();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'concat'
|
|
select concat("foo");
|
|
concat("foo")
|
|
foo
|
|
select concat_ws();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'concat_ws'
|
|
select concat_ws("foo");
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'concat_ws'
|
|
select encrypt();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'encrypt'
|
|
select encrypt(1, 2, 3);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'encrypt'
|
|
select des_encrypt("p1", "p2", "not expected");
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'des_encrypt'
|
|
select des_decrypt("p1", "p2", "not expected");
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'des_decrypt'
|
|
select elt();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'elt'
|
|
select elt(1);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'elt'
|
|
select export_set();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'export_set'
|
|
select export_set("p1");
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'export_set'
|
|
select export_set("p1", "p2");
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'export_set'
|
|
select export_set("p1", "p2", "p3", "p4", "p5", "p6");
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'export_set'
|
|
select field();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'field'
|
|
select field("p1");
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'field'
|
|
select from_unixtime();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'from_unixtime'
|
|
select from_unixtime(1, 2, 3);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'from_unixtime'
|
|
select unix_timestamp(1, 2);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'unix_timestamp'
|
|
select greatest();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'greatest'
|
|
select greatest(12);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'greatest'
|
|
select last_insert_id(1, 2);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'last_insert_id'
|
|
select least();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'least'
|
|
select least(12);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'least'
|
|
select locate();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'locate'
|
|
select locate(1);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'locate'
|
|
select locate(1, 2, 3, 4);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'locate'
|
|
select log();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'log'
|
|
select log(1, 2, 3);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'log'
|
|
select make_set();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'make_set'
|
|
select make_set(1);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'make_set'
|
|
select master_pos_wait();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'master_pos_wait'
|
|
select master_pos_wait(1);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'master_pos_wait'
|
|
select master_pos_wait(1, 2, 3, 4, 5);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'master_pos_wait'
|
|
select rand(1, 2, 3);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'rand'
|
|
select round(1, 2, 3);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'round'
|
|
select yearweek();
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'yearweek'
|
|
select yearweek(1, 2, 3);
|
|
ERROR 42000: Incorrect parameter count in the call to native function 'yearweek'
|
|
select abs(3);
|
|
abs(3)
|
|
3
|
|
select abs(3 AS three);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'abs'
|
|
select abs(3 three);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'abs'
|
|
select abs(3 AS "three");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'abs'
|
|
select abs(3 "three");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'abs'
|
|
set @bar="bar";
|
|
set @foobar="foobar";
|
|
select instr("foobar", "bar");
|
|
instr("foobar", "bar")
|
|
4
|
|
select instr("foobar" AS p1, "bar");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'instr'
|
|
select instr("foobar" p1, "bar");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'instr'
|
|
select instr("foobar" AS "p1", "bar");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'instr'
|
|
select instr("foobar" "p1", "bar");
|
|
instr("foobar" "p1", "bar")
|
|
4
|
|
select instr(@foobar "p1", "bar");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'instr'
|
|
select instr("foobar", "bar" AS p2);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'instr'
|
|
select instr("foobar", "bar" p2);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'instr'
|
|
select instr("foobar", "bar" AS "p2");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'instr'
|
|
select instr("foobar", "bar" "p2");
|
|
instr("foobar", "bar" "p2")
|
|
0
|
|
select instr("foobar", @bar "p2");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'instr'
|
|
select instr("foobar" AS p1, "bar" AS p2);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'instr'
|
|
select conv(255, 10, 16);
|
|
conv(255, 10, 16)
|
|
FF
|
|
select conv(255 AS p1, 10, 16);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'conv'
|
|
select conv(255 p1, 10, 16);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'conv'
|
|
select conv(255 AS "p1", 10, 16);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'conv'
|
|
select conv(255 "p1", 10, 16);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'conv'
|
|
select conv(255, 10 AS p2, 16);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'conv'
|
|
select conv(255, 10 p2, 16);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'conv'
|
|
select conv(255, 10 AS "p2", 16);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'conv'
|
|
select conv(255, 10 "p2", 16);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'conv'
|
|
select conv(255, 10, 16 AS p3);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'conv'
|
|
select conv(255, 10, 16 p3);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'conv'
|
|
select conv(255, 10, 16 AS "p3");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'conv'
|
|
select conv(255, 10, 16 "p3");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'conv'
|
|
select conv(255 AS p1, 10 AS p2, 16 AS p3);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'conv'
|
|
select atan(10);
|
|
atan(10)
|
|
1.4711276743037347
|
|
select atan(10 AS p1);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'atan'
|
|
select atan(10 p1);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'atan'
|
|
select atan(10 AS "p1");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'atan'
|
|
select atan(10 "p1");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'atan'
|
|
select atan(10, 20);
|
|
atan(10, 20)
|
|
0.4636476090008061
|
|
select atan(10 AS p1, 20);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'atan'
|
|
select atan(10 p1, 20);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'atan'
|
|
select atan(10 AS "p1", 20);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'atan'
|
|
select atan(10 "p1", 20);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'atan'
|
|
select atan(10, 20 AS p2);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'atan'
|
|
select atan(10, 20 p2);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'atan'
|
|
select atan(10, 20 AS "p2");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'atan'
|
|
select atan(10, 20 "p2");
|
|
ERROR 42000: Incorrect parameters in the call to native function 'atan'
|
|
select atan(10 AS p1, 20 AS p2);
|
|
ERROR 42000: Incorrect parameters in the call to native function 'atan'
|
|
DROP TABLE IF EXISTS t1;
|
|
SELECT STR_TO_DATE('10:00 PM', '%h:%i %p') + INTERVAL 10 MINUTE;
|
|
STR_TO_DATE('10:00 PM', '%h:%i %p') + INTERVAL 10 MINUTE
|
|
NULL
|
|
Warnings:
|
|
Warning 1411 Incorrect datetime value: '10:00 PM' for function str_to_date
|
|
SELECT STR_TO_DATE('10:00 PM', '%h:%i %p') + INTERVAL (INTERVAL(1,2,3) + 1) MINUTE;
|
|
STR_TO_DATE('10:00 PM', '%h:%i %p') + INTERVAL (INTERVAL(1,2,3) + 1) MINUTE
|
|
NULL
|
|
Warnings:
|
|
Warning 1411 Incorrect datetime value: '10:00 PM' for function str_to_date
|
|
SELECT "1997-12-31 23:59:59" + INTERVAL 1 SECOND;
|
|
"1997-12-31 23:59:59" + INTERVAL 1 SECOND
|
|
1998-01-01 00:00:00
|
|
SELECT 1 + INTERVAL(1,0,1,2) + 1;
|
|
1 + INTERVAL(1,0,1,2) + 1
|
|
4
|
|
SELECT INTERVAL(1^1,0,1,2) + 1;
|
|
INTERVAL(1^1,0,1,2) + 1
|
|
2
|
|
SELECT INTERVAL(1,0+1,2,3) * 5.5;
|
|
INTERVAL(1,0+1,2,3) * 5.5
|
|
5.5
|
|
SELECT INTERVAL(3,3,1+3,4+4) / 0.5;
|
|
INTERVAL(3,3,1+3,4+4) / 0.5
|
|
2.0000
|
|
SELECT (INTERVAL(1,0,1,2) + 5) * 7 + INTERVAL(1,0,1,2) / 2;
|
|
(INTERVAL(1,0,1,2) + 5) * 7 + INTERVAL(1,0,1,2) / 2
|
|
50.0000
|
|
SELECT INTERVAL(1,0,1,2) + 1, 5 * INTERVAL(1,0,1,2);
|
|
INTERVAL(1,0,1,2) + 1 5 * INTERVAL(1,0,1,2)
|
|
3 10
|
|
SELECT INTERVAL(0,(1*5)/2) + INTERVAL(5,4,3);
|
|
INTERVAL(0,(1*5)/2) + INTERVAL(5,4,3)
|
|
2
|
|
SELECT 1^1 + INTERVAL 1+1 SECOND & 1 + INTERVAL 1+1 SECOND;
|
|
1^1 + INTERVAL 1+1 SECOND & 1 + INTERVAL 1+1 SECOND
|
|
NULL
|
|
SELECT 1%2 - INTERVAL 1^1 SECOND | 1%2 - INTERVAL 1^1 SECOND;
|
|
1%2 - INTERVAL 1^1 SECOND | 1%2 - INTERVAL 1^1 SECOND
|
|
NULL
|
|
CREATE TABLE t1 (a INT, b DATETIME);
|
|
INSERT INTO t1 VALUES (INTERVAL(3,2,1) + 1, "1997-12-31 23:59:59" + INTERVAL 1 SECOND);
|
|
SELECT * FROM t1 WHERE a = INTERVAL(3,2,1) + 1;
|
|
a b
|
|
3 1998-01-01 00:00:00
|
|
DROP TABLE t1;
|
|
DROP TABLE IF EXISTS t1,t2,t3;
|
|
CREATE TABLE t1 (a1 INT, a2 INT, a3 INT, a4 DATETIME);
|
|
CREATE TABLE t2 LIKE t1;
|
|
CREATE TABLE t3 LIKE t1;
|
|
SELECT t1.* FROM t1 AS t0, { OJ t2 INNER JOIN t1 ON (t1.a1=t2.a1) } WHERE t0.a3=2;
|
|
a1 a2 a3 a4
|
|
SELECT t1.*,t2.* FROM { OJ ((t1 INNER JOIN t2 ON (t1.a1=t2.a2)) LEFT OUTER JOIN t3 ON t3.a3=t2.a1)};
|
|
a1 a2 a3 a4 a1 a2 a3 a4
|
|
SELECT t1.*,t2.* FROM { OJ ((t1 LEFT OUTER JOIN t2 ON t1.a3=t2.a2) INNER JOIN t3 ON (t3.a1=t2.a2))};
|
|
a1 a2 a3 a4 a1 a2 a3 a4
|
|
SELECT t1.*,t2.* FROM { OJ (t1 LEFT OUTER JOIN t2 ON t1.a1=t2.a2) CROSS JOIN t3 ON (t3.a2=t2.a3)};
|
|
a1 a2 a3 a4 a1 a2 a3 a4
|
|
SELECT * FROM {oj t1 LEFT OUTER JOIN t2 ON t1.a1=t2.a3} WHERE t1.a2 > 10;
|
|
a1 a2 a3 a4 a1 a2 a3 a4
|
|
SELECT {fn CONCAT(a1,a2)} FROM t1;
|
|
{fn CONCAT(a1,a2)}
|
|
UPDATE t3 SET a4={d '1789-07-14'} WHERE a1=0;
|
|
SELECT a1, a4 FROM t2 WHERE a4 LIKE {fn UCASE('1789-07-14')};
|
|
a1 a4
|
|
DROP TABLE t1, t2, t3;
|
|
#
|
|
# End of 5.1 tests
|
|
#
|