8.4 MySQL Schema 标准规则

以下是 MySQL Schema 标准合规性规则:

服务器强制数据完整性检查已禁用

描述SQL 模式定义了 MySQL 应该支持什么样的 SQL 语法以及它应该执行什么样的数据验证检查。如果没有启用 SQL 模式,这意味着没有任何形式的服务器强制数据完整性,这意味着无效的传入数据不会被服务器拒绝,而是会更改为符合目标列的默认数据类型。请注意,任何客户端都可以随时更改自己的会话 SQL 模式值。

严重性轻微警告

建议确保 sql_mode 变量包含以下之一以获得最高级别的数据完整性:TRADITIONAL、STRICT_TRANS_TABLES 或 STRICT_ALL_TABLES。在 my.cnf/my.ini 文件中将 sql_mode 设置为所需的值后,重新启动 MySQL 服务器。

服务器强制的数据完整性检查不严格

描述SQL 模式定义了 MySQL 应该支持什么样的 SQL 语法以及它应该执行什么样的数据验证检查。有许多可能的选项可以相互结合使用,以指定 MySQL 服务器将执行的不同程度的语法和数据验证检查。但是,为了确保数据完整性的最高可信度,列表中至少应包含以下一项:TRADITIONAL、STRICT_TRANS_TABLES 或 STRICT_ALL_TABLES。请注意,任何客户端都可以随时更改自己的会话 SQL 模式值。

严重性轻微警告

建议确保 sql_mode 变量包含以下之一以获得最高级别的数据完整性:TRADITIONAL、STRICT_TRANS_TABLES 或 STRICT_ALL_TABLES。它当前设置为“%sql_mode%”。在 my.cnf/my.ini 文件中将 sql_mode 设置为所需的值后,重新启动 MySQL 服务器。