exec
sp_change_users_login
'
UPDATE_ONE
'
,没有登陆名的数据库用户,
'
新的登陆名
'
go
go
原因: SQL备份的问题有一台SQL SERVER 服务器,将其中的数据库DataBase1备份成一个文件,在另外一台SQL SERVER服务器上还原,数据表和存储过程等恢复没有问题,但某些用户自定义的用户(这些自定义用户在原数据库中是某些表和存储过程的所有者)变成孤立用户,既无法利用也不能删除,导致不能利用这些用户帐号访问数据库。
解决方法:
1 数据库还原后在“企业管理器”中,在还原的数据库“用户”选项中察看数据库用户是否只有“名称”而无“登陆名”; hp_unix
2 )使用Sa登陆“查询分析器”,运行: use “还原的数据库名称” EXEC sp_addlogin ' 新的登陆名(和原数据库一致) ' go exec sp_change_users_login ' UPDATE_ONE ' , ' 没有登陆名的数据库用户 ' , ' 新的登陆名 ' go
3 )在“企业管理器”的“安全性”的“登陆”中修改“用户”密
解决方法:
1 数据库还原后在“企业管理器”中,在还原的数据库“用户”选项中察看数据库用户是否只有“名称”而无“登陆名”; hp_unix
2 )使用Sa登陆“查询分析器”,运行: use “还原的数据库名称” EXEC sp_addlogin ' 新的登陆名(和原数据库一致) ' go exec sp_change_users_login ' UPDATE_ONE ' , ' 没有登陆名的数据库用户 ' , ' 新的登陆名 ' go
3 )在“企业管理器”的“安全性”的“登陆”中修改“用户”密