将@tempTable导出到SQL Server中的.txt文件

时间:2013-09-06 05:35:49

标签: sql sql-server triggers sql-server-2012

检查我的上一个问题Export values from SQL Server to txt file。我可以用我的上一个问题将值导出到.txt文件。我想将@tempTable导出到.txt文件。我怎么能这样做?

编辑:我的要求:我想只将表中的更新数据导出到.txt文件,比如用户在现有表中插入10行新数据,我想要10行存在在.txt文件中。我在触发器中使用Inserted表来获取更新的行,当我尝试从bcp导出到.txt文件时,我不能,因为我不知道插入表的完整上下文([database]。[schema] [表名])]。。所以我决定在@tempTable中插入表数据来导出.txt文件。

我想这是export inserted table data to .txt file in SQL server

1 个答案:

答案 0 :(得分:0)

你可以简单地将内存表加载到常规表中,然后使用你已经拥有的代码进行导出

select * into queryout from @tempTable
-- your code from step 1
drop table queryout

这是一个应该执行工作的触发器的更新版本

create trigger monitorTest1 on test for insert as 
declare @sql varchar(8000); 
select * into tempTable from inserted
SELECT @sql = 'bcp "select * from test2.dbo.tempTable" queryout C:\temp\mytest.txt -c -t -T -S localhost'
exec xp_cmdshell @sql
drop table tempTable