iT邦幫忙

0

sql2008資料匯出匯入問題

  • 分享至 

  • xImage

請教大家
這是使用sql2008,要把EXCEL資料轉到SQL2008的問題,主要是在匯入與匯出的時候,因為我已經把目的欄位調到最大了(nvarchar (max))

但是他在匯入的時候還是會出現下列的訊息:
正在執行 (錯誤)
訊息
錯誤 0xc020901c: 資料流程工作 1: 來源 - Sheet1$.輸出[Excel 來源輸出] 上的 來源 - Sheet1$.輸出[Excel 來源輸出].資料行[EIP_FactorName] 發生錯誤。傳回的資料行狀態是: "文字已截斷,或者一個或多個字元在目標字碼頁裡沒有相符者。"。

而我有把EXCEL資料刪到只剩幾筆資料,是可以匯入成功的,因此應該是資料問題,但是為什麼欄位加到最大了,還是不能匯入呢
煩請大家指點
感謝

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
月半車甫
iT邦研究生 3 級 ‧ 2014-01-16 10:28:53
最佳解答

我試驗的圖,供參考,應該是有不可字元。
改雙位元組長度應該是位元的兩倍=18才對。

除蟲方式,如Jer5173 建議,在外部環境清乾淨吧!
或是先找出是哪隻蟲,用類似ultra edit這種工具看HEX編碼,用取代方式試試看。

8
一級屠豬士
iT邦大師 1 級 ‧ 2014-01-15 13:12:08

"文字已截斷,或者一個或多個字元在目標字碼頁裡沒有相符者。"

不見得是截斷啊,或者後面的......

有些雜碼是肉眼看不見的,很多時候你認為最不可能的,就是會發生.
有經驗的會寫些過濾程式來過濾.
剛剛看費大在臉書上有推薦一篇文章,保哥有一篇辛酸血淚史.
http://blog.miniasp.com/post/2014/01/15/C-Sharp-String-Trim-ZWSP-Zero-width-space.aspx
被一個看不見的字元....
有時候網路copy一些資料,裡面會帶些怪東西的.
當然啦,這也只是一個方向.最好設法排除.

4
一尾
iT邦研究生 1 級 ‧ 2014-01-15 14:28:50

都已經nvarchar
用unitcode存文字
個人認為應該不會後者的問題
不過小雨大所提的到是一個方向
不知能否把匯不進去的格子先改成「123」之類的簡單文字再試試看

另外發問文中有提到刪到剩幾筆就能存
所以我想確認一下發問者是否用express的版本
這個東西有資料庫大小上的限制
這個是否能檢查一下

ektrontek iT邦研究生 1 級 ‧ 2014-01-15 17:28:40 檢舉

因為它筆數不多,只有400多筆的資料,我用從EXCEL直接複製後貼到SQL語法的方式,它是可以貼過去的,

但是有幾筆資料,因該是"換行"的資料它會COPY不過去,要再COPY單獨下面一行的資料,應該是excel沒辦法轉檔有"換行"的資料吧
感謝

一尾 iT邦研究生 1 級 ‧ 2014-01-16 08:54:37 檢舉

ektrontek提到:
"換行"

如果有這個想法
能否把「換行」的文字拿掉幾個試試看可否成功

8
純真的人
iT邦大師 1 級 ‧ 2014-01-15 15:10:04

我通常會先把Excel資料先拋到Access資料庫,Access資料庫再轉拋到SQL Server

Access資料庫會先幫你的規則修正~

我要發表回答

立即登入回答