查看当前的 SQL_MODESELECT @@sql_mode SELECT @@sql_mode 的执行结果mysql> SELECT @@sql_mode;
+-----------------------------------------------------------------------------------------------------------------------+
| @@sql_mode |
+-----------------------------------------------------------------------------------------------------------------------+
| ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION |
+-----------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec) 设置 SQL_MODE设置 SQL_MODE 是通过 设置系统变量时,可指定所设置的作用域,也可通过 SET SESSION sql_mode = 'TRADITIONAL';
SET LOCAL sql_mode = 'TRADITIONAL';
SET @@SESSION.sql_mode = 'TRADITIONAL';
SET @@LOCAL.sql_mode = 'TRADITIONAL';
SET @@sql_mode = 'TRADITIONAL';
SET sql_mode = 'TRADITIONAL'; 可用的 SQL 模式可在官方文档中查询到 5.1.10 Server SQL Modes。 系统变量的作用域
系统的这些配置项有其作用项,是分开进行管理的。 其中,
两者皆为运行时变量,可随时修改。
所以,设置时可通过在 SET GLOBAL sql_mode = 'NO_ENGINE_SUBSTITUTION'; 也可以通过 SET @@GLOBAL.sql_mode = 'NO_ENGINE_SUBSTITUTION'; 两者是等效的。 作用域缺省情况下为 SET @@sql_mode = 'NO_ENGINE_SUBSTITUTION'; MySQL 中的配置文件下面表格来自官方文档 Table 4.2 Option Files Read on Unix and Unix-Like Systems 部分。
相交资源 |