Details
-
Bug
-
Status: Open (View Workflow)
-
Major
-
Resolution: Unresolved
-
N/A
-
None
Description
Good morning,
Sorry for not creating a more substantial issue, but I hope this will be sufficient.
In relationship to the following issue, we were working on updating the list of reserved words but it seems as though the website documentation specifically regarding the oracle mode keywords is incorrect, incomplete, or at the very least confusing.
https://github.com/sqlalchemy/sqlalchemy/issues/7167#issuecomment-952266131
I have replicated the behavior zzzeek shows in his comment. Per https://mariadb.com/kb/en/reserved-words/ The word system is not a reserved word in ORACLE MODE as the documentation uses "<= 10.3.6" meaning only versions that are less than 10.3.6 have this word as reserved.
As a result, the following should not trigger an error, but does.
|
❯ mariadb
|
Welcome to the MariaDB monitor. Commands end with ; or \g.
|
Your MariaDB connection id is 5
|
Server version: 10.6.4-MariaDB Homebrew
|
|
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
|
|
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
|
|
MariaDB [(none)]> USE test;
|
Database changed
|
MariaDB [test]> CREATE TABLE foo (id integer);
|
Query OK, 0 rows affected (0.111 sec)
|
|
MariaDB [test]> ALTER TABLE foo ADD system VARCHAR(64);
|
ERROR 1064 (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 'VARCHAR(64)' at line 1
|
MariaDB [test]> SELECT @@SQL_MODE, @@GLOBAL.SQL_MODE;
|
+-------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------+
|
| @@SQL_MODE | @@GLOBAL.SQL_MODE |
|
+-------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------+
|
| STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION | STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
|
+-------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------+
|
1 row in set (0.001 sec)
|
|
MariaDB [test]>
|
Details:
- Operating System: macOS Monterey Version 12.0.1
- Hardware: MacBook Pro (Retina, 13-inch, Early 2015)
- MariaDB Version 10.6.4
- @@log_error:
|
211027 09:06:55 mysqld_safe Starting mariadbd daemon with databases from /usr/local/var/mysql
|
2021-10-27 9:06:56 0 [Note] /usr/local/opt/mariadb/bin/mariadbd (server 10.6.4-MariaDB) starting as process 97622 ...
|
2021-10-27 9:06:56 0 [Warning] Setting lower_case_table_names=2 because file system for /usr/local/var/mysql/ is case insensitive
|
2021-10-27 9:06:56 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
|
2021-10-27 9:06:56 0 [Note] InnoDB: Number of pools: 1
|
2021-10-27 9:06:56 0 [Note] InnoDB: Using crc32 + pclmulqdq instructions
|
2021-10-27 9:06:56 0 [Note] InnoDB: Initializing buffer pool, total size = 134217728, chunk size = 134217728
|
2021-10-27 9:06:56 0 [Note] InnoDB: Completed initialization of buffer pool
|
2021-10-27 9:06:56 0 [Note] InnoDB: 128 rollback segments are active.
|
2021-10-27 9:06:56 0 [Note] InnoDB: Creating shared tablespace for temporary tables
|
2021-10-27 9:06:56 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
|
2021-10-27 9:06:56 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
|
2021-10-27 9:06:56 0 [Note] InnoDB: 10.6.4 started; log sequence number 42161; transaction id 14
|
2021-10-27 9:06:56 0 [Note] Plugin 'FEEDBACK' is disabled.
|
2021-10-27 9:06:56 0 [Note] InnoDB: Loading buffer pool(s) from /usr/local/var/mysql/ib_buffer_pool
|
2021-10-27 9:06:56 0 [Note] InnoDB: Buffer pool(s) load completed at 211027 9:06:56
|
2021-10-27 9:06:56 0 [Note] Server socket created on IP: '::'.
|
2021-10-27 9:06:56 0 [Note] Server socket created on IP: '0.0.0.0'.
|
2021-10-27 9:06:56 0 [Note] /usr/local/opt/mariadb/bin/mariadbd: ready for connections.
|
Version: '10.6.4-MariaDB' socket: '/tmp/mysql.sock' port: 3306 Homebrew
|
- Defaults:
❯ mysqld --print-defaults
|
mysqld would have been started with the following arguments:
|
|
|
As such, I believe that https://mariadb.com/kb/en/reserved-words/ is incorrect.