如何使用bcp将sql数据导出到csv [英] how to export sql data to csv using bcp
本文介绍了如何使用bcp将sql数据导出到csv的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用简单的代码
declare @sql varchar(8000)
select @sql = 'bcp ExcelAnalysis.dbo.ClearDB out c:\csv\comm.txt -c -t, -T -S '+ @@servername
exec master..xp_cmdshell @sql
但是这段代码导出了我所有的表,但是我只需要一些字段和条件 像:
but this code export all my table, but i need only some fields and conditions like:
declare @sql varchar(8000)
select @sql = 'bcp
SELECT
,[vl]
,[data]
,[URL]
,[parse]
,[Strata]
,[Id]
FROM [ExcelAnalysis].[dbo].[ClearDB] where [data]> "01.05.2017" and NOT [vl] ="mag"and NOT [vl] ="Maxximo" out c:\csv\status.txt -c -t, -T -S '+ @@servername
exec master..xp_cmdshell @sql
但是,如果我使用任何字段,则bcd会以其语法返回消息. 如何纠正?
but if i use any fields, the bcd returns message with his syntax. How do correct?
推荐答案
第一部分:在数据库中创建视图,第二部分执行语句以将结果转换为CSV.让我知道您是否需要更多帮助
First Part : Create a view in database and second part to execute statement to get results into CSV.Let me know if you need more help
use [ExcelAnalysis].
go
;
create view [dbo].[vw_ClearDB] as
SELECT
[vl]
,[data]
,[URL]
,[parse]
,[Strata]
,[Id]
FROM [dbo].[ClearDB] where [data]> "01.05.2017" and NOT [vl] ='magand'
NOT [vl] ='Maxximo'
GO
;
declare @sql varchar(8000)
select @sql = 'bcp ExcelAnalysis.dbo.vw_ClearDB out c:\csv\comm.txt -c -t, -T -S '+ @@servername
exec master..xp_cmdshell @sql
这篇关于如何使用bcp将sql数据导出到csv的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文