首页 > Linux操作系统 > Linux操作系统 > SQL Server权限问题
查询权限用户 : exec sp_helprotect @username = 'test'
sysobjects 表中各字段的意义 。
1 赋予jrzsfc_mx对所有表select,insert,update,delete权限
DECLARE ACUR CURSOR FOR
SELECT name FROM SYSOBJECTS WHERE TYPE='U'
DECLARE @NAME VARCHAR(100)
DECLARE @SQL VARCHAR(512)
OPEN ACUR
FETCH NEXT FROM ACUR INTO @NAME
WHILE @@fetch_status=0
BEGIN
EXEC ('grant select,insert,delete,update ON ['+ @NAME+'] TO jrzsfc_mx;')
FETCH NEXT FROM ACUR INTO @NAME
END
CLOSE ACUR
DEALLOCATE ACUR
2 赋予jrzsfc_mx对所有procedure execute权限,剔除系统存储过程
DECLARE ACUR CURSOR FOR
SELECT name FROM SYSOBJECTS WHERE TYPE='P' and name not like 'dt%'
DECLARE @NAME VARCHAR(100)
DECLARE @SQL VARCHAR(512)
OPEN ACUR
FETCH NEXT FROM ACUR INTO @NAME
WHILE @@fetch_status=0
BEGIN
EXEC ('grant execute ON ['+ @NAME+'] TO jrzsfc_mx;')
FETCH NEXT FROM ACUR INTO @NAME
END
CLOSE ACUR
DEALLOCATE ACUR
3 赋予jrzsfc_mx对所有函数execute权限
DECLARE ACUR CURSOR FOR
SELECT name FROM SYSOBJECTS WHERE TYPE='FN'
DECLARE @NAME VARCHAR(100)
DECLARE @SQL VARCHAR(512)
OPEN ACUR
FETCH NEXT FROM ACUR INTO @NAME
WHILE @@fetch_status=0
BEGIN
EXEC ('grant execute ON ['+ @NAME+' ] TO jrzsfc_mx;')
FETCH NEXT FROM ACUR INTO @NAME
END
CLOSE ACUR
DEALLOCATE ACUR
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/35489/viewspace-608847/ ,如需转载,请注明出处,否则将追究法律责任。