SQL使用从表派生的值发送电子邮件

时间:2014-08-28 20:33:15

标签: sql-server sql-server-2008 email

请考虑以下html

<html>
    <head>
        <title>Stuff here</title>
    </head>
        <p>
           Value: @@ Table.column @ 
       </p>
 </html>

此HTML是表格中的值。 然后生成并发送该电子邮件。 我的问题是SQL如何发送这封电子邮件,更具体地说,来自&#34; @@ Table.column @&#34;的价值如何?插入电子邮件?

这是通过存储过程完成的吗?

1 个答案:

答案 0 :(得分:0)

测试数据

DECLARE @TABLE TABLE(Body VARCHAR(200))
INSERT INTO @TABLE VALUES 
('This is the body of email bla bla ......')

查询

DECLARE @tableHTML  NVARCHAR(MAX) ;

SET @tableHTML =
    N'<html>
    <head>
        <title>Stuff here</title>
    </head>
    ' +

    CAST ( ( SELECT Body
                FROM @TABLE    
              FOR XML PATH('p'), TYPE 
    ) AS NVARCHAR(MAX) ) +
    N'</html>' ;
SELECT @tableHTML;   --<-- use this variable to pass value to your sp_send_dbmail 
                        -- @body parameter

结果

<html>
    <head>
        <title>Stuff here</title>
    </head>
    <p><Body>This is the body of email bla bla ......</Body></p></html>