プルされた別のデータベースからのフィードであるテーブルがあります。フィードがダウンしているため、ソース データベースのテーブルにデータが入力されていないことがよくあります。私がやりたいことは、ソース データベース テーブル内のレコード数をカウントして、データ フィードを取得する前にデータが入力されていることを確認することです。この場合、古いデータはすべての欠落データよりも優れているためです。他のデータベースでこれを実行しましたが、Microsoft SQL 2008 で実行する方法がわかりません。
これは、最終的にスケジュールされた proc に入れられるようにしようとしているもののモックアップです。
CASE
WHEN
(SELECT COUNT(PC.id) FROM [server08].[db01].[dbo].[tblesrc01] PC) > 9000
THEN
TRUNCATE TABLE DartDB.dbo.assets_feed;
INSERT INTO tbl_feed
(
id,name,amt,row_updated
)
SELECT
Q.PK_ID AS id
, Q.fullname AS name
, Q.cost AS amt
, SYSDATETIME() AS row_updated
FROM [server08].[db01].[dbo].[tblesrc01] Q;
ELSE
END
この目的には大文字と小文字が不適切ですか、それとも私が見逃したものがありますか?