【发布时间】:2015-02-16 07:28:42
【问题描述】:
我是 MySQL 和 MariaDB 的新手。我过去在 Oracle 工作了很多年,最近在上周末尝试 MariaDB 之前尝试了 HSQLDB。事实证明,这是一次痛苦的经历。我没有提到缺少分层查询或 CTE 以及错误消息……毕竟,它是免费产品。
但我完全无法理解的一件事是,为什么当我将保留字写成大写时语句会失败,然后以小写写时运行。例如像DROP TABLE 这样愚蠢的东西可能会失败。我写“可能”是因为行为不一致。当我使用 SSH 和 CLI 从 Ubuntu 14.04 机器连接到服务器时,可能会发生这种情况。它可以从 MySQL Workbench 发生。但是当我从 OS X 机器通过 SSH 连接并使用 CLI 时,相同的命令可能会运行!下面的语句就是这种情况(从 Ubuntu 中查看大写的失败,从 OS X 中运行相同)。我搞不清楚了。有什么提示吗?
马克
MariaDB [ws]> select date_add('2014-01-01 00:00:00', interval 30 minute);
+-----------------------------------------------------+
| date_add('2014-01-01 00:00:00', interval 30 minute) |
+-----------------------------------------------------+
| 2014-01-01 00:30:00 |
+-----------------------------------------------------+
1 row in set (0.00 sec)
MariaDB [ws]> SELECT DATE_ADD('2014-01-01 00:00:00', INTERVAL 30 MINUTE);
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 'SELECT DATE_ADD('2014-01-01 00:00:00', INTERVAL 30 MINUTE)' at line 1
【问题讨论】: