[SQL ] SQL使用bcp匯出csv的問題

作者: elic2577 (pupx1000你他媽雜碎)   2020-07-08 11:21:47
資料庫名稱:MS SQL
資料庫版本:2014
內容/問題描述:
create table user1
(id int, acct varchar(50), name varchar(50))
insert into user1
values (1, 'A001', '邱小姐')
, (2, 'A002', '呂小姐')
, (3, 'A003', '陳先生')
, (4, 'A004', '蔡先生')
, (5, 'A005', '黃先生')
想匯出每一行的每個字串都被""雙引號包住的csv
想要的結果是:
"1","A001","邱小姐"
"2","A002","呂小姐"
"3","A003","陳先生"
"4","A004","蔡先生"
"5","A005","黃先生"
使用bcp的方式
bcp "select * from dbo.user1" queryout "D:\user.csv" -t"\",\"" -r"\"\n\"" -S
192.168.0.1 -d UserDB -U sa -P password -w
但出來的結果是
1","A001","邱小姐"
"2","A002","呂小姐"
"3","A003","陳先生"
"4","A004","蔡先生"
"5","A005","黃先生"
"
差一點點,第一列的"不見了,好像跑去最後一列
請問我該怎麼調整最好呢?
非常感謝
作者: cancelpc (阿吉)   2020-07-08 12:53:00
為啥用 /t,用 -q 才對吧
作者: retsamsu   2020-07-08 13:32:00
-t "," -q
作者: cancelpc (阿吉)   2020-07-08 14:45:00
sql 遇到欄位用 QUOTENAME(name,'"')-t 只會加在欄位後面,當然前面會少了"

Links booklink

Contact Us: admin [ a t ] ucptt.com