在SQL SERVER 2000中,如何在客户端修改该用户的SQL 登录密码。(100分)

  • 主题发起人 主题发起人 fxb
  • 开始时间 开始时间
F

fxb

Unregistered / Unconfirmed
GUEST, unregistred user!
1。在SQL SERVER 2000中,如何在客户端修改该用户的SQL 登录密码。
2。如何在客户端(权限足够时)用程序的方式增加一个用户
 
1、调用存储过程sp_password

sp_password 'oldpassword', 'newpassword'

2、调用存储过程sp_adduser


 
添加或更改 Microsoft® SQL Server™ 登录的密码。

语法
sp_password [ [ @old = ] 'old_password' , ]
{ [ @new =] 'new_password' }
[ , [ @loginame = ] 'login' ]

参数
[@old =] 'old_password'

是旧密码。old_password 为 sysname 类型,其默认值为 NULL。

[@new =] 'new_password'

是新密码。new_password 为 sysname 类型,无默认值。如果没有使用命名参数,就必须指定 old_password。

[@loginame =] 'login'

是受密码更改影响的登录名。login 为 sysname 类型,其默认值为 NULL。login 必须已经存在,并且只能由 sysadmin 固定服务器角色的成员指定。

返回代码值
0(成功)或 1(失败)
 
注释
SQL Server 密码可包含 1 到 128 个字符,其中可包括任何字母、符号和数字。

新密码以加密的形式更新和存储,因此,任何用户(甚至系统管理员)都不能查看密码。

当 sysadmin 或 securityadmin 固定服务器角色的成员使用带全部三个参数的 sp_password 重新设置他们自己的密码时,审核记录反映的却是他们正在更改别人的密码。

sp_password 不能用于 Microsoft Windows NT® 安全帐户。通过 Windows NT 网络帐户连接到 SQL Server 的用户是由 Windows NT 授权的,因此其密码只能在 Windows NT 中更改。

sp_password 不能在用户定义的事务中执行。

权限
执行权限默认地授予 public 角色,以供用户更改自己的登录密码。只有 sysadmin 角色的成员可更改其他用户的登录密码。

示例
A.无原密码的情况下更改登录密码
下面的示例将登录 Victoria 的密码更改为 ok。

EXEC sp_password NULL, 'ok', 'Victoria'

B.更改密码
下面的示例将登录 Victoria 的密码由 ok 改为 coffee。

EXEC sp_password 'ok', 'coffee'

 
query1.Close;
query1.Sql.Clear;
a:=query1.Sql.add('EXEC sp_password,'+'123'+',111');
query1.ExecSql;

我用以上代码发生错误,“token not found”,怎么办?
 
with Query1 do
begin
Close;
SQL.Text := 'EXEC sp_password,''123'',''111''';
ExecSQL;
end;
 
主要原因,你的SQL.Add最后Add的是:“EXEC sp_password 123,111”,后面的两个成数字了。
a:=query1.Sql.add('EXEC sp_password,'+'123'+',111');
 
好象是同样的错误,我应该连接MASTER数据库吗?
 
连两个都一样啊。因为你是执行的命令啊。
 
那为什么存在错误呢?“takon not found "
 
takon是什么意思?不懂啊
 
query1.Sql.add('sp_password 123,111');
 
多人接受答案了。
 
后退
顶部