首批通过分布式安全可靠测评,为关键业务系统打造
CHECK TABLE
更新时间:2026-07-15 20:42:47
描述
该语句用于检查数据库中的表和视图是否存在,或者检查视图引用对象是否有效。
CHECK TABLE 语句返回一个带有以下列的结果集:
Table:列出正在检查的表名。Op:始终为check,表示执行检查操作。Msg_type:表示消息类型,取值通常为status,表示消息类型为状态信息。取值如下:status:表示状态。error:表示错误。info:表示信息。note:表示注释。warning:表示警告。
Msg_text:提供有关检查结果的详细信息,通常应为OK,表示检查结果为正常,没有发现任何问题。
权限要求
执行 CHECK TABLE 语句需要当前用户至少拥有对应对象的 SELECT 权限。有关 OceanBase 数据库权限的详细介绍,请参见 MySQL 模式下的权限分类。
语法
CHECK TABLE table_name_list [check_option_list];
table_name_list:
table_name [, table_name ...]
check_option_list:
check_option [check_option ...]
check_option:
FOR UPGRADE
| QUICK
| FAST
| MEDIUM
| EXTENDED
| CHANGED
参数说明
| 参数项 | 描述 |
|---|---|
| table_name | 指定要检查的表名。可以同时指定多个表,用英文逗号(,)分隔。 |
| check_option_list | 可选项,用于指定进一步的检查选项。可以指定组合检查选项,即同时指定多个检查选项。
注意当前版本仅支持检查选项的语法,功能不生效。 |
示例
检查表 test_tbl1 是否存在。
obclient [test]> CHECK TABLE test_tbl1;
返回结果如下:
+----------------+-------+----------+----------+
| Table | Op | Msg_type | Msg_text |
+----------------+-------+----------+----------+
| test.test_tbl1 | check | status | OK |
+----------------+-------+----------+----------+
1 row in set