MySQL SHOW WARNINGS

摘要:在本教程中,您将学习如何使用 MySQL SHOW WARNINGS显示有关错误、警告和注释的信息。

MySQL SHOW WARNINGS语句简介

执行语句时,如果出现错误、警告或注释,可以使用SHOW WARNINGS诊断语句显示详细信息。

以下是SHOW WARNINGS的基本语法:

SHOW WARNINGS;
Code language: SQL (Structured Query Language) (sql)

例如,以下查询由于表xyz不存在而返回错误:

SELECT * FROM xyz;
Code language: SQL (Structured Query Language) (sql)

要显示错误,请使用SHOW WARNINGS语句:

SHOW WARNINGS;
Code language: SQL (Structured Query Language) (sql)
MySQL 显示警告

如果要限制条件(错误、警告和注释)的数量,可以使用LIMIT子句:

SHOW WARNINGS [LIMIT [offset,] row_count]
Code language: SQL (Structured Query Language) (sql)

LIMIT子句与SELECT语句具有相同的含义。

要显示错误、警告和注释的总数,请使用以下形式的SHOW WARNINGS语句:

SHOW COUNT(*) WARNINGS;
Code language: SQL (Structured Query Language) (sql)

您还可以从@@warning_count系统变量获得相同的结果:

SELECT @@warning_count;
Code language: SQL (Structured Query Language) (sql)

请注意, SHOW WARNINGS是诊断语句,不会清除消息列表,而SELECT语句是非诊断语句,会清除所有消息列表。

MySQL SHOW WARNINGS示例

以下语句使用DATE_SUB()函数在日期中添加/减去间隔:

SELECT 
    DATE_SUB('2017-02-29', INTERVAL - 1 DAY),
    DATE_SUB('2017-12-32', INTERVAL + 2 DAY),
    DATE_SUB('2017-15-03', INTERVAL + 5 DAY);
Code language: SQL (Structured Query Language) (sql)

以下示例使用SHOW WARNINGS语句显示所有警告:

SHOW WARNINGS;
Code language: SQL (Structured Query Language) (sql)
MySQL 显示警告示例

此示例使用SHOW WARNING LIMIT显示前两个警告:

SHOW WARNINGS LIMIT 2;
Code language: SQL (Structured Query Language) (sql)
MySQL 显示警告限制示例

以下语句使用SHOW COUNT(*) WARNINGS显示警告总数:

SHOW COUNT(*) WARNINGS;
Code language: SQL (Structured Query Language) (sql)

MySQL max_error_count系统变量

MySQL 使用max_error_count系统变量来控制该服务器可以存储的警告、错误和注释的最大数量。

要查看max_error_count系统变量的值,请使用SHOW VARIABLES语句:

SHOW VARIABLES LIKE 'max_error_count';
Code language: SQL (Structured Query Language) (sql)
MySQL 显示警告 - max_error_count

要更改max_error_count变量的值,请使用SET语句。例如,此语句将max_error_count设置为2048

SET max_error_count=2048;
Code language: SQL (Structured Query Language) (sql)

max_error_count的值设置为零将禁用消息存储。但是, warning_count仍然显示发生了多少错误、警告和注释,但服务器不存储这些消息。

在本教程中,您学习了如何使用 MySQL SHOW WARNINGS显示有关错误、警告和注释的信息。

本教程有帮助吗?