SQL_MODE 的设置
2019-06-05 23:46
1441 查看
查看当前的 SQL_MODESELECT @@sql_modeSELECT @@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关键词进行的,其他参数值也可通过该关键词进行修改。可通过 SHOW VARIABLES查看到所有可用配置项。 设置系统变量时,可指定所设置的作用域,也可通过 @@前缀来获取变量,甚至也可以没有任何前缀,以下写法都是合法的: 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后加相应作用域的修饰词,像这样 SET GLOBAL sql_mode = 'NO_ENGINE_SUBSTITUTION'; 也可以通过 @@加上作用域进行变量访问的方式: SET @@GLOBAL.sql_mode = 'NO_ENGINE_SUBSTITUTION'; 两者是等效的。 作用域缺省情况下为 SESSION类型,即只对当前连接生效。 SET @@sql_mode = 'NO_ENGINE_SUBSTITUTION'; MySQL 中的配置文件下面表格来自官方文档 Table 4.2 Option Files Read on Unix and Unix-Like Systems 部分。 [table] [tr] | 文件 | 用途 |
---|---|---|
全局配置项 | ||
/etc/mysql/my.cnf | 全局配置项 | |
SYSCONFDIR/my.cnf | 全局配置项 | |
$MYSQL_HOME/my.cnf | 服务器相关配置项,有于服务端 | |
defaults-extra-file | 如果存在该文件的话,通过--defaults-extra-file参数启用程序时会读取该配置项 |
|
~/.my.cnf | 用户配置项 | |
~/.mylogin.cnf | 用户登录路径相关,用于客户端 | |
DATADIR/mysqld-auto.cnf | SET PERSIST或 SE PERSIST_ONLY设置的系统参数会保存到该文件 |
相交资源
[/td] [/tr] [/table]相关文章推荐
- MySQL 5.6中的sql_mode默认设置问题
- mysql的sql_mode合理设置
- mysql5.7 版本中 timestamp 不能为零日期 以及sql_mode合理设置
- 设置mysql workbench的sql_mode,ONLY_FULL_GROUP_BY不起作用
- mysql5.7 版本中 timestamp 不能为零日期 以及sql_mode合理设置
- MySQL不容忽视SQL_MODE的设置
- mysql8 设置sql_mode后不能启动
- mysql的sql_mode合理设置
- mysql 的sql_mode合理设置
- mysql SQL_MODE设置
- sql_mode及【my.cnf】设置
- MySQL sql_mode设置
- MySQL的sql_mode合理设置
- MySQL的sql_mode解析与设置
- MySQL 设置 sql_mode 报错, 需要增加 [mysqld]标记
- mysql的sql_mode合理设置
- mysql 字段类型为not null时,不设置该字段的值会报错,调整sql-mode
- 3. 设置 sql_mode
- mysql的sql_mode合理设置
- mysql 5.7 sql_mode设置 坑