使用 BCP Utility 动态创建文件

Dynamic file creation with BCP Utility

在删除记录之前,我正在使用 BCP 实用工具将记录从 table 中复制出来。 该功能工作正常,但是,我需要在每次删除时将记录复制到一个新文件,而不是覆盖同一个文件(就像现在一样)。 它可能正在创建一个以时间戳为前缀或类似内容的新文件。 有任何想法吗? 我的代码

Declare @cmd varchar(1000) = 'bcp "select * from ##DeletedRecords" queryout 
"C:\Delete\DeletedRecord.txt" -t, -c -T'
print @cmd
EXEC master..XP_CMDSHELL @cmd  

只需将日期和时间附加到文件名,相应地更改 BCP 命令中的文件名

示例:

Declare @cmd varchar(1000);

select @cmd = 'bcp "select * from ##DeletedRecords" queryout '
            + '"C:\Delete\DeletedRecord' 
            + convert(varchar(10), getdate(), 112)    -- YYYYMMDD
            + replace(convert(varchar(10), getdate(), 108), ':', '') -- HHMMSS
            + '.txt" -t, -c -T'

print @cmd

EXEC master..XP_CMDSHELL @cmd