我试图授予新创建的用户创建表的能力。
我本以为会
GRANT CREATE TABLE ON databaseName.* TO userName_3;但是,在试图执行此SQL语句时,我会收到一个语法错误。
有人能告诉我为什么它不起作用吗?谢谢
发布于 2017-05-18 06:56:54
读这个Server大权限
GRANT CREATE ON SCHEMA :: databaseName TO userName_3;对于MySQL
GRANT CREATE ON databaseName.* TO userName_3;不能在查询中使用TABLE
表特权表特权适用于给定表中的所有列。若要分配表级特权,请在db_name.tbl_name语法上使用: 将mydb.mytbl上的所有内容都授予'someuser'@'somehost';授予SELECT,将mydb.mytbl上插入到'someuser'@'somehost';如果指定tbl_name而不是db_name.tbl_name,则该语句将应用于默认数据库中的tbl_name。如果没有默认数据库,则会发生错误。 表级别上允许的priv_type值为ALTER、CREATE、CREATE、DELETE、DROP、GRANT选项、INDEX、INSERT、REFERENCES、SELECT、SHOW、触发器和UPDATE。 表级特权适用于基表和视图.它们不适用于使用CREATE临时表创建的表,即使表名匹配。有关临时表特权的信息,请参阅第13.1.18.3节“创建临时表语法”。 MySQL将表特权存储在mysql.tables_priv表中。
https://stackoverflow.com/questions/44040457
复制相似问题