cyqw 发表于 2008-6-25 22:13:29

执行效果

C:\Documents and Settings\Administrator>isql -E
1> sp_password NULL,'zhilishixindemima','sa'
2> go
密码已更改。
1> quit

C:\Documents and Settings\Administrator>

Richard_Chen 发表于 2008-6-29 02:48:48

呵,SQL在混合模式中自动把本地管理员添加为数据库SA权限,这种方法就相当于是利用一个有SA权限用户去修改另一个帐户密码。如果不验证模式不是混合模式,那也不用提心,可以通过修改注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode实现。

morikiller 发表于 2008-7-17 00:22:14

学习了。多谢分享呀。。。。。。。。。。。。。。。。。

seal1234 发表于 2008-7-19 13:01:35

SQL就是要多看多学,谢谢啦

aoqw 发表于 2008-8-6 10:30:58

直接用语句改 不容易出问题

rroocckkyy 发表于 2008-8-25 11:35:35

:lol这个资料对于菜鸟很有用

chinapp777 发表于 2008-9-16 11:15:48

呵呵 都是高手啊学习中~~~~:loveliness:

compaq 发表于 2008-9-16 11:24:28

:) 好好学习一下楼主的方法。

shiqiang2001 发表于 2008-10-25 18:18:05

原来可以这样处理这个问题

hzj22222 发表于 2008-11-5 16:11:35

补充:用SQL语句修改密码的方法

补充:用SQL语句修改密码的方法
忘记SQLServer SA密码的解决方法

--------------------------------------------------------------------------------

发表日期:2005年12月17日本页面已被访问 274 次


我的台式机和本本分别安装了MS SQL Server,方便做测试用,结果时间长了,台式机SQL Server的密码忘记了……
难道……没有办法了吗?——No!
经过一阵子郁闷,终于在百度搜到了方法:

现在你的企业管理器当然是进不去了,但是我们还有查询分析器
验证的时候,选择按照Windows身份验证,就直接进去了……汗!
输入下列命令,执行:
exec sp_password null,'新密码','sa'
好了,现在密码已经改变了,到企业管理器看看 ^_^

下面是我在SQL Server的帮助看到的关于存储过程 sp_password的说明:

sp_password
添加或更改 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'
页: 1 [2] 3 4 5 6 7 8 9 10 11
查看完整版本: 直接修改SQL2000密码的方法