COLUMN_PRIVILEGES 表提供了有关列权限的信息。它从 mysql.columns_priv 系统表中获取其值。
COLUMN_PRIVILEGES 表包含以下列:
GRANTEE被授予权限的帐户的名称,格式为
'。user_name'@'host_name''TABLE_CATALOG包含该列的表所属目录的名称。此值始终为
def。TABLE_SCHEMA包含该列的表所属模式(数据库)的名称。
TABLE_NAME包含该列的表的名称。
COLUMN_NAME列的名称。
PRIVILEGE_TYPE授予的权限。该值可以是在列级别授予的任何权限;请参阅 第 15.7.1.6 节 “GRANT 语句”。每行列出一个权限,因此被授权者拥有的每个列权限都有一行。
在
SHOW FULL COLUMNS的输出中,权限都在一列中,并且使用小写字母,例如,select,insert,update,references。在COLUMN_PRIVILEGES中,每行有一个权限,使用大写字母。IS_GRANTABLE如果用户具有
GRANT OPTION权限,则为YES,否则为NO。输出中不会将GRANT OPTION列为单独一行,其中PRIVILEGE_TYPE='GRANT OPTION'。
注意
COLUMN_PRIVILEGES是一个非标准的INFORMATION_SCHEMA表。
以下语句不等效:
SELECT ... FROM INFORMATION_SCHEMA.COLUMN_PRIVILEGES
SHOW GRANTS ...