是否可以在存储过程中使用SQL脚本将记录导出为csv格式?
我正在尝试制定作业计划,它将记录导出到
.csv
文件中。我正在使用 SQL Server 2012。
我不想仅仅为了出口而提出小申请。这就是为什么我试图制作一个脚本并将其添加到计划中。例如,我有这样的记录
EmpID EmployeeName TotalClasses
---------------------------------
01 Zaraath 55
02 John Wick 97
文件目标位置是
D:/ExportRecords/file.csv
在SSMS中您可以将查询结果保存为CSV格式。
尝试下面的查询
-- 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:\
您可以使用 BCP(批量复制程序)内置 cli 从 SQL Server 导出数据。 它的开销低,执行速度快,并且有很多功能开关,例如 -t(创建 CSV 文件),这使得它非常适合脚本编写。
类似这样的事情。 文档也很有用
BCP dbo.YourTable out D:/ExportRecords/file.csv -c -t