1. 程式人生 > >將TXT檔案 匯入 sqlserver資料庫

將TXT檔案 匯入 sqlserver資料庫

情景一:

              資料庫已存在舊錶名 old_table,列名old_column_name。

              將TXT檔案匯入資料庫已存在舊錶old_table中,匯入過程中需注意

              資料來源中列名可全部不修改 或 全部修改列名為old_column_name(與old_table中列名一致)。

情景二:將源TXT檔案匯入資料庫,預設時以源TXT檔名建新表sourceFile_table;匯入過程中需修改資料來源中列名為

               custom_column_name(自定義列名)

資料庫右鍵》任務》匯入資料(I)...》     --或者--     開始》程式》Microsoft Visual Studio2008》匯入和匯出資料(**位)》

SQLServer匯入和匯出嚮導》

下一步》選擇資料來源

資料來源:     平面檔案源

常規

檔名(i):                      瀏覽選擇TXT檔案

區域設定(L):                 中文

內碼表(C):                  65001(UTF-8) :  源TXT檔案編碼方式為UTF-8

                                     936(ANSI/OEM-簡體中文 GBK):  源TXT檔案編碼方式為ANSI

格式(M):                       帶分隔符

文字限定符(Q):             <無>

標題行分隔符(R):         {CR}{LF}

要跳過的標題行數(S):  可自定義

行分隔符(O):                {CR}{LF}

列分隔符(C):                製表符{t}

高階

列名

Name

列名(可修改)

ColumnDelimiter

製表符{t}

DataType

據目標表的欄位型別定義

OutputColumnWidth

可自定義

TextQualified

True

預覽

要跳過的資料行數(A):  可自定義

下一步》選擇目標

目標(D):             SQL Server Native Client 10.0

伺服器名稱(S):   需手動輸入“目標伺服器名稱”

使用SQL Server 身份驗證(Q)

    使用者名稱(U):   需手動輸入

    密碼(P):         需手動輸入

資料庫(T):         選擇已建的資料庫

下一步》選擇源表和源檢視

表和檢視(T):

目標

雙擊》列對映(可編輯)》當主鍵id自增時,選中 啟用標識插入

單擊》下拉框》可選擇目標表為(已存在表old_table  或者

預設時以源TXT檔名sourceFile_table建立新表)

》下一步》下一步》完成

-------------------------------------------問題一:將源TXT檔案sourceFile_table.txt,匯入資料庫已存在表old_table

原因:源TXT檔案sourceFile_table.txt中資料型別為varchar(50), 資料庫已存在表old_table中資料型別為nvarchar(50)

解決方法:修改表old_table中,對應欄位資料型別為varchar(50)

-------------------------------------------問題二:將TXT檔案  匯入  sqlserver資料庫後,欄位值中文亂碼

原因:源TXT檔案編碼方式,和資料庫編碼方式不一致

解決方法:檔案轉碼

方法1.源TXT檔案》右鍵開啟》檔案另存為》編碼(E):**》儲存

方法2.源TXT檔案sourceFile_table.txt、備份檔案backupFile_table.txt》將原始檔使用轉碼工具轉換》將備份檔案中資料複製到原始檔中。

          PS:此GBK—UTF-8轉碼工具缺點(檔案轉碼並清空內容_需備份原檔案資料)

          轉碼工具下載地址連結:https://pan.baidu.com/s/1m58zzI5ope9dIEOBnMlGXg 密碼:gin0

例項演示:將sourceFile_table.txt資料 匯入 資料庫表中
源TXT檔案sourceFile_table.txt編碼  ANSI
資料庫編碼                   GBK

 

——————————————————————————情景一: 資料庫已存在舊錶名 old_table

資料庫右鍵》任務》匯入資料(I)...》     --或者--      開始》程式》Microsoft Visual Studio2008》匯入和匯出資料(**位)》

SQLServer匯入和匯出嚮導》

下一步》選擇資料來源

下一步》選擇目標

下一步》選擇源表和源檢視

》下一步》下一步》完成

資料庫表dbo.old_table 右鍵》選擇前1000行(W) 》

————————————————情景二: 將源TXT檔案sourceFile_table.txt匯入資料庫後,生成新表sourceFile_table

資料庫右鍵》任務》匯入資料(I)...》     --或者--      開始》程式》Microsoft Visual Studio2008》匯入和匯出資料(**位)》

SQLServer匯入和匯出嚮導》

下一步》選擇資料來源

下一步》選擇目標

下一步》選擇源表和源檢視

》下一步》下一步》完成

資料庫表dbo.sourceFile_table 右鍵》選擇前1000行(W) 》