SQL Server 针对表的只读权限分配

TEST_SQL
--先创建测试库test_tmp

--根据现有的表创建两张表

SELECT TOP 100 * INTO test_tab1 FROM mistest_09428.dbo.squarer;

SELECT TOP 100 * INTO test_tab2 FROM mistest_09428.dbo.squarer;

--创建角色
EXEC sp_addrole 'test_role1' ;

--分配select的权限给角色test_role1
GRANT SELECT ON test_tab1 TO test_role1;
GRANT SELECT ON test_tab2 TO test_role1;

--add登陆dap570,密码dap570,默认库为test_tmp
EXEC sp_addlogin 'dap570','dap570','test_tmp';

--给dap570添加帐户test
EXEC sp_grantdbaccess 'dap570','test'

--将角色test_role1分配给text
EXEC sp_addrolemember 'test_role1','test';
--over



--换dap570来登录数据库test_tmp

--然后测试

/*
DELETE FROM  test_tab1

INSERT INTO test_tab1(ingotno) VALUES('2222')

UPDATE test_tab1 SET ingotno = '3333'
*/


作者:Daaprk
可以转载,但必须以超链接形式标明文章原始出处和作者信息.
原文地址:https://www.cnblogs.com/dap570/p/1713611.html