此數據庫沒有有效全部者「的解決,我很受用

以前用數據庫建立關係圖,結果報了這個錯誤。而後搜索之。html

轉自http://www.cnblogs.com/muer/archive/2010/04/14/1711778.htmlsql

此數據庫沒有有效全部者,所以沒法安裝數據庫關係圖支持對象。若要繼續,請首先使用「數據庫屬性」對話框的「文件」頁或Alter AUTHORIZATION語句將數據庫全部者設置爲有效登陸名,而後再添加數據庫關係圖支持對象。 
  按照第一種方式更改怎麼也不行,而且文件的全部者也是sa。在csdn中找了半天,有個同志給出了第二種解法,使用ssms。具體在SSMS中運行如下命令: 
  Alter AUTHORIZATION ON database::mydbname TO sa 
  把mydbname修改成實際的數據庫名稱,就能夠把全部者設置爲sa了。 
  通過一番努力也沒找到ssms[呵呵,我在新建查詢裏執行成功,但沒解決問題],哎。這個也泡湯了。心中有了從新格系統的想法。 
  想象一下格系統的麻煩,隨後有百度。在一個論壇中發現了這樣的解決辦法: 
  解決方法以下: 
  一、設置兼容級別爲90(2005爲90)(2000爲80) 
  use master 
  GO 
  EXEC dbo.sp_dbcmptlevel @dbname='數據庫名', @new_cmptlevel=90 
  GO 數據庫

  以前運行這段代碼會報錯,緣由是 use master 多是用了中文,我本身敲打一遍,經過。
  [這條命令執行完畢:報「DBCC 執行完畢。若是 DBCC 輸出了錯誤信息,請與系統管理員聯繫」,無論它哦,接下來點擊「數據庫關係圖」,報「此數據庫缺乏一個或多個使用數據庫關係圖所需的支持對象,是否建立」,選擇「是」,問題解決了] 
  或是選擇你還原的數據庫,點右鍵,選屬性->選項->兼容級別,選擇sqlserver2005(90) 而後肯定。(呵呵,我就是用這個方法解決的。呵呵,小小的高興一下) 
  這時,你在該數據庫下展開「數據庫關係圖」節點時會有個提示,"此數據庫缺乏一個或多個使用數據庫關係圖所需的支持對象,是否建立",選擇「是」便可。 
  二、經過以上的方法操做,若是問題依然存在的話,按下列方法繼續 
  選擇你的數據庫,而後選擇"安全性"->"用戶",選擇dbo,打開屬性頁,如登陸名爲空的話,新建查詢,而後 
  use [你的數據庫名] 
  EXEC sp_changedbowner 'sa' 
  執行成功後,你再選擇"數據庫關係圖"節點,時提示 「此數據庫缺乏一個或多個使用數據庫關係圖所需的支持對象,是否建立",選擇「是」便可。 就能夠看到原先建的關係圖了。 安全

     若是執行代碼不經過,那多是編碼問題,自行敲打即可經過。sqlserver

相關文章
相關標籤/搜索