Share via


sysmail_delete_principalprofile_sp (Transact-SQL)

Gilt für:SQL Server

Entfernt für einen Datenbankbenutzer oder eine Rolle die Berechtigung zum Verwenden eines öffentlichen oder privaten Datenbank-E-Mail-Profils.

Transact-SQL-Syntaxkonventionen

Syntax

sysmail_delete_principalprofile_sp { [ @principal_id = ] principal_id | [ @principal_name = ] 'principal_name' } ,
    { [ @profile_id = ] profile_id | [ @profile_name = ] 'profile_name' }
[ ; ]

Argumente

[ @principal_id = ] principal_id

Die ID des Datenbankbenutzers oder der Datenbankrolle, msdb damit die Zuordnung gelöscht werden kann. @principal_id ist int mit einem Standardwert von NULL. Wenn Sie ein öffentliches Profil in ein privates Profil umwandeln möchten, geben Sie die Prinzipal-ID 0 oder den Prinzipalnamen publican. Entweder @principal_id oder @principal_name müssen angegeben werden.

[ @principal_name = ] 'principal_name'

Der Name des Datenbankbenutzers oder der Datenbankrolle, msdb damit die Zuordnung gelöscht werden soll. @principal_name ist "sysname" mit der Standardeinstellung "NULL. Wenn Sie ein öffentliches Profil in ein privates Profil umwandeln möchten, geben Sie die Prinzipal-ID 0 oder den Prinzipalnamen publican. Entweder @principal_id oder @principal_name müssen angegeben werden.

[ @profile_id = ] profile_id

Die ID des zu löschenden 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 zu löschenden Profils für die Zuordnung. @profile_name ist "sysname" mit der Standardeinstellung "NULL. Entweder @profile_id oder @profile_name müssen angegeben werden.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler).

Hinweise

Wenn Sie ein öffentliches Profil in ein privates Profil umwandeln möchten, geben Sie "öffentlich" für den Prinzipalnamen oder 0 die Prinzipal-ID an.

Gehen Sie vorsichtig vor, wenn Sie für einen Benutzer die Berechtigungen für das private Standardprofil entfernen oder das öffentliche Standardprofil entfernen. Wenn kein Standardprofil verfügbar ist, sp_send_dbmail ist der Name eines Profils als Argument erforderlich. Daher führt das Entfernen eines Standardprofils dazu sp_send_dbmail , dass Aufrufe fehlschlagen. Weitere Informationen finden Sie unter sp_send_dbmail (Transact-SQL).

Die gespeicherte Prozedur sysmail_delete_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 msdbvorhanden 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

Das folgende Beispiel zeigt das Löschen der Zuordnung zwischen dem Profil AdventureWorks Administrator und der Anmeldung ApplicationUser in der msdb Datenbank.

EXEC msdb.dbo.sysmail_delete_principalprofile_sp
    @principal_name = 'ApplicationUser',
    @profile_name = 'AdventureWorks Administrator';