簡體   English   中英

SQL Server導入和導出向導

[英]SQL Server Import and Export wizard

我正在將CSV文件導入到現有數據庫中,並且遇到一些錯誤

  • 執行(錯誤)消息錯誤0xc02020a1:數據流任務1:數據轉換失敗。 列“主管”的數據轉換返回狀態值4和狀態文本“文本被截斷或目標代碼頁中的一個或多個字符不匹配”。 (SQL Server導入和導出向導)

錯誤0xc020902a:數據流任務1:“源-loc800members_csv.Outputs [平面文件源輸出] .Columns [主管]”由於發生截斷而失敗,並且截斷行位於“源-loc800members_csv.Outputs [平面文件源輸出]”上.Columns [supervisor]“指定截斷失敗。 在指定組件的指定對象上發生了截斷錯誤。 (SQL Server導入和導出向導)

錯誤0xc0202092:數據流任務1:在數據行83上處理文件“ C:\\ Users \\ administrator.WDS \\ Desktop \\ loc800members.csv”時發生錯誤。(SQL Server導入和導出向導)

錯誤0xc0047038:數據流任務1:SSIS錯誤代碼DTS_E_PRIMEOUTPUTFAILED。 Source-loc800members_csv上的PrimeOutput方法返回了錯誤代碼0xC0202092。 當管道引擎調用PrimeOutput()時,該組件返回失敗代碼。 故障代碼的含義由組件定義,但是錯誤是致命的,並且管道停止執行。 在此之前可能會發布錯誤消息,其中包含有關失敗的更多信息。 (SQL Server導入和導出向導)

這是我要導入的表的示例。

http://i.imgur.com/4zsJqgI.jpg

這是主管字段上的屬性

http://i.imgur.com/r5EonQc.jpg

這是我要導入的表中的列。

i.imgur.com/mD5KlCC.jpg

從外觀上看,數據庫中的字段不夠長,無法支持您要導入的數據。 您需要縮短數據或(可能更理想的情況)增加數據庫中字段的大小。 看來它來自“主管”列(盡管您可能想仔細檢查其他列以確保它也不會在其他地方發生)。

簡而言之,發生的事情是它試圖按原樣導入所有內容,並最終在csv文件中命中了一個太長的字段,無法正確復制。 而不是砍掉剩余的數據(截斷),而是拋出一個錯誤並有效地放棄了。 我猜數據庫中的字段是具有設置大小的varchar或nvarchar類型。 您應該只需要在數據庫中增加它的大小就可以提取數據。您可能還需要修改相關的存儲過程(如果有的話),因此數據不會在那里被截斷。

您可以在向導中更改字段大小,默認值為50個字符,通常太小。

在指定了文件位置並選中了要更改的所有格式后,在“選擇數據源”屏幕上,單擊“高級”。 對於每個字段,您將看到數據類型和輸出列寬。 將其更改為更大的值。 我通常在第一次查看文件時使用500,直到我看到實際的大小為止。 要一次更改所有列的大小,請突出顯示第一列的名稱,然后按住Shift鍵並單擊最后一列。 然后更改大小。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM