如何在不删除其日志记录的情况下从数据库中删除用户?
脚本应检查用户是否存在于数据库中,如果存在则删除该用户。
如何在不删除其日志记录的情况下从数据库中删除用户?
脚本应检查用户是否存在于数据库中,如果存在则删除该用户。
这是您试图做的吗?
IF EXISTS (SELECT * FROM sys.database_principals WHERE name = N'username')
DROP USER [username]
如果您正在使用SQL Server Management Studio,您可以浏览到该用户并右键单击选择删除。
已接受的答案工作良好。此外,需要知道的是从2016版(13.x)开始SQL Server添加了IF EXISTS到某些DROP命令中,包括'DROP USER'命令。
IF EXISTS
适用于: SQL Server ( SQL Server 2016 (13.x) 至当前版本,SQL 数据库)。
仅在用户已存在时有条件地删除该用户。
因此,您可以按以下方式仅删除用户:
-- Syntax for SQL Server and Azure SQL Database
DROP USER IF EXISTS user_name
请参阅此链接中的完整描述:DROP USER (Transact-SQL)
希望这可以帮到您。
DROP USER IF EXISTS 'DOMAIN\user-name'
返回 "语法不正确 - 期望 ID 或 QUOTED_ID"。请问如何解决这个问题? - Dieter