• λ我爱Aspx >> Asp.Net >> 对mssql出现选定的用户拥有对象而无法删除的处理
  • 对mssql出现选定的用户拥有对象而无法删除的处理

  • :未知  Դ:internet  :2007-5-20 16:49:03  ؼ:sql
  • go

    --查看用户信息

    select name from sysusers where islogin=1

    --我们会发现,虽然我们已经将登录 aa 删除了,但用户 aa 仍然存在于数据库中

    --尝试一下,用 aa 登录,被告知登录失败

    go

    --再把删除的登录添加回去

    EXEC sp_addlogin 'aa'

    --设置登录 aa 的默认数据库为测试数据库 DB_test

    EXEC sp_defaultdb 'aa','DB_test'

    --再次登录,被告知无法打开默认数据库,登录失败

    go

    --于是把默认数据库改为 master

    EXEC sp_defaultdb 'aa','master'

    --这次再登录,就可以登录了

    go

    --尝试切换到测试数据库 DB_test

    USE DB_test

    --得到错误信息: 服务器用户 'aa' 不是数据库 'DB_test' 中的有效用户。

    --看来用户 aa 与登录 aa 失去了联系

    go

    --尝试重新为登录 aa 添加用户 aa

    EXEC sp_grantdbaccess 'aa'

    --得到错误信息:当前数据库中已存在用户或角色 'aa'。

    --这次我们换个顺序,先建立登录,再恢复数据库,看能否使登录与用户自动建立回联系

    --做这个测试之前,先清理测试环境,即做前面的<产生孤立用户>步骤,然后再开始测试

    --先添加登录

    EXEC sp_addlogin 'aa'

    go

    --还原测试数据库

    RESTORE DATABASE DB_test FROM DISK='c:\DB_test.bak'

    Ҷƪл˵?
  • һƪVisual Studio 2005 新功能、新特性
    һƪ常用正则表达式