SQL Server 2008 无法删除用户的解决方法

一个数据库,运行在SQL Server 2008下,数据库用户无法删除,在删除时提示“数据库主体在该数据库中拥有架构,无法删除”。

   
原因很简单,就是由于此用户在数据库中拥有某些架构的所有权,将相关架构的用户权限移除或删除架构即可。

    此处以一个用户UserA为例,说明具体应进行的操作,注意以下方面:

   
1、数据库的表、视图、存储过程等等,如果架构为UserA,将其所有者全部改为dbo。

   
2、在“安全性”-“架构”下,如果名称对象中有UserA这一项,将其直接删除;如果其它对象的所有者是UserA,将其所有者改为dbo

   
3、在“安全性”-“角色”-“数据库角色”下,打开每一个角色的属性,从“角色列表”中将UserA删除。

 

    做完这几步,基本没有其它问题了,能够顺利地删除无效的数据库用户。

 

--------------------------------------------------------------------------------

不允许保存更改。您所做的更改要求删除并重新创建以下表。您对无法重新创建的标进行了更改或者启用了“阻止保存要求重新创建表的更改”

解决方法:

打开SQL SERVER 2008 工具-->选项-->Designers-->表设计器和数据库设计器,把“阻止保存要求重新创建表的更改”的勾去掉然后点“确定”即可。

 

posted @ 2012-07-04 16:04  dodo-yufan  阅读(19309)  评论(0编辑  收藏  举报