海南(nán)世紀雲圖網絡科技有限公司
咨詢熱線:400-822-8458 客戶服務:0898-32183600

SQL Server 導入/導出 錯誤排查

發表于:2011-11-02 00:00:00來源:SOUAB.COM人氣:3374

如果提示導入失敗,出現圖14情況,這時不要急着點"完成"關閉窗口。雙擊中(zhōng)間的"出現錯誤"會出現詳細的失敗原因。

圖14:
點擊查看原圖

錯誤原因一(yī)、沒安裝SP3補丁

如果是出現如圖15的報錯原因,那麽就很有可能是因爲您本機的SQL Server還沒有打SP3補丁。

圖15:
點擊查看原圖

如何查看是否已打了SP3補丁呢?右鍵點擊本地SQL Server屬性,彈出圖16窗口,查看"産品版本"一(yī)行。
像以下(xià)圖顯示8.00.760(SP3)說明已經打過補丁。如果您的企業管理器顯示的版本要比這個小(xiǎo),那就是沒打SP3補丁。
請安裝SQL Server SP3補丁後再重試。

圖16:
點擊查看原圖

錯誤原因二、對象屬性沖突

如果出現圖17情況,那麽應該就是您本地數據庫的表/視圖/存儲過程的屬主和服務器上數據庫默認用戶不一(yī)緻。
服務器的用戶一(yī)般是:數據庫名+'_f',如我(wǒ)(wǒ)的數據庫名稱是testdb,則我(wǒ)(wǒ)在服務器上使用的數據庫用戶名就是testdb_f。
如圖18,我(wǒ)(wǒ)本地的表屬主是testuser,與服務器數據庫用戶名不一(yī)緻,因此導入過程出錯。

圖17:
點擊查看原圖

圖18:
點擊查看原圖

解決方法是:
應該先把本地的所有表/視圖/存儲過程屬主都改爲dbo或testdb_f(後者需要在本地創建起相應用戶。
建議創建,否則以後想從服務器上導出數據時同樣會因爲這個問題導出錯誤),再重新進行導入/導出。

打開(kāi)SQL查詢分(fēn)析器,運行以下(xià)命令進行批量修改表屬主爲dbo:

SQL代碼
  1. exec sp_MSForEachTable 'sp_changeobjectowner "?", "dbo"'   

運行成功後表屬主會改變成如圖19:

圖19:
點擊查看原圖

如果需要修改視圖/存儲過程,則麻煩了點。
下(xià)面有個方法可以實現:

一(yī)、先在master創建一(yī)個sp_MSforeachObject存儲過程,命令如下(xià):

SQL代碼
  1. USE MASTER   
  2.   
  3. GO   
  4.   
  5. CREATE proc sp_MSforeachObject   
  6.   
  7. @objectType int=1,   
  8.   
  9. @command1 nvarchar(2000),    
  10.   
  11. @replacechar nchar(1) = N'?',    
  12.   
  13. @command2 nvarchar(2000) = null,   
  14.   
  15.     @command3 nvarchar(2000) = null,    
  16.   
  17. @whereand nvarchar(2000) = null,   
  18.   
  19. @precommand nvarchar(2000) = null,    
  20.   
  21. @postcommand nvarchar(2000) = null  
  22.   
  23. as  
  24.   
  25. /* This proc returns one or more rows for each table (optionally, matching @where), with each table defaulting to its    
  26.   
  27. own result set */   
  28.   
  29. /* @precommand and @postcommand may be used to force a single result set via a temp table. */   
  30.   
  31. /* Preprocessor won't replace within quotes so have to use str(). */  
  32.  
  33. declare @mscat nvarchar(12)  
  34.  
  35. select @mscat = ltrim(str(convert(int, 0x0002)))  
  36.  
  37. if (@precommand is not null)  
  38.  
  39.   exec(@precommand)  
  40.  
  41. /* Defined  @isobject for save object type */  
  42.  <

文章整理: 世紀雲圖  /

以上信息與文章正文是不可分(fēn)割的一(yī)部分(fēn),如果您要轉載本文章,請保留以上信息,謝謝!

版權申明:本站文章部份來自網絡,如有侵權,請聯系我(wǒ)(wǒ)們,我(wǒ)(wǒ)們收到後立即删除,謝謝!

特别注意:本站部份轉載文章言論不代表本站觀點,本站所提供的攝影照片,插畫,設計作品,如需使用,請與原作者聯系,版權歸原作者所有。

上一(yī)篇:公司地址變更通知(zhī) 下(xià)一(yī)篇:SQL Server 導入/導出教程
微信
網站建設
軟件業務
網絡營銷
400電(diàn)話(huà)