Ich hatte vor einigen Tagen ein SQL Server-Login erstellt. Jetzt muss ich das gleiche löschen. Also ging ich zu SQL Server Management Studio => Sicherheit => Anmeldungen und wählte die Anmeldung aus, die ich löschen möchte. Es wird eine Informationsmeldung angezeigt, die besagt
Durch das Löschen von Serveranmeldungen werden die mit den Anmeldungen verknüpften Datenbankbenutzer nicht gelöscht. Löschen Sie die Benutzer in jeder Datenbank, um den Vorgang abzuschließen. Möglicherweise muss zuerst das Eigentum an Schemas auf neue Benutzer übertragen werden.
Wenn ich diese Meldung ignoriere und den Löschvorgang bestätige, wird ein schwerwiegender Fehler angezeigt, der besagt
Löschen fehlgeschlagen für Login 'iis_login'. (Microsoft.SqlServer.Smo)
Beim Ausführen einer Transact-SQL-Anweisung oder eines Batch-Stapels ist eine Ausnahme aufgetreten. (Microsoft.SqlServer.ConnectionInfo)
Dieses Login ist der Besitzer von 1 Job (s). Sie müssen diese Jobs löschen oder neu zuweisen, bevor die Anmeldung gelöscht werden kann. (Microsoft SQL Server, Fehler: 15170)
Wie lösche ich die Anmeldung, wenn Jobs (gemäß der obigen Meldung) im Besitz der Anmeldung sind?
Grüße, Nirvan.
Antworten:
Wenn Sie viele Jobs haben und nicht wissen, welcher Job diesem Login gehört, werden Sie in dieser Abfrage über den Namen der Jobs informiert, deren Eigentümer sie sind:
Sobald Sie den Job gefunden haben, können Sie ihn löschen mit
sp_delete_job
:: (Von MSDN)quelle
Sie müssen den Eigentümer der Jobs auf eine andere Anmeldung einstellen. Wenn Sie sich die Eigenschaften der Jobs ansehen, werden Sie sehen, wer der Eigentümer für sie ist. Alles was Sie tun müssen, ist das in ein anderes Login zu ändern.
Hier ist das T-SQL, um den Eigentümer des Jobs zu ändern:
Was die Datenbankbenutzer betrifft, die dem Login zugeordnet sind, das Sie löschen möchten, wenn Sie die Datenbankbenutzer und ihren Sicherheitskontext beibehalten möchten, tun Sie Folgendes:
quelle