MG.*_*MG. 2 sql sql-server sql-server-2000
我需要在sql server版本2000中禁用一些用户帐户.以下sql命令给我一个"登录'附近的错误语法"错误.用户名有效且拼写正确,因此我想知道版本2000的命令语法是否不同.
ALTER LOGIN exampleuser DISABLE
Run Code Online (Sandbox Code Playgroud)
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)