如何通过SQL语句修改SQL Server中指定的登录名的密码?

Crob 2003-11-27 09:13:39
如何通过SQL语句修改SQL Server中指定的登录名的密码?
该使用什么语句?
谢谢!

...全文
647 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
Crob 2003-11-27
  • 打赏
  • 举报
回复
是可以改,但是sp_password使用时操作员一定要用带有System Administrator权限的账号登录才行吗?
txlicenhe 2003-11-27
  • 打赏
  • 举报
回复
sp_password
zjcxc 元老 2003-11-27
  • 打赏
  • 举报
回复
如果是修改当前登陆的用户的密码.

exec sp_password null,'新密码'
zjcxc 元老 2003-11-27
  • 打赏
  • 举报
回复
exec sp_password '旧密码','新密码','要修改的用户名'
youngby 2003-11-27
  • 打赏
  • 举报
回复
sp_password
新增信息 - SQL Server 2000 SP3。

添加或更改 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 或 securityadmin 固定服务器角色的成员指定。

返回代码值
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 角色,以供用户更改自己的登录密码。只有 securityadmin 和 sysadmin 固定服务器角色的成员可更改其他用户的登录密码。

示例
A.无原密码的情况下更改登录密码
下面的示例将登录 Victoria 的密码从空密码更改为“B3r12-36”。

EXEC sp_password NULL, 'B3r12-36', 'Victoria'

B.更改密码
下面的示例将登录 Victoria 的密码从“B3r12-36”更改为“Xj7-IpSca”。

EXEC sp_password 'B3r12-36', 'Xj7-IpSca'

shuiniu 2003-11-27
  • 打赏
  • 举报
回复
示例
A.无原密码的情况下更改登录密码
下面的示例将登录 Victoria 的密码更改为 ok。

EXEC sp_password NULL, 'ok', 'Victoria'

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

EXEC sp_password 'ok', 'coffee'

shuiniu 2003-11-27
  • 打赏
  • 举报
回复
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 不能在用户定义的事务中执行。

youngby 2003-11-27
  • 打赏
  • 举报
回复
exec sp_password
leeboyan 2003-11-27
  • 打赏
  • 举报
回复
上述方法我试了,用sql server 验证登录还不成功。能不能再重新建立一个!请问大力,邹建!
pengdali 2003-11-27
  • 打赏
  • 举报
回复
将SQLServer改成以Windows身份登录-->企业管理器—>安全性->登陆->右击sa ->属性->去掉密码,或输入新密码
zjcxc 元老 2003-11-27
  • 打赏
  • 举报
回复
如果连操作系统的administrator密码一齐忘了,就没办法了.

如果只是忘了普通用户密码.可以用:

sp_password null,'新密码','用户名'
zjcxc 元老 2003-11-27
  • 打赏
  • 举报
回复
如果忘了SA的密码.

你还可以用:

administrator身份验证windows
查询分析器--连接使用,选择"使用windows身份验证"--执行下面的语句:
sp_password null,'新密码','sa'

pengdali 2003-11-27
  • 打赏
  • 举报
回复
如果是忘了密码呢?怎样解决?

re:

exec sp_password null,'新密码','sa'
lvltt 2003-11-27
  • 打赏
  • 举报
回复
同意邹捷
leeboyan 2003-11-27
  • 打赏
  • 举报
回复
如果是忘了密码呢?怎样解决?
Rotaxe 2003-11-27
  • 打赏
  • 举报
回复
执行权限默认地授予 public 角色,以供用户更改自己的登录密码。只有 sysadmin 角色的成员可更改其他用户的登录密码。
本课程是SQL系列课程第2篇:MySQL数据库。MySQL篇    MySQL数据库管理系统安装        10.1 MySQL概述            10.1.1 MySQL主要特点            10.1.2 MySQL主要版本         10.2 MySQL数据库安装和配置            10.2.1 Windows平台安装MySQL                1.下载MySQL8.0社区版                2.安装MySQL8.0社区版            10.2.2 Linux平台安装MySQL                1.更新软件仓库包索引                2.安装 MySQL                3.防火墙设置                4.启动 MySQL 服务                5.配置远程登录            10.2.3 macOS平台安装MySQL                1.下载MySQL8.0社区版                2.安装 MySQL    MySQL数据库管理系统日常管理        11.1 登录服务器        11.2 常见的管理命令            11.2.1 帮助命令            11.2.2 退出命令            11.2.3 数据库管理            11.2.4 用户管理        11.3 查看系统对象信息            11.3.1 查看有哪些库            11.3.2 查看有哪些表            11.3.3 查看表结构        11.4 执行脚本文件            11.4.1 不需要登录MySQL方式            11.4.2 需要登录MySQL方式        11.5 数据库备份与恢复            11.5.1 备份数据库            11.5.2 恢复数据库            11.5.3 实例:在Windows下备份到Linux下恢复        11.6 MySQL图形界面管理工具            11.6.1 下载和安装MySQL Workbench            11.6.2 配置连接数据库            11.6.3 管理数据库            11.6.4 管理表            11.6.5 执行SQL语句    MySQL特有的SQL语句        12.1 自增长字段        12.2 MySQL日期相关数据类型        12.3 限制返回行数        12.4 常用函数            12.4.1 数字型函数            12.4.2 字符串函数            12.4.3 日期和时间函数    MySQL数据库开发        13.1 存储过程            13.1.1 使用存储过程重构“找出所有销售部所有员工信息”案例            13.1.2 调用存储过程            13.1.3 删除储过程        13.2 存储过程参数            13.2.1 IN参数            13.2.2 OUT参数            13.2.3 INOUT参数        13.3 存储函数            13.3.1 创建存储函数            13.3.2 调用存储函数            13.3.3 删除存储函数        13.4 触发器            13.4.1 触发器分类            13.4.2 创建触发器语法            13.4.3 使用NEW和OLD修饰符            13.4.4 示例:员工表操作更新日志            13.4.5 测试触发器

34,571

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧