如何使用存储过程将SQL数据记录导出为CSV格式?

问题描述 投票:0回答:2

是否可以在存储过程中使用SQL脚本将记录导出为csv格式?

我正在尝试制定作业计划,它将记录导出到

.csv
文件中。我正在使用 SQL Server 2012。

我不想仅仅为了出口而提出小申请。这就是为什么我试图制作一个脚本并将其添加到计划中。例如,我有这样的记录

EmpID  EmployeeName  TotalClasses 
---------------------------------
01     Zaraath        55
02     John Wick      97

文件目标位置是

D:/ExportRecords/file.csv

sql-server export ssms export-to-csv
2个回答
0
投票

在SSMS中您可以将查询结果保存为CSV格式。

enter image description here

尝试下面的查询

-- To allow advanced options to be changed.  
EXECUTE sp_configure 'show advanced options', 1;  
GO  
-- To update the currently configured value for advanced options.  
RECONFIGURE;  
GO  
-- To enable the feature.  
EXECUTE sp_configure 'xp_cmdshell', 1;  
GO  
-- To update the currently configured value for this feature.  
RECONFIGURE;  
GO 

declare @sql varchar(8000)
select @sql = 'bcp "select * from DatabaseName..TableName" queryout d:\FileName.csv -c -t, -T -S' + @@servername
exec master..xp_cmdshell @sql

您必须在

FileName.csv
 中创建空 
D:\


0
投票

您可以使用 BCP(批量复制程序)内置 cli 从 SQL Server 导出数据。 它的开销低,执行速度快,并且有很多功能开关,例如 -t(创建 CSV 文件),这使得它非常适合脚本编写。

类似这样的事情。 文档也很有用

BCP dbo.YourTable out D:/ExportRecords/file.csv -c -t
© www.soinside.com 2019 - 2024. All rights reserved.