2012-02-27 26 views
-2

我有表和存儲過程(有很多的SQL語句)的數據庫。 每週一次的Windows任務調度程序從不同的源提取數據,然後在數據庫表B.我需要表B與現有表,如果表B的數量小於表A比較節省的話,我必須通過電子郵件或任何其他此類流程通知。我需要得到通知,如果條件失敗在我的數據庫

我該怎麼做?請幫幫我。我可以NT從網絡獲取

+1

給permissin嗯,你想做的事這與代碼?你寫了什麼代碼? – 2012-02-27 20:18:37

+0

你的問題不夠清楚,不能真正回答它。我給了它一個鏡頭,但是我沒有詳細說明。如果您正在編寫代碼,那麼您需要向我們展示您正在編寫的代碼。如果您是SysAdmin,您需要讓您的開發人員爲您提供解決方案。 – 2012-02-27 20:24:54

+0

非常感謝所有的答案。根據一個答案,我被告知我不清楚。所以我會再添加幾點。首先,我創建了一個DTS包,然後創建了作業(步驟1有DTS包;步驟2創建了一個數據庫電子郵件通知,讓用戶知道作業是否成功運行),並計劃每週運行一次。每件事情都很好。現在我被要求通知或停止JOB,如果表B <表A行。我不知道在哪裏寫什麼代碼...在存儲過程或工作警報等 – user1236420 2012-02-27 21:03:57

回答

0

任何信息,我會親自編寫.NET控制檯應用程序並運行它作爲一種計劃任務。該應用程序將查詢數據庫並處理結果。如果通過,通知通知,如果失敗,通知失敗。

1

您可以創建一個SQL作業,並在SQL發送郵件這樣

if (Select COUNT(*) from A) != (select COUNT(*) from B) 
begin 
EXEC master.dbo.xp_sendmail 
    @recipients=N'[email protected];[email protected]', 
    @message=N'Tables count different', 
    @subject=N'SQL Tables' ; 
End 

之前發送郵件在SQL必須設置SQL主要由

sp_configure 'SQL Mail XPs', 1; 
+0

我真的建議反對xp_sendmail。 SQL Mail XP已棄用,您應該使用數據庫郵件。 – 2012-02-27 20:40:07

+0

非常感謝所有的答案。根據一個答案,我被告知我不清楚。所以我會再添加幾點。首先,我創建了一個DTS包,然後創建了作業(步驟1有DTS包;步驟2創建了一個數據庫電子郵件通知,讓用戶知道作業是否成功運行),並計劃每週運行一次。每件事情都很好。現在我被要求通知或停止JOB,如果表B <表A行。我不知道在哪裏寫什麼代碼...在存儲過程或工作警報等。 – user1236420 2012-02-27 20:54:47

相關問題