2016-06-28 13 views
0

次のクエリを使用して、SQLクエリによって返された.CSVファイル内のすべての結果を保存しています。結果をcsvファイルに出力

EXEC master..xp_cmdshell 'SQLCMD -S . -E -Q "SELECT TOP 10 
    customercode, customername, businessdescription, ctypecode 
FROM ArchivalDB.dbo.customer" -s"," -b -o d:\data\myoutput1.csv', no_output 

これは機能しますが、csvファイルの出力よりも私のカラムの連絡先 '、'のいずれかが邪魔になる場合。

私は-sパラメータで何かをしなければならないことを知っています。

誰でもこの件についてお手伝いできますか?

おかげ

答えて

0

あなたがスペースやその他の区切り文字でcommaを削除[OK]をしている場合、その後、あなたのSQLクエリは

SELECT TOP 10 
    replace(customercode,',',' '), 
    replace(customername,',',' '), 
    replace(businessdescription,',',' '), 
    replace(ctypecode,',',' ') 
FROM ArchivalDB.dbo.customer 
+0

に私はすべての私の保存されたクエリを変更する必要があります。この方法を変更。同じ結果を達成する他の方法はありますか? –

+0

別の区切り文字( '〜'や '|'など)を選んで、 '-s'でそれを使うことができます。ファイルが作成されたら、スペースやその他の値で 'comma'を置き換え、区切り文字を' comma'で置き換えます。しかし、それは既存のプロセスのオーバーヘッドになり、時間がかかります。 – Utsav

関連する問題