sp_grantdbaccess(Transact-SQL)
현재 데이터베이스에 데이터베이스 사용자를 추가합니다.
중요 |
---|
Microsoft SQL Server의 이후 버전에서는 이 기능이 제거됩니다. 새 개발 작업에서는 이 기능을 사용하지 않도록 하고, 현재 이 기능을 사용하는 응용 프로그램은 수정하십시오. 대신 CREATE USER를 사용합니다. |
구문
sp_grantdbaccess [ @loginame = ] 'login'
[ , [ @name_in_db = ] 'name_in_db' [ OUTPUT ] ]
인수
[ @loginame = ] **'**login '
새 데이터베이스 사용자에 매핑할 Windows 그룹, Windows 로그인 또는 SQL Server 로그인의 이름입니다. Windows 그룹과 Windows 로그인의 이름은 Domain\login 형식의 Windows 도메인 이름(예: LONDON\Joeb)으로 정규화해야 합니다. 로그인은 데이터베이스의 사용자에 미리 매핑될 수 없습니다. login은 sysname이며 기본값은 없습니다.[ @name_in_db=] 'name_in_db' [ OUTPUT]
새 데이터베이스 사용자의 이름입니다. name_in_db는 sysname 데이터 형식의 OUTPUT 변수이며 기본값은 NULL입니다. 지정되지 않은 경우 login이 사용됩니다. 값이 NULL인 OUTPUT 변수로 지정된 경우에는 @name_in_db가 login으로 설정됩니다. name_in_db가 현재 데이터베이스에 없어야 합니다.
반환 코드 값
0(성공) 또는 1(실패)
주의
sp_grantdbaccess는 추가 옵션을 지원하는 CREATE USER를 호출합니다. 데이터베이스 사용자를 만드는 방법은 CREATE USER(Transact-SQL)를 참조하십시오. 데이터베이스에서 데이터베이스 사용자를 제거하려면 DROP USER를 사용합니다.
사용자 정의 트랜잭션 내에서는 sp_grantdbaccess를 실행할 수 없습니다.
사용 권한
db_owner 고정 데이터베이스 역할 또는 db_accessadmin 고정 데이터베이스 역할의 멤버여야 합니다.
예
다음 예에서는 CREATE USER를 사용하여 현재 데이터베이스에 Windows 로그인 Edmonds\LolanSo에 대한 데이터베이스 사용자를 추가합니다. 새 사용자의 이름은 Lolan입니다. 데이터베이스 사용자를 만드는 경우 기본적으로 이 방법이 사용됩니다.
CREATE USER Lolan FOR LOGIN [Edmonds\LolanSo];
GO