当前位置: 首页 > 知识 >正文

SQL Server 错误:15023(创建对于用户失败)

Sql server错误15023:用户或角色已经存在于当前数据库中。

将远程服务器上的数据库备份还原到本地计算机后,当将“用户”与“登录”(用户映射)相关联时,会出现错误:“错误15023:用户或角色已存在于当前数据库中”。

SQL  Server  错误:15023(创建对于用户失败)

原因:

sql server中“登录”和“用户”的区别在于“登录”用于用户认证,而数据库“用户”账户用于数据库访问和权限验证。登录通过安全标识符(SID)与用户相关联。将数据库还原到另一台服务器时,

数据库包含一组用户和权限,但是可能没有相应的登录,或者与登录相关联的用户可能不是相同的用户。这种情况被称为“孤儿用户”的存在。

此时,通过创建新的登录或授予“用户”对相应数据库的权限以进行同名登录是无法解决登录问题的,因为SQL Server会报告“错误15023:当前数据库中已经存在用户或角色”。

求解:

要解决这个问题,需要调用系统存储过程sp_change_users_login,具体用法如下:

Use northwindgossp _ change _ users _ login' update _ one'' test'' test' where the northwind is the database with isolated users,

Update_one是存储过程的一个参数,表示只处理一个用户,前面的测试是“user”,后面的测试是“login”。

上述SQL意味着将服务器登录“test”与Northwind数据库用户“test”重新连接。所以可以正常使用数据库。

相关文章:
  • 博时成渝经济圈ETF净值上涨1.11% 请保持关注
  • 4月24日基金净值:金信稳健策略灵活配置混合最新净值1.7815,跌1.55%
  • 6月1日基金净值:华安新兴消费混合A最新净值0.5885,涨0.48%
  • 3月27日基金净值:招商瑞信稳健配置混合A最新净值1.0887,跌0.06%_基金频道_证券之星
  • 4月13日基金净值:华安研究智选混合A最新净值0.7723,跌1.37%
  • 【能够穿越周期的基金】恒越研究精选(A类006049,C类007192):穿越牛熊的王牌基金
  • 悦读书“学而不思则罔!”基金经理赵云阳:让自己成为真正的“思想者”和“行动者”
  • 4月28日基金净值:太平丰润一年定开债发起式最新净值0.9533,跌0.09%
  • 7月5日基金净值:鹏扬景合六个月持有混合最新净值1.0504,跌0.12%
  • 4月18日基金净值:广发价值核心混合A最新净值0.5284,跌0.47%