我的程序现在表结构完全一致,分部的数据不定时的每月两次传递到总部,需要使用DTS来实现更新数据传递;
解决方案 »
- 怎样查看SQL中死锁的进程(有多少钟方法),及该进程执行的内容?怎样可以减少死锁?
- 请问这段select有没有更有效的写法
- 从表A插入记录到表B,出现错误,请帮忙!
- 最近数据库频繁出现的错误,请各位达人帮忙看一下,是什么原因
- ================> 高分求 SQLServer 2000 数据库优化方案 <===============
- 根据一张表查询另张表问题
- 通过软件删除的记录能够恢复?
- sql语法中{}符号是什么意思
- 急!!! 装了一个新的SQL SERVER 2005,以前的数据库(也是2005,版本好像是pre-....)不能Attach
- SQL导出excel日期溢出问题
- 怎样得到一个临时表结果集合的列名
- 全文检索的问题: 设置"跟踪"以后还需"调度"么?
2、定期执行DTSRUN
例子:访问服务器ZHJH上的forecast库中的t_3表,使之更新本地服务器ele_dss库的表t_3中1993年的数据
用存储过程实现:(@time_data 代表更新数据的时间;;@l_server 代表源数据库)
create proc data_trans_remote
@time_data char(6),
@l_server char(10)
as
SET ANSI_NULL_DFLT_ON on --注意
SET ANSI_WARNINGS on declare @a varchar(8000)
declare @b varchar(8000)
set @b='Driver={SQL Server};Server='+@l_server+';UID=sa;PWD=sa'
EXEC sp_addlinkedserver 'dts_frommis','','SQLOLEDB',NULL,NULL,@b
EXEC sp_addlinkedsrvlogin 'dts_frommis','False','sa','sa','sa' delete from ele_dss..t_mid_data where ISBNY=@time_data set @a='insert into ele_dss.dbo.t_mid_data
select * from dts_frommis.elec_report.dbo.t_base_data_1
where ISBNY='''+@time_data+''''
exec(@a)EXEC sp_droplinkedsrvlogin @rmtsrvname = 'dts_frommis', @locallogin = 'sa'
EXEC sp_dropserver 'dts_frommis'GO注意:1、只能在查询分析器中建立此存储过程,而不能在企业管理器中建立,主要是由于
ANSI_NULL 和 ANSI_WARNINGS 的问题,
2、'dts_frommis'是别名,自己命名就行,别的问题看看帮助就成了
然后使用批处理文件执行
dtsrun.exe /Fc:\tran\下传.dts /Nhq /Lc:\tran\hq.log hq是dts中的包
执行此批处理文件就行
不过我不知道怎么获得dtsrun的返回运行失败还是成功的参数,望赐教