Sql-Server

導出到 Excel 時出現 SQL Server 2012 錯誤

  • September 25, 2018

讓我先說我對 SQL 知之甚少。我今天早些時候收到了.bak一個客戶的文件,他們希望我將它移動到一個新的數據庫(不是 SQL)。我創建了一個 SQL Server 2012 實例並將.bak文件恢復到數據庫,現在它是.mdf文件。

此過程的最後一步是將其放入 Excel 或.csv文件(新數據庫系統接受的輸入)。我嘗試按照基本的“右鍵點擊然後選擇導出和目的地”說明進行操作,但我不斷收到錯誤提示。我已複製/粘貼以下報告:

Operation stopped...

- Initializing Data Flow Task (Success)

- Initializing Connections (Success)

- Setting SQL Command (Success)

- Setting Source Connection (Success)

- Setting Destination Connection (Success)

- Validating (Success)

- Prepare for Execute (Stopped)

- Pre-execute (Stopped)

- Copying Rows (Error)
Messages
Error 0xc002f210: Preparation SQL Task 1: Executing the query "CREATE TABLE `aspnet_Profile` (
`UserId` GUID,
`..." failed with the following error: "The Microsoft Jet database engine could not find the object 'aspnet_Profile'.  Make sure the object exists and that you spell its name and the path name correctly.". Possible failure reasons: Problems with the query, "ResultSet" property not set correctly, parameters not set correctly, or connection not established correctly.
(SQL Server Import and Export Wizard)


- Post-execute (Stopped)

似乎我經常在嘗試使用 SSMS 導入/導出嚮導導出到 excel 時遇到問題,而且我從來沒有花時間學習和理解這些怪癖。

這不一定能回答您的問題,但可能是一個可行的選擇。與其導出到 excel,不如考慮導入到 excel 中。這個 YouTube 影片似乎證明了這一點:http: //youtu.be/VQrKg0GgZR0

當然,如果您需要導出大量表或經常需要執行此操作,這是一種相當乏味的方法,但它對我來說非常有效,並且在僅導出幾個表時減少了很多頭痛。

根據您的數據庫有多大(就列和表的數量而言),我認為您不會喜歡這個特定的答案。可能會發生故障,因為您首先需要創建一個骨架 XLS,其中預定義了所有相應的列和工作表(即,在 XLS 文件中:創建與所有表名匹配的工作表並創建使用表列名預定義的所有列),除非您創建某種 DTS 來為您動態建構它 - 請 DBA 專家,如果我在這裡錯了,請糾正我。

如果您不想做所有這些,而且這是一次性的,您可能需要考慮為每個表執行一個 select 語句,然後通過在 SQL 查詢中使用剪切和粘貼將該選擇的結果導出到 Excel 電子表格窗戶。請注意,在實時生產環境中,DBA 可能不贊成對錶執行全選 *。

引用自:https://dba.stackexchange.com/questions/55672