sqlserver匯入匯出文字檔案

zhangsharp20發表於2016-06-15
檔案格式如下:
1$一地在要工$1$修改長度可以用(修改長度,要保證不短與已有資料,以保證原有資料不出錯)
2$一地在要工$0$修改長度可以用(修改長度,要保證不短與已有資料,以保證原有資料不出錯)
3$一地在要工$1$修改長度可以用(修改長度,要保證不短與已有資料,以保證原有資料不出錯)
4$一地在要工$0$修改長度可以用(修改長度,要保證不短與已有資料,以保證原有資料不出錯)
5$一地在要工$1$修改長度可以用(修改長度,要保證不短與已有資料,以保證原有資料不出錯)
6$一地在要工$0$修改長度可以用(修改長度,要保證不短與已有資料,以保證原有資料不出錯)
7$一地在要工$1$修改長度可以用(修改長度,要保證不短與已有資料,以保證原有資料不出錯)
8$一地在要工$0$修改長度可以用(修改長度,要保證不短與已有資料,以保證原有資料不出錯)
9$一地在要工$1$修改長度可以用(修改長度,要保證不短與已有資料,以保證原有資料不出錯)

...

1、使用bcp工具
D:\>bcp test.dbo.t_test in d:\t_test.txt -T -c -t$


開始複製...
已向 SQL Server 傳送了 1000 行。總共傳送了: 1000
已向 SQL Server 傳送了 1000 行。總共傳送了: 2000
已向 SQL Server 傳送了 1000 行。總共傳送了: 3000
已向 SQL Server 傳送了 1000 行。總共傳送了: 4000
已向 SQL Server 傳送了 1000 行。總共傳送了: 5000
已向 SQL Server 傳送了 1000 行。總共傳送了: 6000
已向 SQL Server 傳送了 1000 行。總共傳送了: 7000
已向 SQL Server 傳送了 1000 行。總共傳送了: 8000
已向 SQL Server 傳送了 1000 行。總共傳送了: 9000
已向 SQL Server 傳送了 1000 行。總共傳送了: 10000


已複製 10000 行。
網路資料包大小(位元組): 4096
總時鐘時間(毫秒)     : 3042   平均值: (每秒 3287.31 行。)

  1. -T -- 指定資料庫連線可信,即使用Windows身份登入  
  2. -c引數指定資料儲存方式為字元,並預設指定'\t'作為欄位間隔符;'\n'作為行間隔符
  3. [-t 欄位間隔符] [-r 行間隔符號]  -- -t與-r引數可選,用於覆蓋-c指定的預設間隔符 


2、使用bulk工具
Bulk insert test.dbo.t_test
from 'd:\t_test.txt' 
with  
(   
FirstRow = 1,
FIELDTERMINATOR = '$'
--DATAFILETYPE='widechar' 
)  


點選(此處)摺疊或開啟

  1. FIRSTROW = first_row  指定要載入的第一行的行號。預設值是指定資料檔案中的第一行。FIRSTROW 從 1 開始。
  2. FIELDTERMINATOR = 'field_terminator'  指定要用於 charwidechar 資料檔案的欄位終止符。預設的欄位終止符是 \t(製表符)
  3. DATAFILETYPE = { 'char' | 'native' | 'widechar' | 'widenative'指定 BULK INSERT 使用指定的資料檔案型別值執行匯入操作。
匯出的話只需要使用BCP工具將上面的in改成OUT即可。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29802484/viewspace-2120221/,如需轉載,請註明出處,否則將追究法律責任。

相關文章