Я бы хотел запретить опытным пользователям удалять данные с помощью SQL Server Management Studio. Мне нужно заархивировать данные и добавить некоторую информацию в контрольный журнал при удалении данных.
Спасибо
Создайте новый логин и пользователя базы данных для этого логина. Затем предоставьте разрешение на удаление этому пользователю и отзовите его от всех остальных. Напишите процедуру [s], которая удаляет данные, добавьте WITH EXECUTE AS [previously created user that can delete data]. Предоставьте другим пользователям права на выполнение процедуры [s].
WITH EXECUTE AS [previously created user that can delete data]
Из вашего второго предложения у меня сложилось впечатление, что удаление - это не реальная проблема, а то, что вам нужно архивировать данные и создавать контрольный журнал при удалении данных.Почему бы не использовать триггер удаления?
Ну, они продвинутые пользователи, не так ли? Вы можете установить для них запрет на удаление.
DENY DELETE TO [Your_User] GO