[SQL ] SQL Server 資料匯入錯誤

看板Database作者 (我愛慢慢跑)時間15年前 (2009/05/17 21:13), 編輯推噓2(201)
留言3則, 3人參與, 最新討論串1/2 (看更多)
ID AGE SEX Drug_Code Drug_Name Drug_dose Week .... 84222 27 F B020932221 LIDOCAINE 1 2 84222 27 F N001043100 MEFENAMIC ACID 2 2 84222 27 F B020932221 LIDOCAINE 1 4 目前為分析藥物的相關資料,資料類型如上述。 我拿到的text檔案,竟然有3.45g,大概7千多萬筆資料。 目前例如SQL server 2008匯入時,結果發生。 不過並不是欄位設定的問題,我也不知道錯誤在哪。 - 正在執行 (錯誤) 訊息 錯誤 0xc02020a1: 資料流程工作 1: 資料轉換失敗。資料行 "資料行 4" 的資料轉換傳 回狀態值 4 和狀態文字 "文字已截斷,或者一或多個字元在目標字碼頁裡沒有相符者。" 。 (SQL Server 匯入和匯出精靈) 錯誤 0xc020902a: 資料流程工作 1: 因為發生截斷,且 "輸出資料行 "資料行 4" (26)" 的截斷資料列配置指定在截斷時失敗,所以 "輸出資料行 "資料行 4" (26)" 失敗 。在指定的元件上,指定的物件發生截斷錯誤。 (SQL Server 匯入和匯出精靈) 錯誤 0xc0202092: 資料流程工作 1: 處理資料列 -6881358312017756103 上的檔案 "C:\2006.txt" 時發生錯誤。 (SQL Server 匯入和匯出精靈) 錯誤 0xc0047038: 資料流程工作 1: SSIS 錯誤碼 DTS_E_PRIMEOUTPUTFAILED。在 元件 "來源 - OPD2006_txt" (1) 上的 PrimeOutput 方法傳回錯誤碼 0xC0202092。當管線引 擎呼叫 PrimeOutput() 時,元件傳回失敗碼。在此之前可能已公佈過錯誤訊息,說明有 關此失敗的詳細資訊。 (SQL Server 匯入和匯出精靈) 所以之後就把資料轉到Mysql。先建立talbe,然後用load data轉過去是成功的。 目前預計拆成兩個Table 將ID AGE SEX 另存一個table,然後將ID Drug_Code Drug_Name Drug_dose week存成 另外一個table。再來就來研究藥物的相關性。 (1)想請問的是,為什麼會匯入錯誤呢? 在mysql 我是用load data local infile'C:/2006.txt' into table ddi fields terminated by '|'; 如果是在 SQL server 該如何下指令呢 (不知道怎麼下,所以只會用SQL server的匯入資 料) (2)另外目前在自己電腦上處理的速度有點過慢,可能之後再請朋友把資料放在伺服器處理。 想請問如果處理醫藥相關資料,大家都如何處理呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.129.77.5 ※ 編輯: shga 來自: 140.129.77.5 (05/17 21:15)

05/17 21:55, , 1F
可能是資料包含到跟欄位分隔字元相同的字元.造成parser誤判.
05/17 21:55, 1F

05/18 01:05, , 2F
文字已截斷 這訊息超級眼熟 , 通常是塞入資料>欄位大小.
05/18 01:05, 2F

05/18 21:58, , 3F
的確是我沒有把欄位加大
05/18 21:58, 3F
文章代碼(AID): #1A40s7eF (Database)
文章代碼(AID): #1A40s7eF (Database)