天天看點

sql server2008導入文本檔案

用sql server導入文本檔案到資料庫,我印象中是很麻煩的。多年不用sql server之後,今日再試試,果不其然,真TM麻煩啊。

導入的檔案是IIS FTP的日志,很規範的一個文本檔案了。但就是找不到一個日志分析工具,所謂的log parser 2.2并不支援FTP的日志。最後隻能先導到SQL SERVER裡。如果能導進去,也友善統計。

折騰。記錄如下:

1、亂碼問題

1)出現亂碼,需要變換代碼頁,如圖所示

sql server2008導入文本檔案

2)注意導到目标表的相關含中文字段,應為nvarchar,而不是預設的varchar

sql server2008導入文本檔案

設定為nvarchar,可能會有警告,選擇忽略

sql server2008導入文本檔案

2、字段不夠長内容截斷問題

有兩方面

1)讀取檔案時,字段要足夠長

sql server2008導入文本檔案

2)目标表字段也要足夠長3、字段命名問題

從文本檔案導入資料,系統可以自動建立表,但字段名如何命名是個問題。應該采取的辦法是,将字段名按照資料行的格式,按順序寫在第一行,讓系統自動識别。

sql server2008導入文本檔案
date time c-ip cs-method cs-uri-stem sc-status sc-win32-status sc-substatus sc-bytes cs-bytes time-taken x-session x-fullpath
2018-10-11 03:58:06 30.3.4.105 ControlChannelOpened - - 0 0 0 0 0 17034547-ee1d-44f5-b27c-ed72f4ef2898 -
2018-10-11 03:58:06 30.3.4.105 USER administrator 331 0 0 42 20 0 17034547-ee1d-44f5-b27c-ed72f4ef2898 -
2018-10-11 03:58:06 30.3.4.105 PASS *** 230 0 0 21 19 0 17034547-ee1d-44f5-b27c-ed72f4ef2898 /