我正在创建一个包含存储过程结果的txt文件。即使我有SET NOCOUNT ON,输出txt文件仍然包含(XXX行受影响)。
我查看是否在使用xp_cmdshell运行查询时设置了命令行选项,但没有看到。
---------SQL proc------
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET NOCOUNT ON
GO
ALTER proc [dbo].[sproc_XXXXXXX]
--- uses parameters selects data into final temp table... ---
---------------------------------- Drop existing temp table-----------
IF OBJECT_ID ('tempdb..##tempResults') IS NOT NULL DROP TABLE ##tempResults;
Select Data
into ##tempResults
From #tmpxData
------------------------------------------Export file ---------------------
DECLARE @SQL VARCHAR(8000)
DECLARE @Filename VARCHAR(300)
SELECT @Filename = 'ExportAAA-' + cast(@FileNumber as varchar(4)) + '.txt'
SELECT @SQL = 'sqlcmd -E -S SERVER3 -d ' + DB_NAME() + ' -o "\\SERVER3\Public\'
+ @Filename + '" -Q "SELECT Data from ##tempResults;" ' + '-h -1'
EXEC xp_cmdshell @SQL