位置:海鸟网 > IT > mySQL >

SQL数据库用户只有“名称”而无“登陆名”解决

exec  sp_change_users_login  'UPDATE_ONE',没有登陆名的数据库用户,'新的登陆名' 
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)在“企业管理器”的“安全性”的“登陆”中修改“用户”密码