sysmail_update_principalprofile_sp (Transact-SQL)
Gilt für: SQL Server
Aktualisiert die Informationen über eine Zuordnung zwischen einem Prinzipal und einem Profil.
Transact-SQL-Syntaxkonventionen
Syntax
sysmail_update_principalprofile_sp { @principal_id = principal_id | @principal_name = 'principal_name' } ,
{ [ @profile_id = ] profile_id | [ @profile_name = ] 'profile_name' } ,
[ @is_default = ] 'is_default'
[ ; ]
Argumente
[ @principal_id = ] principal_id
Die ID des Datenbankbenutzers oder der Datenbankrolle, msdb
damit sich die Zuordnung ändern kann. principal_id ist int mit einem Standardwert von NULL
. Entweder @principal_id oder @principal_name müssen angegeben werden.
[ @principal_name = ] 'principal_name'
Der Name des Datenbankbenutzers oder der Datenbankrolle in der msdb
Datenbank, damit die Zuordnung aktualisiert werden soll. principal_name ist "sysname" mit der Standardeinstellung "NULL
. Entweder @principal_id oder @principal_name müssen angegeben werden.
[ @profile_id = ] profile_id
Die ID des Zu ändernden Profils für die Zuordnung. @profile_id ist int, mit einem Standardwert von NULL
. Entweder @profile_id oder @profile_name müssen angegeben werden.
[ @profile_name = ] 'profile_name'
Der Name des Profils für die Zuordnung, die geändert werden soll. @profile_name ist "sysname" mit der Standardeinstellung "NULL
. Entweder @profile_id oder @profile_name müssen angegeben werden.
[ @is_default = ] is_default
Gibt an, ob dieses Profil das Standardprofil für den Datenbankbenutzer ist. Ein Datenbankbenutzer verfügt möglicherweise nur über ein Standardprofil. @is_default ist bit, ohne Standard.
Rückgabecodewerte
0
(erfolgreich) oder 1
Fehler.
Resultset
Keine.
Hinweise
Mit dieser gespeicherten Prozedur wird festgelegt, ob das angegebene Profil das Standardprofil für den Datenbankbenutzer ist. Ein Datenbankbenutzer verfügt möglicherweise nur über ein privates Standardprofil.
Wenn der Prinzipalname für die Zuordnung öffentlich ist oder die Prinzipal-ID für die Zuordnung lautet0
, ändert diese gespeicherte Prozedur das öffentliche Profil. Es kann nur ein öffentliches Standardprofil vorhanden sein.
Wenn @is_default ist und der Prinzipal mehreren Profilen zugeordnet ist 1
, wird das angegebene Profil zum Standardprofil für den Prinzipal. Das zuvor als Standardprofil verwendete Profil ist dem Prinzipal weiter zugeordnet, es ist jedoch nicht mehr als Standardprofil festgelegt.
Die gespeicherte Prozedur sysmail_update_principalprofile_sp
befindet sich in der msdb
Datenbank und befindet sich im Besitz des dbo-Schemas . Die Prozedur muss mit einem dreiteiligen Namen ausgeführt werden, wenn die aktuelle Datenbank nicht msdb
vorhanden ist.
Berechtigungen
Diese gespeicherte Prozedur gehört der db_owner Rolle. Sie können berechtigungen für jeden Benutzer erteilen EXECUTE
, diese Berechtigungen können jedoch während eines SQL Server-Upgrades außer Kraft gesetzt werden.
Beispiele
A. Festlegen eines Profils als öffentliches Standardprofil für eine Datenbank
Im folgenden Beispiel wird festgelegt, dass das Profil General Use Profile
das standard öffentliche Profil für Benutzer in der msdb
Datenbank ist.
EXEC msdb.dbo.sysmail_update_principalprofile_sp
@principal_name = 'public',
@profile_name = 'General Use Profile',
@is_default = '1';
B. Festlegen eines Profils als standard privates Profil für einen Benutzer
Im folgenden Beispiel wird festgelegt, dass das Profil AdventureWorks Administrator
das Standardprofil für den Prinzipal ApplicationUser
in der msdb
Datenbank ist. Das Profil muss dem Prinzipal bereits zugeordnet sein. Das zuvor als Standardprofil verwendete Profil ist dem Prinzipal weiter zugeordnet, es ist jedoch nicht mehr als Standardprofil festgelegt.
EXEC msdb.dbo.sysmail_update_principalprofile_sp
@principal_name = 'ApplicationUser',
@profile_name = 'AdventureWorks Administrator',
@is_default = '1' ;