sp_changedbowner (Transact-SQL)
S’applique à : SQL Server
Modifie le propriétaire de la base de données active.
Important
Cette fonctionnalité sera supprimée dans une version future de SQL Server. Évitez d'utiliser cette fonctionnalité dans de nouveaux travaux de développement, et prévoyez de modifier les applications qui utilisent actuellement cette fonctionnalité. Utilisez à la place ALTER AUTHORIZATION .
Conventions de la syntaxe Transact-SQL
Syntaxe
sp_changedbowner
[ @loginame = ] N'loginame'
[ , [ @map = ] 'map' ]
[ ; ]
Arguments
[ @loginame = ] N’loginame'
ID de connexion du nouveau propriétaire de la base de données active. @loginame est sysname, sans valeur par défaut. @loginame doit être une connexion SQL Server ou un utilisateur Windows existant. @loginame ne peut pas devenir le propriétaire de la base de données active s’il a déjà accès à la base de données via un compte de sécurité utilisateur existant au sein de la base de données. Pour éviter ce scénario, supprimez d’abord l’utilisateur dans la base de données active.
[ @map = ] 'map'
Ce paramètre est déconseillé et est maintenu pour la compatibilité descendante des scripts.
Valeurs des codes de retour
0
(réussite) or 1
(échec).
Notes
Une fois sp_changedbowner
exécuté, le nouveau propriétaire est appelé dbo
utilisateur à l’intérieur de la base de données. L’utilisateur dbo
dispose d’autorisations implicites pour effectuer toutes les activités dans la base de données.
Le propriétaire des bases de master
données système ou , model
ou tempdb
le propriétaire ne peut pas être modifié.
Pour afficher la liste des valeurs de @loginame valides, exécutez la sp_helplogins
procédure stockée.
L’exécution sp_changedbowner
avec uniquement le paramètre @loginame modifie la propriété de la base de données en @loginame.
Vous pouvez modifier le propriétaire de n’importe quel élément sécurisable à l’aide de l’instruction ALTER AUTHORIZATION
. Pour plus d’informations, consultez ALTER AUTHORIZATION.
autorisations
Requiert l'autorisation TAKE OWNERSHIP
sur la base de données. Si le nouveau propriétaire dispose d’un utilisateur correspondant dans la base de données, nécessite IMPERSONATE
une autorisation sur la connexion ; sinon, elle nécessite CONTROL SERVER
une autorisation sur le serveur.
Exemples
Dans l'exemple suivant le nom de connexion Albert
devient propriétaire de la base de données active.
EXEC sp_changedbowner 'Albert';