sp_addrole(Transact-SQL)

 

현재 데이터베이스에 새 데이터베이스 역할을 만듭니다.

System_CAPS_ICON_important.jpg 중요


sp_addrole 이전 버전과의 호환성을 위해 포함 되었습니다 MicrosoftSQL Server 이후 릴리스에서 지원 되지 않을 수 있습니다. 사용 하 여 역할 만들기 대신 합니다.

적용 대상: SQL Server (SQL Server 2008 ~ 현재 버전).

Topic link icon Transact-SQL 구문 표기 규칙

  
sp_addrole [ @rolename = ] 'role' [ , [ @ownername = ] 'owner' ]   

[ @rolename = ] 'role'
새 데이터베이스 역할의 이름입니다. 역할 되는 sysname, 기본값은 없습니다. 역할 유효한 식별자 (ID) 여야 하며 현재 데이터베이스에 이미 존재 하지 해야 합니다.

[ @ownername =] 'owner'
새 데이터베이스 역할의 소유자입니다. 소유자 되는 sysname, 현재 실행 중인 사용자의 기본값입니다. 소유자 데이터베이스 사용자 또는 현재 데이터베이스의 데이터베이스 역할 이어야 합니다.

0(성공) 또는 1(실패)

SQL Server 데이터베이스 역할의 이름에는 문자, 기호 및 숫자 등을 포함하여 1자에서 128자까지의 문자를 사용할 수 있습니다. 데이터베이스 역할의 이름에는: 백슬래시 문자 (\), null, 또는 빈 문자열 (').

데이터베이스 역할을 추가한 후 사용 하 여 sp_addrolemember (& a) #40; TRANSACT-SQL ) 역할에 보안 주체를 추가 합니다. GRANT, DENY 또는 REVOKE 문을 사용하여 데이터베이스 역할에 사용 권한을 부여하는 경우 데이터베이스 역할의 멤버는 사용 권한이 자신의 계정에 직접 적용되는 것처럼 사용 권한을 상속합니다.

System_CAPS_ICON_note.jpg 참고


새 서버 역할은 만들 수 없습니다. 역할은 데이터베이스 수준에서만 만들 수 있습니다.

sp_addrole 사용자 정의 트랜잭션 내에서 사용할 수 없습니다.

데이터베이스에 대한 CREATE ROLE 권한이 필요합니다. 스키마를 만드는 경우에는 데이터베이스에 대한 CREATE SCHEMA 권한이 필요합니다. 경우 소유자 사용자 또는 그룹으로 지정 되 면 해당 사용자 또는 그룹에 대 한 IMPERSONATE 권한이 필요 합니다. 경우 소유자 역할로 지정 되 면 해당 역할의 멤버 또는 해당 역할에 대 한 ALTER 권한이 필요 합니다. owner를 응용 프로그램 역할로 지정한 경우에는 해당 응용 프로그램 역할에 대한 ALTER 권한이 필요합니다.

다음 예에서는 현재 데이터베이스에 Managers라는 새 역할을 추가합니다.

EXEC sp_addrole 'Managers';  

시스템 저장 프로시저 및 #40입니다. TRANSACT-SQL )
보안 저장 프로시저 및 #40입니다. TRANSACT-SQL )
CREATE ROLE(Transact-SQL)

커뮤니티 추가 항목

추가
표시: