服務熱線
153 8323 9821
方法一:
我還原了一個別人的數據庫后來準備建一個跟他一樣的用戶的時候我想刪除以前的用戶,但是卻出來一個這樣的提示 "因為選定的用戶擁有對象,所以無法除去該用戶",問題解決了,總結一下經驗,操作步驟:
數據庫服務器==>屬性==>服務器設置選項==>選擇"允許對系統目錄直接進行修改==>確定==>打開數據庫==>表==>sysusers==>刪除用戶==>將先前選取的'允許對系統目錄直接進行修改'選項去掉==>確定==>重新建立用戶"操作步驟圖片簡介如下:



方法二:
對mssql出現選定的用戶擁有對象而無法刪除的處理
--將下面的代碼在查詢分析器中執行,修改修改庫名
use 你的庫名
go
declare tb cursor local
for
Select 'sp_changeobjectowner '
+quotename(
+quotename(user_name(uid))
+'.'+quotename(name),'''')
+',''dbo'''
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,然后現在數據庫的用戶中把孤立用戶刪除,再到安全中刪除登陸信息。
并可以再依次創建新用戶了