3
私はストアドプロシージャにXMLを取得しており、XMLにしたがって反復処理して電子メールを送信する必要があります。XMLノードを繰り返し処理し、SQL Serverで電子メールを送信
私はちょうど電子メールを送信するための別のストアドプロシージャを持っている:ここでは
MailingSystem..SP_SendEmail
@Cc = N'', -- nvarchar(500)
@Bcc = N'', -- nvarchar(500)
@FromEMailAddress = N'', -- nvarchar(500)
@ReplyToEMailAddress = N'', -- nvarchar(500)
@Subject = N'', -- nvarchar(500)
@EmailRecipient = N'', -- nvarchar(500)
@ContentType = N'', -- nvarchar(50)
@Content = N'', -- nvarchar(max)
は、XMLの構造である:
DECLARE @XMLData XML =
'<GenericXML>
<GenericEmailsNotification>
<EmailMessage>
<From>[email protected]</From>
<Recipients>[email protected]</Recipients>
<CC>[email protected]</CC>
<Subject>Follow The Sun </Subject>
<Body>Breathe, breathe in the air. Set your intentions.Dream with care. </Body>
</EmailMessage>
<EmailMessage>
<From>[email protected]</From>
<Recipients>[email protected]</Recipients>
<Subject>Second Email is best</Subject>
<Body>Second Email body...</Body>
</EmailMessage>
</GenericEmailsNotification>
</GenericXML>'
私は各EmailMessage
ノードをループにしたいと関連するデータを抽出このノード/電子メール(件名、送信者、受信者、本文など)に送信し、メールを送信するストアドプロシージャに送信します。
各XMLを送信するために、複数の電子メールを持つことができます(その明確でない場合は、今まで...)
私はそれをどのように行うことができますか? XML要素をループする方法はありますか?事前に
おかげ
私が必要としたことの1つは、そのコードの最後に "Drop Table #Emails"です。 それ以外の場合は、最初の実行後にオブジェクト#Emailsが既に存在することがわかります。 それ以外は、2つの親指! – Ron