日期:2014-05-19  浏览次数:20528 次

请问如何对大量表进行授权操作?
请问如何对大量表进行授权操作?这些表可以用select语句容易筛选的,几百个表。

主要是如何对大量对象(包括表,view等)进行授权?

GRANT   SELECT   ON   xxx   TO   [Assistant]
xxx不能是子查询,否则就容易了,select   name   from   sysobjects   where   name   like   '__yyy___ '
有什么办法吗?我这里xxx其实就是ww001-ww250之类,可是量很多,有几种类型。

------解决方案--------------------
declare tb cursor local
for
select name from sysobjects where name like '__yyy___ '
declare @name sysname
open tb
fetch tb into @name
while @@fetch_status = 0
begin
EXEC(N 'GRANT SELECT ON ' + @name + ' TO [Assistant] ') -- 括号不匹配而已
fetch tb into @name
end
close tb
deallocate tb