iT邦幫忙

0

如何自動抓取TXT檔轉為MSSQL資料?

請教大家
假設我的文字檔內容有A,B,C,D,E,F欄位資料,如何讓MSSQL2005自動去抓取每日產生的TXT檔案(此檔案每日會自動產生),儲存到資料庫A,B,C,D,E,F欄位內?謝謝!

12
summertw
iT邦好手 1 級 ‧ 2012-12-28 17:35:01
最佳解答

直接匯入文字檔的方法有點難用,你可以試試看下面指令

use YouDataBaseName;
GO

BULK INSERT MyTestDefaultCol2
FROM 'C:\MyTestEmptyField2-c.Dat'
WITH (
DATAFILETYPE = 'char',
FIELDTERMINATOR = ',',
KEEPNULLS
);
GO

MyTestEmptyField2-c.Dat 欄位格式
Col1,col2,col3.....coln
Col1,col2,col3.....coln

方法有點不太方便,很久沒有用了,你自己試試看...

看更多先前的回應...收起先前的回應...
wiseguy iT邦超人 1 級 ‧ 2012-12-28 17:50:59 檢舉

把上述指令寫到檔案 a.sql 裡,
把使用 SQLCMD 執行 a.sql 的指令寫到 b.bat 裡,
再把 b.bat 用工作排程排定執行時間就行了。

badboy01 iT邦新手 4 級 ‧ 2012-12-28 22:08:49 檢舉

wiseguy大大您好!
小弟因為初入門,您寫的這段內容看不太懂,小弟會好好研究一下。謝謝!
也謝謝summertw 大大提供範本。

badboy01 iT邦新手 4 級 ‧ 2012-12-28 23:31:24 檢舉

請教wiseguy大大
電腦上每天會產生一個當天日期的文字檔名,我該怎麼每天設定.bat去抓當天日期檔名自動讀入文字檔呢?謝謝!

wiseguy iT邦超人 1 級 ‧ 2012-12-29 17:54:34 檢舉

bat 檔裡,用 %date:~0,10% 這個變數就是今天日期了。它會變成 2012-12-29 這樣的日期。

badboy01 iT邦新手 4 級 ‧ 2013-01-03 21:16:00 檢舉

感謝wiseguy大大~不吝指教~~

12
suyage11q2
iT邦新手 4 級 ‧ 2012-12-29 10:34:14

表面上,有格式的純文字轉成 SQL Table 很簡單,但若碰到格式內容不規則,不使用一般程式讀入後,預先過濾,再純淨化有時會發生不可預期的結果。

8
u745253
iT邦新手 4 級 ‧ 2013-01-02 09:57:34

可以使用資料轉換(DTS)功能試試,採精靈方式一步一步設定好之後,可以加入排程設定固定時間執行

我要發表回答

立即登入回答