电脑技术学习

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

dn001

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)在“企业管理器”的“安全性”的“登陆”中修改“用户”密码