2011-02-06 18 views
2

私はデータベース内のテーブルから取得した受信者に電子メールを送信します。私が何をしようとしているかは、このメールを1時間ごとに送信することです。どうすればいい?1時間ごとにSQLサーバーの電子メールを送信

これは私が今持っているものですか?

DECLARE @recipient VARCHAR(4000) 

USE data 

SELECT @recipient = STUFF((SELECT ';' + email 
         FROM dbo.email 
         FOR XML PATH('') 
         ), 1, 1, '') 

EXEC msdb.dbo.sp_send_dbmail 
@profile_name='SQL Server Alerts System', 
@recipients = @recipient, 
@subject='Test message', 
@body='This is the body of the test message. 
Congrates Database Mail Received By you Successfully.' 
+0

特にテストの際には、 –

答えて

3

私はこのポストはずっと前ですが、ちょうどあなたが実際に次の操作を行うことができ、追加するために知っている予定のSQL Server Agent仕事

0

を作成します。

  1. あなたは電子メール受信者を選択する文を入れて、ストアドプロシージャへのメール送信を実行します。
  2. ジョブを作成する
  3. [スケジュール]タブで、ジョブを実行する時刻を設定します。私のために、私は通常、毎日午前12時にそれを実行します。
  4. 次に、[ステップ]タブで[新規]をクリックします。
  5. ステップの名前を入力します。 TypeはTransact-SQLである必要があります。実行のためにデータベース所有者(またはSA、dbo ...)にする必要があります。
  6. コマンドボックス領域でメールを送信するために今作成したストアドプロシージャの実行文を含めます。

あなた自身でテストすることができます。ジョブが実行されるまで忍耐強く待って、あなた/受信者がメールを受け取ったかどうかを確認してください。

関連する問題