2016-04-08 15 views
-1

私は頻繁にSQL Serverのメールキュー

受注テーブルの新規受注が移入された受注テーブルを持っていますジョブを30分ごとに実行すると、それらの受信者に電子メールが送信されます。

+0

ほぼ同様[質問](http://stackoverflow.com上記のストアドプロシージャでの30分間の実行新しいジョブを作成36469391#36469391)は、昨日質問されました。あなたは、それをスケジュールされた仕事と組み合わせることができます –

答えて

0

ご注文状況が「新規」の場合は、電子メール通知を送信するジョブをスケジュールする必要があります。

ので、今、次のストアドプロシージャ

CREATE PROCEDURE NewOrders_Job 
AS 
BEGIN 
    DECLARE @OrderName varchar(200), @EmailAddress varchar(200) 
    SELECT 
     @OrderName = ' You have a sale for '+[OrderName]+', at +'CONVERT(VARCHAR(10),GETDATE(),)'+' 
     ,@EmailAddress = [EmailAddress] 
    FROM [Orders table] 
    WHERE 
     [Status] = 'New' 


    IF(ISNULL(@EmailAddress,'')<>'') 
    BEGIN 
     --mail 
     DECLARE 
     @profile_name VARCHAR(200) 
     ,@recipients VARCHAR(MAX) 
     ,@copy_recipients VARCHAR(MAX) 
     ,@blind_copy_recipients VARCHAR(MAX) 
     ,@body VARCHAR(MAX) 
     ,@body_format VARCHAR(MAX) 
     ,@subject VARCHAR(MAX) 


     EXEC msdb.dbo.sp_send_dbmail 
      @profile_name = 'Your_Profile_Name' 
      ,@recipients = @EmailAddress 
      ,@copy_recipients = '[email protected]' 
      ,@blind_copy_recipients = '[email protected]' 
      ,@body = @OrderName 
      ,@body_format = 'HTML' 
      ,@subject = 'You have a new sales Order'; 
    END 
END 
を作成する場合は、

+0

ありがとう – Abbaskhan