1. 程式人生 > >sql server2008匯入文字檔案

sql server2008匯入文字檔案

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

匯入的檔案是IIS FTP的日誌,很規範的一個文字檔案了。但就是找不到一個日誌分析工具,所謂的log parser 2.2並不支援FTP的日誌。最後只能先導到SQL SERVER裡。如果能導進去,也方便統計。

折騰。記錄如下: 1、亂碼問題 1)出現亂碼,需要變換內碼表,如圖所示 在這裡插入圖片描述

2)注意導到目標表的相關含中文欄位,應為nvarchar,而不是預設的varchar 在這裡插入圖片描述

設定為nvarchar,可能會有警告,選擇忽略 在這裡插入圖片描述

2、欄位不夠長內容截斷問題 有兩方面 1)讀取檔案時,欄位要足夠長 在這裡插入圖片描述

2)目標表欄位也要足夠長

3、欄位命名問題 從文字檔案匯入資料,系統可以自動建立表,但欄位名如何命名是個問題。應該採取的辦法是,將欄位名按照資料行的格式,按順序寫在第一行,讓系統自動識別。 在這裡插入圖片描述 這句話的意思就是:“系統你知道了嗎,第一行是欄位名,不是資料”

對應文字檔案

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 /