SQL SERVER 2000错误处理问题
数据是sql server 2000
由于版本功能的限制,没有try功能不做错误,只能用@@error去捕捉错误,下面是小弟遇到的问题,请问高人能在2000平台解决方案
因为有100多家经销商,要把每家经销商的数据抓到一台中心服务器上,我用游标去遍历100家经销商,但可能有网络问题,可能某家经销商数据提取失败,但我想让这个程序能跳过这个错误,跑完全部经销商列表,而不会因为找不到这个断网经销商而停止整个程序。
但我使用下面方法,遇到断网的经销商还是会终止整个遍历,那位高手有解决方案吗?
declare cur cursor for
select dealer_no,svr_link from dealer_data_mirror --100家经销商列表
open cur
fetch next from cur into @dealer_no,@dbname
while @@fetch_status=0
begin
set @start_time=getdate()
exec @err=proc_upd_icddb_data @dbname,@dealer_no --运行提取操作,如果遇到错误返回@@ERROR
if @err<>0
begin
update dealer_data_mirror set upd_icd_flag='N' where dealer_no=@dealer_no
end
else
begin
update dealer_data_mirror set upd_icd_flag='Y',upd_icd_start_time=@start_time,upd_icd_end_time=getdate()
where dealer_no=@dealer_no
end
fetch next from cur into @dealer_no,@dbname
end
CLOSE cur
DEALLOCATE cur
end