sys.sp_changedbowner (Transact-SQL)

Gäller för:SQL Server

Byter ägare till den aktuella databasen.

Important

Den här funktionen tas bort i en framtida version av SQL Server. Undvik att använda den här funktionen i nytt utvecklingsarbete och planera att ändra program som för närvarande använder den här funktionen. Använd ALTER AUTHORIZATION i stället.

Transact-SQL syntaxkonventioner

Syntax

sys.sp_changedbowner
    [ @loginame = ] N'loginame'
    [ , [ @map = ] 'map' ]
[ ; ]

Arguments

[ @loginame = ] N'loginame'

Inloggnings-ID:t för den nya ägaren av den nuvarande databasen. @loginame är sysname, utan standard. @loginame måste redan vara en befintlig SQL Server inloggning eller Windows användare. @loginame kan inte bli ägare till den nuvarande databasen om den redan har tillgång till databasen via ett befintligt användarsäkerhetskonto i databasen. För att undvika detta scenario, placera användaren i den aktuella databasen först.

[ @map = ] 'karta'

Denna parameter är föråldrad och behålls för bakåtkompatibilitet mellan skript.

Returnera kodvärden

0 (lyckades) eller 1 (fel).

Remarks

Efter sp_changedbowner att den har körts kallas den nya ägaren användaren dbo i databasen. Användaren dbo har underförstådda behörigheter att utföra alla aktiviteter i databasen.

Ägaren till master, model, eller tempdb systemdatabaserna kan inte ändras.

För att visa en lista över de giltiga @loginame värdena, kör den lagrade sp_helplogins proceduren.

Att köra sp_changedbowner med endast parametern @loginame ändrar databasägarskapet till @loginame.

Du kan ändra ägaren till vilken säkerhet som helst genom att använda uttalandet ALTER AUTHORIZATION . Mer information finns i ALTER AUTHORIZATION.

Permissions

Kräver TAKE OWNERSHIP behörighet för databasen. Om den nya ägaren har en motsvarande användare i databasen krävs IMPERSONATE behörighet vid inloggning, annars kräver CONTROL SERVER behörighet på servern.

Examples

Följande exempel gör inloggningen Albert till ägare av den aktuella databasen.

EXECUTE sp_changedbowner 'Albert';