我创建了一个products
从名为john
. 我希望被调用的用户doe
有权查看该表,而另一个被调用lorem
的用户能够在该表中删除、插入、选择和更新。我怎样才能做到这一点?我需要设置哪些角色和权限?
PD:有人告诉我,我必须这样做:
CREATE VIEW view_products
as
SELECT * FROM products;
这是正确的吗?
您可以使用 GRANT 语句:
grant select, insert, update, delete on products to lorem;
grant select on products to doe;
如果您计划允许多个不同的用户访问,那么您可能需要创建一个角色,将用户分配给特定角色,然后授予对角色而不是单个用户的访问权限。这样,如果您将来添加更多用户,您只需为他们分配适当的角色,而不会再次弄乱表权限。更容易管理。
要使用视图:
CREATE VIEW view_products
as
SELECT * FROM products;
grant select, insert, update, delete on view_products to lorem;
grant select on view_products to doe;