最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
还原数据库备份提示:User, group, or role already exists
时间:2022-06-29 08:07:41 编辑:袖梨 来源:一聚教程网
详细错误信息如下:
TITLE: Microsoft SQL Server Management Studio
------------------------------
Create failed for User 'testuser'. (Microsoft.SqlServer.Smo)
------------------------------
ADDITIONAL INFORMATION:
An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)
------------------------------
User, group, or role 'testuser' already exists in the current database. (Microsoft SQL Server, Error: 15023)
解决方法
先创建用户帐户,不进行授权,然后通过下面的SQL语句将该用户帐户关联至对应的数据库用户。
优点是避免了重新授权的操作。
-收缩SQL代码
USE {目标数据库}
EXEC sp_change_users_login 'Update_One', '{目标数据库已存在的用户名}', '{创建的登录用户名}'
另一个解决办法
就是创建一个用户,然后给用户授权了, 在创建用户帐户(或者授权)之前,先在对应的数据库中删除该同名的用户帐户。
还原的数据库的所有者是 孤立用户
查询分析器中 执行:
exec sp_change_users_login 'Report '
查找出来孤立用户
exec sp_changedbowner 'sa '
还原 数据库所有者(dbo)为非孤立用户
EXEC sp_MSforeachtable 'exec sp_changeobjectowner ''?'',''dbo'' '
更改其他表的所有者为数据库所有者(dbo)
其他孤立用户即可删除或者自行处理
孤立用户删除:
1.打开企业管理器,展开服务器,右键点击本地服器,属性:
2.选择 服务器设置 选项卡,勾选 允许对系统目录直接进行修改
3.打开数据库系统表 sysusers ,右键--打开表--返回所有行
4.选择应为还原而添加进来的用户,找到相关行,点右键 删除
5.将 允许对系统目录直接进行修改 恢复即可
相关文章
- 瓦罐煨汤是我国哪个地方的非遗美食 蚂蚁新村11月27日答案 11-28
- 王者荣耀S38赛季体验服更新有什么 S38赛季体验服更新内容介绍 11-28
- FF14手游拂晓测试怎么参加 11-28
- FF14手游拂晓测试怎么玩 最终幻想14水晶世界拂晓测试招募faq介绍 11-28
- FF14手游拂晓测试怎么参加 最终幻想14水晶世界测试招募活动介绍 11-28
- 《崩坏:星穹铁道》后真相时代成就达成攻略 11-28