我要将一批数据定时输出到外部文本文件中,
用DTS可以实现,但只能用固定文件名,
如何实现每次的文件名称动态生成(用时间)?
如果不用DTS,改用T_SQL命令,
又该如何实现,SQL语句怎么写?
或者还有其他的方法么?
请高手指点!
3Q!^_^
---------------------------------------------------------------
用存储过程 @table是表名,@filename是保存的文件名,@Server是服务器名称,@user是数据库用户名,@pass是数据库用户密码。
@FileName 根据时间动态生成就是了。
CREATE procedure TxtOut
@table VarChar(20),
@Filename Varchar(40),
@Server Varchar(20),
@User Varchar(10),
@Pass Varchar(10)
As
Declare @s1 as VarChar(100);
set @s1='bcp '+@table+' out '+@FileName+' -c -q -S"'+@Server+'" -U"'+@User+'" -P"'+@Pass+'"';
print @S1;
EXEC master..xp_cmdshell @s1;
GO
此外我也知道在DTS Package保存时,
选择存为VB的模块,
然后可以在VB中调用,动态形成文件名就可以了,
唉,刚刚搞定。