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 ...