Mas*_*low 8 sql-server unit-testing
我正在尝试为数据库层编写单元测试,以验证连接字符串的用户是否具有更新/插入/读取权限.插入/回滚会在标识列或启动触发器中创建额外的间隙.对于读取权限,对表进行选择会在sql数据库上创建加载/工作,并在统计信息中最后一次搜索表时进行更新.如何以编程方式向sql server询问当前用户对对象/表/视图/存储过程/等的权限.
我想它在某个地方的系统表中.
Rem*_*anu 14
您可以使用HAS_PERMS_BY_NAME单独申请每个权限:
SELECT HAS_PERMS_BY_NAME('<table>', 'OBJECT', 'SELECT');
SELECT HAS_PERMS_BY_NAME('<table>', 'OBJECT', 'UPDATE');
...
Run Code Online (Sandbox Code Playgroud)
或者您可以使用fn_my_permissions请求所有权限:
SELECT * FROM sys.fn_my_permissions('<table>', 'object');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3211 次 |
| 最近记录: |