オブジェクトに権限を一括付与
declare @sql varchar(1000), @Tblname varchar(60), @type varchar(3), @users varchar(100) select @sql = ''
select @users = '[dbuser1], [dbuser2]'
declare curTblname cursor for select type, name from sysobjects where type in ('U','V','P') order by type, name
open curTblname
fetch next from curTblname into @type, @Tblname
while (@@fetch_status = 0)
begin
if @type in ('U', 'V')
select @sql = 'GRANT SELECT,INSERT,DELETE,UPDATE ON [dbo].[' + @Tblname + '] TO ' + @users
else if @type = 'P'
select @sql = 'GRANT EXECUTE ON [dbo].[' + @Tblname + '] TO ' + @users
exec (@sql)
fetch next from curTblname into @type, @TblName
end
close curTblname
deallocate curTblname
DBを丸ごとバックアップ
declare @sql varchar(8000),@dbname varchar(100),@bakFilename varchar(1000),@pathName varchar(100) select @sql = ''
declare curdbname cursor for
select rtrim(name) from sysdatabases order by name
open curdbname fetch next from curdbname into @dbname
while (@@fetch_status = 0)
begin
select @bakFilename = '''' + 'C:\' + @dbname + '.bak' + ''''
select @sql = @sql + ' backup database [' + @dbname + '] to disk = ' + @bakFileName + ' with format' + char(13) + char(10)
fetch next from curdbname into @dbname
end
close curdbname
deallocate curdbname
execute(@sql)