解决孤立用户问题 1,用 sp_addlogin 添加一个临时登录。为孤立用户指定安全标识符 (SID)(从 sysusers)。 
sp_addlogin @loginame = 'nancyd',
    @sid = 0x32C864A70427D211B4DD00104B9E8A002,用 sp_dropalias 除去属于别名 SID 的临时别名。 
sp_dropalias 'nancyd'3,用 sp_dropuser 除去原始用户(即现在的孤立用户)。 
sp_dropuser 'janetl'4,用 sp_dropuser 除去原始登录。 
sp_droplogin 'nancyd'

解决方案 »

  1.   


    第-种方法
    use yourdatabase 
    exec sp_change_users_login  'Auto_Fix','youruser'第二种方法
    如果多次在两个服务器中备份/还原数据用可一劳永逸法。
    以后在原来服务器备份,在新服务器恢复,login 就不会不见了。
    原来数据库服务器以文本方式执行下面语句。
    select sql='exec sp_addlogin '''+loginname+''',',CONVERT(VARBINARY(32), password),','''+dbname+''',NULL,',sid,',''skip_encryption'''  from master.dbo.syslogins where loginname<>'sa' and  isntname=0将生成的结果在新的服务器执行。第三种方法
    1、use yourdatabase 
    2、将使用 sp_changeobjectowner 将对象的所有关系更改到另一用户(如果有)。
    exec sp_changeobjectowner 'ouruser.table1','dbo'
    3、exec sp_dropuser 'youruser'
    4、加login youruser(如果没有)
    5、加 user youruser。
    6、授权。
    参考
    http://www.csdn.net/Expert/TopicView.asp?id=601040