bcp
*vs BULK INSERT
*是 DB Engine 指令,bcp 是 OS 命令
*BULK INSERT只能匯入,不能匯出
*sql server2012以下版本不能import utf 8檔, 要轉unicode(utf 16)
產出bcp原生格式
--data export
bcp [abc].[dbo].[act] out "Z:\act.bcp" -N -T -U"XXX" -P"XXX" -S"serverA" -e"Z:\act_error.txt"
--產出table格式
bcp [abc].[dbo].[act] format nul -f "Z:\act.xml" -x -n -T -U"XXX" -P"XXX" -S"serverA"
--data import
bcp [abc].dbo.act in "Z:\act.bcp" -f "Z:\act.xml" -T -S"serverA"
產出csv格式
--data export
PS: /t, -->以逗號做分隔
bcp "SELECT [dept_id] FROM [abc].[dbo].[edm];" queryout D:\edm.csv /w /t, -T
--產出table格式
bcp [abc].[dbo].[edm] format nul -c -t, -f D:\edm.Fmt -T
--data import
PS:CSV檔資料, 一行只能當一個欄位吃進去(指定fmt也一樣)
bcp [abc].[dbo].[edm] in D:\edm.csv -f D:\edm.fmt -c -t, -T
bcp [abc].[dbo].[edm] in D:\edm.csv -w -t, -T