gpt4 book ai didi

MSSQL中删除用户时数据库主体在该数据库存中拥有架构 无法删除的解决方法

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 29 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章MSSQL中删除用户时数据库主体在该数据库存中拥有架构 无法删除的解决方法由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

在ms sql2005 下面删除一个数据库的用户的时候提示 "数据库主体在该数据库中拥有架构,无法删除" 的错误解决方案 1、在 安全性 -> 架构 下面看有没有该用户存在,如果有就删除 再试试在用户下面看能不能把该用户删掉,如果不行就用下面的文法 运行下SQL语句 ALTER AUTHORIZATION ON SCHEMA::db_owner TO dbo,

--然后手动删除就可以了。 因为选定的用户拥有对象,所以无法除去该用户"解决方法 。

  。

复制代码代码如下:

use 你的库名 go 。

  。

declare tb cursor local for select 'sp_changeobjectowner ' +quotename( +quotename(user_name(uid)) +'.'+quotename(name),'''') +',''dbo''' from sysobjects  where objectproperty(id,N'isusertable')=1 and uid<>user_id('dbo') declare @s nvarchar(4000) open tb fetch tb into @s while @@fetch_status=0 begin exec(@s) fetch tb into @s end close tb deallocate tb 。

  。

第三 。

方法一(华夏互联专业技术提示:因为涉及更改数据库存储过程,强制删除法不推荐) 首先你需要做的第一件事 企业管理器-〉选择服务器-〉属性-〉服务器设置-〉挑上允许对系统目录。。。-〉确定 第二步 找到你的数据库找到sysusers表那你以前的用户删除 第三步回去吧属***值改回来 第四部重建用户即可 。

方法二 。

对mssql出现选定的用户拥有对象而无法删除的处理 。

--将下面的代码在查询分析器中执行,修改修改库名 。

  。

复制代码代码如下:

use 你的库名 go 。

  。

declare tb cursor local for select 'sp_changeobjectowner ' +quotename( +quotename(user_name(uid)) +'.'+quotename(name),'''') +',''dbo''' from sysobjects  where objectproperty(id,N'isusertable')=1 and uid<>user_id('dbo') declare @s nvarchar(4000) open tb fetch tb into @s while @@fetch_status=0 begin exec(@s) fetch tb into @s end close tb deallocate tb 。

  。

MSSQL备份移植到另一服务器还原时容易遇到的问题…… MSSQL备份移植到另一服务器还原时容易遇到的问题,尤其是从虚拟主机备份回来的数据库在本机还原的问题… 。

会出现用SQL原来的用户名和密码无效的情况  无法删除某一个系统表  用sa连接做Select时提示表名无效  无法删除原备份数据库中的用户名,提示“因为选定的用户拥有对象,所以无法除去该用户。” 主要原因是原来的备份还原时保留了原用户的信息,导致产生孤立用户…… 。

这时候需要用sp_changeobjectowner 将对象的所有关系更改到另一个用户上,既更改数据库对象的所有者.

格式:

sp_changeobjectowner [@objectname =] 'object', [@newowner =] 'owner' 。

例子 在查询分析器中录入:

sp_changeobjectowner 'web102101.tablename', 'dbo' 依次将所有的所属用户都改为dbo,然后现在数据库的用户中把孤立用户删除,再到安全中删除登陆信息.

并可以再依次创建新用户了 下面是一些补充: Microsoft SQL Server错误: 15138删除对于用户失败,数据库主体在该数据库中拥有架构,无法删除。解决方法  删除 对于 用户“*****”失败。 (Microsoft.SqlServer.Smo)  有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=  9.00.1523.00&EvtSrc=Microsoft.SqlServer.Management.Smo.  ExceptionTemplates.FailedOperationExceptionText&EvtID=删除+User&LinkId=20476  ------------------------------  其他信息:  执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)  ------------------------------  数据库主体在该数据库中拥有 架构,无法删除。 (Microsoft SQL Server,错误: 15138)  有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=09.00.1399&EvtSrc=MSSQLServer&EvtID=15138&LinkId=20476  解决方法一  先删除此用户对应的架构,然后在删除对应的用户  步骤  1。SQL SERVER MANAGEMENT STUDIO--》数据库--》安全性--》构架,先删除对应的构架  2。SQL SERVER MANAGEMENT STUDIO--》数据库--》安全性--》用户,删除对应的用户  解决方法二  --执行如下SQL语句  ALTER AUTHORIZATION ON SCHEMA::db_owner TO dbo;  --然后手动删除就可以了.

最后此篇关于MSSQL中删除用户时数据库主体在该数据库存中拥有架构 无法删除的解决方法的文章就讲到这里了,如果你想了解更多关于MSSQL中删除用户时数据库主体在该数据库存中拥有架构 无法删除的解决方法的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com