Heim  >  Artikel  >  Datenbank  >  So löschen Sie benutzerdefinierte Datenbankbenutzer in SQL Server (ausführliche grafische Erklärung)

So löschen Sie benutzerdefinierte Datenbankbenutzer in SQL Server (ausführliche grafische Erklärung)

不言
不言nach vorne
2019-01-12 11:30:059482Durchsuche

Der Inhalt dieses Artikels befasst sich mit dem Löschen benutzerdefinierter Datenbankbenutzer in SQL Server (ausführliche Grafik- und Texterklärung). Ich hoffe, es wird dir helfen.

Hinweise zum Löschen benutzerdefinierter Datenbankbenutzer

Benutzer, die Sicherheitsobjekte besitzen, können nicht aus der Datenbank gelöscht werden. Bevor Sie den Datenbankbenutzer löschen können, der Eigentümer der Sicherheitsobjekte ist, müssen Sie zunächst den Besitz der Sicherheitsobjekte löschen oder übertragen.

Der Gastbenutzer kann nicht gelöscht werden, aber der Gastbenutzer kann deaktiviert werden, indem seine CONNECT-Berechtigungen widerrufen werden, indem REVOKE CONNECT FROM GUEST in einer beliebigen Datenbank außer Master oder Tempdb ausgeführt wird. (Verwandte Empfehlungen: MySQL-Tutorial)

Erfordert die ALTER ANY USER-Berechtigung für die Datenbank.

Verwenden Sie das SSMS-Datenbankverwaltungstool, um benutzerdefinierte Datenbankbenutzer zu löschen

1 Verbinden Sie sich mit dem Server -> Erweitern Sie die Datenbank -> Wählen Sie die Datenbank aus, die gelöscht werden soll Benutzer -> Erweitern Sie die Datenbank - 》Sicherheit erweitern-》Benutzer erweitern-》Wählen Sie den zu löschenden Benutzer aus, klicken Sie mit der rechten Maustaste-》Wählen Sie Löschen.

2. Klicken Sie im Popup-Fenster zum Löschen des Objekts auf OK.

3. Sie können die Löschergebnisse ohne Aktualisierung anzeigen.

T-SQL-Skript verwenden, um benutzerdefinierte Benutzer zu löschen

Syntax


--声明数据库引用
use database_name;
go

--判断是否存在用户自定义用户,如果存在则删除。
if exists(select * from sys.database_principals where name=user_name)
--把架构所有者修改回来架构自身
alter authorization on schema::[Architecture_name] to Architecture_name;
--删除角色拥有的成员
alter role [[Architecture_name] drop member user_name;
--删除扩展属性
exec sys.sp_dropextendedproperty @name=N'tests_description', @level0type=N'user',@level0name=N'user_name'
--删除用户架构
drop user user_name;
go


Syntaxhinweise

--database_name
--database name
--user_name
--user name
--Architecture_name
--architecture name
--tests_description
--Erweiterter Attributname

Beispiel


--声明数据库引用
use [testss];
go

--判断是否存在用户自定义用户,如果存在则删除。
if exists(select * from sys.database_principals where name='test1')
--把架构所有者修改回来架构自身
alter authorization on schema::[db_accessadmin] to db_accessadmin;
--删除角色拥有的成员
alter role [db_accessadmin] drop member test1;
--删除扩展属性
--exec sys.sp_dropextendedproperty @name=N'tests_description', @level0type=N'user',@level0name=N'test1'
--删除用户架构
drop user test1;
go


Beispielergebnis: Die Verwendung eines T-SQL-Skripts zum Löschen eines Benutzers erfordert eine Aktualisierung des Benutzerordners, um die Löschergebnisse anzuzeigen.

Das obige ist der detaillierte Inhalt vonSo löschen Sie benutzerdefinierte Datenbankbenutzer in SQL Server (ausführliche grafische Erklärung). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen