- UID
- 9406448
- 阅读权限
- 100
- 帖子
- 3099
- 精华贴数
- 2
- 技术排名
- 307
- 技术积分
- 6596
- 社区排名
- 4546
- 社区积分
- 128
- 注册时间
- 2007-3-29
- 精华贴数
- 2
- 技术积分
- 6596
- 社区积分
- 128
- 注册时间
- 2007-3-29
- 论坛徽章:
- 36
|
发表于 2007-5-25 23:47:06
|显示全部楼层
Create procedure Pro_Grant
@TableName nvarchar(20)
as
BEGIN
declare @roworder int
declare @name varchar(50)
declare @str varchar(500)
declare @cnt int
select identity(int,1,1) roworder ,name into #tmp from sysobjects where name like @TableName+'%' and xtype = 'u'
select @cnt = count(*) from #tmp
set @roworder = 1
while @roworder < = @cnt
begin
select @name = name from #tmp where roworder = @roworder
set @str = 'grant select ,insert ,update ,delete on '+@name+ 'to xxb_thb'
exec(@str)
set @roworder = @roworder + 1
end
drop table #tmp
END
再执行下就是了: EXEC Pro_Grant 'xx' |
|