SQL Server 2000命令禁用用户帐户

MG.*_*MG. 2 sql sql-server sql-server-2000

我需要在sql server版本2000中禁用一些用户帐户.以下sql命令给我一个"登录'附近的错误语法"错误.用户名有效且拼写正确,因此我想知道版本2000的命令语法是否不同.

ALTER LOGIN exampleuser DISABLE
Run Code Online (Sandbox Code Playgroud)

Jim*_*nke 7

SQL Server 2000没有ALTER LOGIN语句.因此,为了能够禁用登录,您必须调用sp_denylogin过程.

EXEC sp_denylogin 'exampleuser'
Run Code Online (Sandbox Code Playgroud)

要么

EXEC sp_revokelogin 'exampleuser'
Run Code Online (Sandbox Code Playgroud)

要再次授予他们访问权限,您应该使用

EXEC sp_grantlogin 'exampleuser'
Run Code Online (Sandbox Code Playgroud)

注: sp_denylogin,sp_revokelogin并且sp_grantlogin仅适用于Windows帐户和组.

为了能够拒绝纯SQL Server登录,似乎唯一的选择是完全删除该登录

EXEC sp_droplogin 'exampleuser'
Run Code Online (Sandbox Code Playgroud)

但要再次启用它,需要重新创建它

EXEC sp_addlogin 'exampleuser', 'examplepassword'
Run Code Online (Sandbox Code Playgroud)

或者只是删除登录对当前数据库的访问权限

EXEC sp_revokedbaccess 'exampleuser'
Run Code Online (Sandbox Code Playgroud)