declare @sql varchar(8000)
select @sql = 'bcp "exec "'+@dbname+'"..myproc" queryout "'+@filepath+'text1.txt" -c -t "|" -r \n -T -S' + @@servername
exec master..xp_cmdshell @sql
我使用上面的查询将myproc
过程输出写入管道分隔的文本文件。它工作正常,但输出文件没有列标题。
如何在不对程序代码进行任何更改的情况下添加列标题。
答案 0 :(得分:0)
这有效:
-- Create Temp Table
CREATE TABLE #TMP_TABLE(COL1 varchar(50), COL2 varchar(50), COL3 varchar(100));
-- Insert Stored Proc Data in Temp Table
INSERT INTO #TMP_TABLE
EXEC dbo.myproc;
-- Select Column name + Date (Use ' not " for String delimiter)
SELECT 'COL1', 'COL2', 'COL3'
UNION ALL
SELECT * FROM #TMP_TABLE;