gpt4 book ai didi

sql-server - 无法更改用户密码

转载 作者:搜寻专家 更新时间:2023-10-30 23:21:12 27 4
gpt4 key购买 nike

我已经下载了数据库并将其附加到我的本地 sql 服务器,但是我似乎无法更改数据库上现有用户的密码。

使用以下命令:

ALTER LOGIN [NotificationsUser] WITH PASSWORD = 'password';

我得到错误:

Msg 15151, Level 16, State 1, Line 1 Cannot alter the login 'NotificationsUser', because it does not exist or you do not have permission.

这可能吗?我需要什么访问权限才能更改用户权限?

最佳答案

如果您已将此数据库附加到本地 SQL 服务器,那么您需要做几件事:

  1. 如果您还没有这样做,请在您的 SQL 服务器上创建用户登录以匹配附加数据库中存在的用户登录。在附加数据库之前执行此操作更简单。但可以在附加数据库后完成。

  2. 因为新附加数据库中用户的 SID 与新创建的登录名不同,您需要使用 sp_change_users_login 存储过程来解决此问题。数据库用户实际上是孤立的。

例如,如果您有:

SQL 登录:bob 附加数据库用户:bob

在 SQL Management Studio 中为附加的数据库打开一个新查询,然后运行:

sp_change_users_login @action='report'

如果您的数据库中有“孤立的”用户,那么您会看到如下所示的结果集:

UserName  UserSIDbob       0x57F6DFA5D5D7374A97769856E7CB5610

To reconnect this user to a SQL login execute:

sp_change_users_login @action='update_one', 
@loginname='bob',
@usernamepattern='bob'

关于sql-server - 无法更改用户密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6399176/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com