我想授予SQL数据库中特定表的选择权限。我知道如何授予数据库中所有表的选择权限:
GRANT SELECT ON `web01\_database\_home`.* TO `user-1_ert`@`%` ;
数据库web01\_database\_home
有一个名为test_table_1
的表,所以我尝试用该表名替换*
:
GRANT SELECT ON `web01\_database\_home`.test_table_1 TO `user-1_ert`@`%` ;
GRANT SELECT ON `web01\_database\_home.test_table_1` TO `user-1_ert`@`%` ;
这两个都不管用我怎么能这么做
2条答案
按热度按时间ddhy6vgd1#
啊,我看到上面写着MariaDB -我刚刚查了一下,发现有一本手册(GRANT部分:https://mariadb.com/kb/en/grant/#grant-option),其中包含以下行,关于为表的特定列授予权限:
奇怪的是,它似乎没有指定如何对一个完整的表执行此操作,但也许用 * 替换(name,permission)就可以了。
随便说说而已祝你好运
zengzsys2#
我相信如果你加上OBJECT::它可能对你有用:
来源:https://learn.microsoft.com/en-us/sql/t-sql/statements/grant-object-permissions-transact-sql?view=sql-server-ver16