1

テーブル内のアイテムの不確実な数 (ランダム、毎晩) に基づいて、毎晩複数回実行したいスクリプトがあります。5/10分ごとに実行する予定です。

この手順では、「マスター テーブル」で項目を検索し、それを他の必要なテーブルに複製します。

基本的には、スクリプトを実行するだけで毎回失敗する可能性がありますが、それよりも少し賢く、すべてのエラー メッセージを節約したいと考えています。

複製するアイテムがあるかどうかを最初に判断するにはどうすればよいですか...そして、結果に応じてスクリプトを実行または中止しますか?

私が試してみました;

BEGIN TRY

--Procedure

END TRY

BEGIN CATCH

--Procedure

END CATCH

しかし、それはとにかく実行されるようで、エラーが発生します...

それとも、IFステートメントの方がより良いアプローチでしょうか?

ありがとう!

4

2 に答える 2

1
IF EXISTS (SELECT * FROM MyTable WHERE myConditions)
BEGIN
INSERT INTO OtherTable SELECT * FROM MyTable WHERE myConditions
END
于 2013-02-13T09:11:38.030 に答える
1

IF行く方法です:

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

  --Procedure

END

条件が満たされない場合IF、手順は実行されません。適切なチェックを理解する必要があるだけです。

于 2013-02-13T09:09:36.993 に答える