您提供的命令对于全局设置多个 SQL 模式不正确。正确的语法是:
SET GLOBAL sql_mode='NO_BACKSLASH_ESCAPES,STRICT_TRANS_TABLE,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
会话模式:仅影响当前连接并重置连接终止。优点包括:
全局模式: 影响所有与数据库的连接。优点包括:
首选模式取决于具体要求和使用模式。如果所有用户都需要相同的 SQL 模式,建议设置全局模式。否则,会话模式可以提供灵活性。
请注意,使用 SET GLOBAL 设置 SQL 模式在 MySQL 重新启动后将不会保留。要使更改永久生效,您应该按如下方式更新 MySQL 配置文件(例如 my.cnf):
[mysqld] sql_mode = 'NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES'
对于 MySQL 版本 5.7.8 及更高版本,请使用以下语法:
[mysqld] sql-mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION"
请务必查阅适用于您的特定版本的 MySQL 文档,了解可用的 SQL 模式选项。
以上是如何在 MySQL 中设置和保留全局 SQL 模式?的详细内容。更多信息请关注PHP中文网其他相关文章!