2013-02-13 24 views
1

我有一段脚本,我想每晚执行多次,基于表中的项目数量不定(随机,每天晚上)。我打算每5/10分钟执行一次。SQL Server错误处理,确定是否存在记录,然后执行过程

该过程查找“主表”中的项目并将其克隆到其他必要的表中。

基本上我可以让脚本运行,每次都会失败,但我希望比这更聪明一点,并保存所有错误消息。

我该如何首先确定某个项目是否需要克隆......然后根据结果执行或中止脚本?

我试过了;

BEGIN TRY 

--Procedure 

END TRY 

BEGIN CATCH 

--Procedure 

END CATCH 

,但似乎只是执行反正与错误...

或许IF语句将是一个更好的方法吗?

谢谢!

回答

1

IF将要走的路:

IF EXISTS (/*Statement to check if rows exist*/) 
BEGIN 

    --Procedure 

END 

如果IF条件不满足的程序将无法运行。你只需要找出适当的检查。

+0

具有讽刺意味的是,我的问题标题中有IF&EXISTS字样.. :)非常感谢! – William 2013-02-13 09:16:58

1
IF EXISTS (SELECT * FROM MyTable WHERE myConditions) 
BEGIN 
INSERT INTO OtherTable SELECT * FROM MyTable WHERE myConditions 
END 
相关问题