如何还原SQL_MODE ='ALLOW_INVALID_DATES'?

时间:2019-07-11 07:38:12

标签: mysql sql

我已使用此SQL设置了SQL_MODE。
SQL是 SET SQL_MODE ='ALLOW_INVALID_DATES';

现在我们要还原它。
请建议我该怎么做。

2 个答案:

答案 0 :(得分:3)

使用以下SQL:

SET SESSION sql_mode="ONLY_FULL_GROUP_BY,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION";

------------------您的SQL --------------

SET SESSION sql_mode="ONLY_FULL_GROUP_BY,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION";

我希望此SQL对您有益。

答案 1 :(得分:0)

首先运行它;

SHOW VARIABLES LIKE '%sql_mode%'; 

SHOW GLOBAL VARIABLES LIKE '%sql_mode%'; 

然后您将得到如下结果:

enter image description here

复制Value并删除ALLOW_INVALID_DATES。请注意,“变量”和“全局变量”之间的某些变量设置可能有所不同,因此请确保(如果有区别)分别复制两者。然后运行以下命令:

SET sql_mode='';

SET GLOBAL sql_mode='';

要不使用ALLOW_INVALID_DATES变量,请这样做:

SET sql_mode='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION';

SET GLOBAL sql_mode='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION';

请注意,以上仅为示例。在执行此操作之前,请确保获取原始变量。 完成后,您应该刷新或重新启动数据库。