日期:2014-05-19  浏览次数:20441 次

请教一条导出txt格式文件的SQL语句
语句如下:
EXEC   master..xp_cmdshell   'bcp   "EXECUTE   RecDB.dbo.eHR_MJDataDailyReport "   queryout   C:\MJ_DoorData.txt   -c   -S172.21.128.110   -Usa   -P '

这条语句可以正确执行,实现将查询出的数据导出TXT,注意文件名:MJ_DoorData.txt,因为每天要导一次,所以我想每天文件名导出这样的格式:MJ_DoorData20070606.txt、MJ_DoorData20070607.txt等等,不知道该如何实现?我试了以下的写法,可是不对:
EXEC   master..xp_cmdshell   'bcp   "EXECUTE   RecDB.dbo.eHR_MJDataDailyReport "   queryout   C:\MJ_DoorData " 'select   CONVERT(VARCHAR(10),getdate(),112) ' ".txt   -c   -S172.21.128.110   -Usa   -P '
    希望哪位可以指点我一下,谢谢啦!

------解决方案--------------------
declare @sql varchar(100)
set @sql = 'bcp "EXECUTE RecDB.dbo.eHR_MJDataDailyReport " queryout C:\MJ_DoorData '+CONVERT(VARCHAR(10),getdate(),112)+ '.txt -c -S172.21.128.110 -Usa -P '
select @sql
EXEC master..xp_cmdshell @sql