所以,我知道我可以为所有表通配一个数据库。例如,如果我想为匹配数据库中的所有表授予用户select,我可以:
GRANT SELECT
ON 'databasesprefix%'.*
TO testuser@localhost IDENTIFIED BY 'testpasswd';
但是,如果我想在所有匹配的数据库上为用户授予UPDATE,DELETE,INSERT,但仅针对特定的表,则以下内容不起作用:
GRANT UPDATE, DELETE, INSERT
ON 'databasesprefix%'.specifictable
TO testuser@localhost IDENTIFIED BY 'testpasswd';
有没有办法在SQL中实现这一点?或者我必须在外部编写脚本吗?
答案 0 :(得分:1)
没有。 在MySQL中无法做到这一点。
http://dev.mysql.com/doc/refman/5.1/en/grant.html
priv_level:
*
| *.*
| db_name.*
| db_name.tbl_name
| tbl_name
| db_name.routine_name
rtm:)