SetOwner Method

SQL-DMO

SQL-DMO

SetOwner Method

The SetOwner method reassigns ownership for a Microsoft® SQL Server™ database.

Applies To
Database Object
Syntax

object.SetOwner( LoginName , [ TransferAliases ] , [ OverrideIfAlreadyUser ] )

Parts

object

Expression that evaluates to an object in the Applies To list.

LoginName

String that specifies an existing SQL Server login by name.

TransferAliases

Optional. TRUE or FALSE as described in Settings.

OverrideIfAlreadyUser

Optional. TRUE or FALSE as described in Settings.

Prototype (C/C++)

HRESULT SetOwner(
SQLDMO_LPCSTR NewValue,
BOOL bTransferAliases = FALSE,
BOOL bOverrideIfAlreadyUser = FALSE);

Settings

The TransferAliases argument is maintained for compatibility with earlier versions of SQL Server security relying on aliases to assign permissions. For database ownership permissions based on membership in the db_owner role, the argument can be ignored safely. Set TransferAliases using:

  • TRUE. Logins aliased to the login of the current database owner are realiased to reference the new owner.

  • FALSE (default). No change is made in alias logins.

Set OverrideIfAlreadyUser using:

  • TRUE. A user existing in the database and mapped to the login that will assume ownership is dropped prior to the change in ownership.

  • FALSE (default). No change in user definition is made. If the login that will assume ownership is mapped to an existing user, the method fails.
Remarks

Reassigning ownership of a SQL Server database using the SetOwner method requires appropriate permissions. The SQL Server login used for SQLServer object connection must be the current database owner or a member of the fixed role sysadmin.