iT邦幫忙

8

dts import data problem ( excel into database )

當我們有需求將 Excel 表的資料匯入 SQL Server 時,我們最簡便的方法當然是透過 DTS Package.

不知道您有沒有遇過這樣的問題?

在 Excel 中有些欄位的資料是 數值,匯入的過程也都正常,可是到資料庫一看,卻全都是 null ?!
很納悶,怎麼試也試不出來,明明資料都正確,格式也都對啊?

Google 一下,發現這真的是 DTS Package 的問題

dts import data problem ( excel into database )

原來在 import Excel 資料時,Excel 會自動指定資料的型態,如果前 8 個 rows 是空白或字串時,這個欄位就不會被當做數值型態,所以非數值資料轉成數值欄位時,都會變成 null。

那怎麼解決呢?

只要在第一個 row 將值填入 0,這樣 Excel 資料 import 進來就不會錯了。(當然您也可以試一下原文提供的變更 registry 的方法)


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
海綿寶寶
iT邦大神 1 級 ‧ 2009-03-10 15:51:42

最近快被Sales氣死了
明明是B2B公司
卻在外面到處跟客戶吹牛
資料交換很簡單
不用EDI不用XML不用文字檔
都用EXCEL檔就好了

如果EXCEL檔那麼好用
那叫那些發明EDI/XML的人都回家吃自己好了

不懂又愛亂講(氣)

Excel是個很好用的軟體,我個人也很喜歡
但是每個軟體有其適用的地方
Excel在財務、表格、資料輸入等方面都很方便

但是直接拿Excel檔案來做資料交換
就是一件令人吐血的事
(最常碰到的大概就是文字的前置零和數字格式的問題)

0
pantc328
iT邦高手 1 級 ‧ 2009-03-10 17:46:48

Excel 很好用了.
怎麼東西怎麼用,看~需求.
現在還有很多舊系統用,;.Tab,....作Column,Row的區隔,用文字檔去交換.

0
jamesjan
iT邦高手 1 級 ‧ 2009-03-10 18:21:37

啊...我好像沒有提到資料交換的部分溜...

用 Excel 做資料交換,檔案被 Copy 走怎麼辦?

一般在 in-house 的作法,格式隨便自己怎麼訂都沒關係
要走到外部,沒有公用的標準,沒有國際通行的規範
沒有第三方公正機制,或是 TPA (Trading Partner Agreement)
如何保證交易的正確性,出問題責任是在哪一方?

沒事
我只是藉機發發牢騷罷了 @_@...

0

避開程式規範或繁瑣巨集與其他干擾,有時單純確實是最好的工具,但是因為避開規範後卻也最容易因疏忽而釀至災禍,進退須有據就會是好!
謝謝分享咯!

我要留言

立即登入留言