溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MSSQL中怎么刪除用戶時數(shù)據(jù)庫主體

發(fā)布時間:2021-08-13 16:05:23 來源:億速云 閱讀:185 作者:Leah 欄目:數(shù)據(jù)庫

今天就跟大家聊聊有關(guān)MSSQL中怎么刪除用戶時數(shù)據(jù)庫主體,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

在ms sql2005 下面刪除一個數(shù)據(jù)庫的用戶的時候提示 "數(shù)據(jù)庫主體在該數(shù)據(jù)庫中擁有架構(gòu),無法刪除" 的錯誤解決方案1、在 安全性 -> 架構(gòu) 下面看有沒有該用戶存在,如果有就刪除再試試在用戶下面看能不能把該用戶刪掉,如果不行就用下面的文法運行下SQL語句ALTER AUTHORIZATION ON SCHEMA::db_owner TO dbo;

--然后手動刪除就可以了。因為選定的用戶擁有對象,所以無法除去該用戶"解決方法

代碼如下:

 use 你的庫名go

declare tb cursor localforselect 'sp_changeobjectowner '+quotename(+quotename(user_name(uid))+'.'+quotename(name),'''')+',''dbo'''from sysobjects where objectproperty(id,N'isusertable')=1and uid<>user_id('dbo')declare @s nvarchar(4000)open tbfetch tb into @swhile @@fetch_status=0beginexec(@s)fetch tb into @sendclose tbdeallocate tb

第三

方法一(華夏互聯(lián)專業(yè)技術(shù)提示:因為涉及更改數(shù)據(jù)庫存儲過程,強制刪除法不推薦)首先你需要做的第一件事企業(yè)管理器-〉選擇服務(wù)器-〉屬性-〉服務(wù)器設(shè)置-〉挑上允許對系統(tǒng)目錄。。。-〉確定第二步找到你的數(shù)據(jù)庫找到sysusers表那你以前的用戶刪除第三步回去吧屬***值改回來第四部重建用戶即可

方法二

對mssql出現(xiàn)選定的用戶擁有對象而無法刪除的處理

--將下面的代碼在查詢分析器中執(zhí)行,修改修改庫名

復(fù)制代碼 代碼如下: use 你的庫名go

declare tb cursor localforselect 'sp_changeobjectowner '+quotename(+quotename(user_name(uid))+'.'+quotename(name),'''')+',''dbo'''from sysobjects where objectproperty(id,N'isusertable')=1and uid<>user_id('dbo')declare @s nvarchar(4000)open tbfetch tb into @swhile @@fetch_status=0beginexec(@s)fetch tb into @sendclose tbdeallocate tb

MSSQL備份移植到另一服務(wù)器還原時容易遇到的問題……MSSQL備份移植到另一服務(wù)器還原時容易遇到的問題,尤其是從虛擬主機備份回來的數(shù)據(jù)庫在本機還原的問題…

會出現(xiàn)用SQL原來的用戶名和密碼無效的情況 無法刪除某一個系統(tǒng)表 用sa連接做Select時提示表名無效 無法刪除原備份數(shù)據(jù)庫中的用戶名,提示“因為選定的用戶擁有對象,所以無法除去該用戶?!敝饕蚴窃瓉淼膫浞葸€原時保留了原用戶的信息,導(dǎo)致產(chǎn)生孤立用戶……

這時候需要用sp_changeobjectowner 將對象的所有關(guān)系更改到另一個用戶上,既更改數(shù)據(jù)庫對象的所有者。

格式:

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

例子 在查詢分析器中錄入:

sp_changeobjectowner 'web102101.tablename', 'dbo'依次將所有的所屬用戶都改為dbo,然后現(xiàn)在數(shù)據(jù)庫的用戶中把孤立用戶刪除,再到安全中刪除登陸信息。

并可以再依次創(chuàng)建新用戶了下面是一些補充:Microsoft SQL Server錯誤: 15138刪除對于用戶失敗,數(shù)據(jù)庫主體在該數(shù)據(jù)庫中擁有架構(gòu),無法刪除。解決方法 刪除 對于 用戶“*****”失敗。 (Microsoft.SqlServer.Smo) 有關(guān)幫助信息,請單擊: 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 ------------------------------ 其他信息: 執(zhí)行 Transact-SQL 語句或批處理時發(fā)生了異常。 (Microsoft.SqlServer.ConnectionInfo) ------------------------------ 數(shù)據(jù)庫主體在該數(shù)據(jù)庫中擁有 架構(gòu),無法刪除。 (Microsoft SQL Server,錯誤: 15138) 有關(guān)幫助信息,請單擊: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=09.00.1399&EvtSrc=MSSQLServer&EvtID=15138&LinkId=20476 解決方法一 先刪除此用戶對應(yīng)的架構(gòu),然后在刪除對應(yīng)的用戶 步驟 1。SQL SERVER MANAGEMENT STUDIO--》數(shù)據(jù)庫--》安全性--》構(gòu)架,先刪除對應(yīng)的構(gòu)架 2。SQL SERVER MANAGEMENT STUDIO--》數(shù)據(jù)庫--》安全性--》用戶,刪除對應(yīng)的用戶 解決方法二 --執(zhí)行如下SQL語句 ALTER AUTHORIZATION ON SCHEMA::db_owner TO dbo; --然后手動刪除就可以了。

看完上述內(nèi)容,你們對MSSQL中怎么刪除用戶時數(shù)據(jù)庫主體有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI