创建数据库时的SQL_MODE和TIME_ZONE

时间:2018-09-06 17:07:26

标签: mysql sql database timezone sql-mode

这些选项是什么意思,创建数据库时可能有哪些选择?

(a, s)

2 个答案:

答案 0 :(得分:0)

SET集是MySQL变量之一。其中有些是系统变量,有些是用户变量...

设置SQL_MODE:

SQL_MODE是系统变量,您可以在文档中看到所有可能的模式。

NO_AUTO_VALUE_ON_ZERO

  

NO_AUTO_VALUE_ON_ZERO影响AUTO_INCREMENT列的处理。通常,通过将NULL或0插入到列中来为该列生成下一个序列号。 NO_AUTO_VALUE_ON_ZERO将此行为抑制为0,以便只有NULL才能生成下一个序列号。

设置时区:

SET time_zone = "+00:00" UTC上设置会话时区。

了解更多:How do I set the time zone of MySQL?

答案 1 :(得分:0)

SET statementused here

  

为影响服务器或客户端操作的变量分配值

该语句和变量都不是特定于数据库创建的。实际上,我认为它们不应产生任何明显的效果:

  • 您不能基于每个数据库(仅每个服务器或每个会话)配置AUTO_INCREMENT处理。
  • 数据库没有时区(服务器或当前会话没有)。

尽管生成SQL转储的工具会设置一些变量来配置会话并获得可预测的环境来运行命令,但这是很常见的。这样的变量往往来自模板,而不是针对脚本内容定制的。