我试图找出如何检查SQL Server中是否存在数据库角色.我想做这样的事情:
if not exists (select 1 from sometable where rolename='role')
begin
CREATE ROLE role
AUTHORIZATION MyUser;
end
Run Code Online (Sandbox Code Playgroud)
我应该在这里使用什么表/ proc?
gbn*_*gbn 71
SELECT DATABASE_PRINCIPAL_ID('role')
--or
IF DATABASE_PRINCIPAL_ID('role') IS NULL
Run Code Online (Sandbox Code Playgroud)
USER_ID已弃用,可能会中断.CREATE ROLE表示SQL 2005+所以没关系
G M*_*ros 25
if not exists (select 1 from sys.database_principals where name='role' and Type = 'R')
begin
CREATE ROLE role
AUTHORIZATION MyUser;
end
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
38608 次 |
最近记录: |