私はこの SQL コードに正気を失いつつあります。以下の IF ELSE ステートメントは、単純な PRINT ステートメントでテストすると正しく機能します。つまり、テーブルが存在しないため、「FALSE」が出力されます。しかし、SETステートメントのコメントを外して実行すると、SETステートメントを実行しようとし、テーブルが存在しないため、当然エラーになります。
DECLARE @zeus_calls310_counter int;
IF EXISTS (SELECT * FROM [zeus].tpza.INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'calls_310')
BEGIN
--SET @zeus_calls310_counter = (SELECT COUNT(*) FROM [zeus].[tpza].[dbo].[calls_310]);
PRINT 'TRUE'
END
ELSE
BEGIN
PRINT 'FALSE';
END