我需要将我的sql查询结果转储到文本文件中。我创建了以下查询,
DECLARE @cmd VARCHAR(2048)
SET @cmd = 'OSQL -Slocalhost '
+ ' -UCRN370 -PCRN370'
+ ' -Q"SELECT TOP 5 GageId FROM EwQMS370..msgages"'
+ ' -oc:\authors.csv'
EXEC master..xp_cmdshell @cmd, NO_OUTPUT
以上查询创建了CSV文件authors.CSV。但是文件的内容格式不正确。他们展示了一些垃圾数据。
我需要创建一个格式化的csv文件。
答案 0 :(得分:0)
您可以使用BCP,CLR,SSIS或DTS执行此操作,因为您的示例BCP可能是最合适的。
BCP EwQMS370..msgages out c:\Authors.csv -c -t, -T –S<servername>
您仍然可以通过xp_cmdshell以与示例中相同的方式运行此操作;只有BCP会为您完成繁重的CSV格式化。 Booksonline将更详细地介绍BCP。如果您需要从表中选择较少的列,请创建一个视图以限制数据。