Dar*_*lic 0 sql-server permissions
如何在所有以 开头的表上授予选择权VVC_
?
grant select on VVC_* to user1
Run Code Online (Sandbox Code Playgroud)
没有用于授予对匹配模式的表的权限的内置方法。您需要将其授予各个表。
不过,通过查询sys.tables
名称来生成所需的脚本会很容易like 'VVC[_]%'
。
您可以创建 VVC 架构,而不是使用 VVC 前缀。然后,您可以授予对架构的选择权限。这也将迎合将来添加到同一架构中的表。
假设它们都在dbo
架构中:
DECLARE @sql nvarchar(max) = N'';
SELECT @sql += N'GRANT SELECT ON dbo.' + QUOTENAME(t.name)
+ N' TO [User1];'
FROM sys.tables AS t
WHERE t.name LIKE N'VVC[_]%'
AND t.[schema_id] = 1;
EXEC sys.sp_executesql @sql;
Run Code Online (Sandbox Code Playgroud)
但是 Martin 是对的,使用模式比使用字符串前缀要好得多。
归档时间: |
|
查看次数: |
401 次 |
最近记录: |