Как я могу удалить пользователя из базы данных, не отбросив его?Удалить пользователя из базы данных SQL Server?
Сценарий должен проверить, существует ли пользователь в базе данных, если он отбрасывает пользователя.
Как я могу удалить пользователя из базы данных, не отбросив его?Удалить пользователя из базы данных SQL Server?
Сценарий должен проверить, существует ли пользователь в базе данных, если он отбрасывает пользователя.
Это то, что вы пытаетесь сделать?
IF EXISTS (SELECT * FROM sys.database_principals WHERE name = N'username')
DROP USER [username]
Если вы используете SQL Server Management Studio, вы можете перейти к пользователю и щелкнуть правой кнопкой мыши по выбору удаления.
Что такое N здесь N'username '? – zer0w1dthspace
«n» просто сообщает серверу sql, что строковое значение является unicode. Это может предотвратить проблемы для людей, работающих в разных наборах символов. –
Возможно, у вас должен быть только флаг Dropped/Deleted в пользовательской таблице, поддерживающий ссылочную целостность, если вы хотите сохранить информацию о регистрации для этого пользователя.
В противном случае вам будет необходимо удалить ограничение внешнего ключа, которое предотвращает удаление в настоящее время, однако я бы не рекомендовал этого.
Возможный дубликат [Как вы проверяете наличие пользователя на SQL Server?] (Http://stackoverflow.com/questions/356000/how-do-you-test-for-the-existence-of -a-user-in-sql-server) – IMSoP