• 在SSIS中如何发送邮件


    1 利用发送邮件服务

     

    详细设置如上图。但是邮件发送服务器只能为公司内部邮箱或

    SSIS服务器上安装一个SMTP服务。如网易163由于不提供填写用户名和密码信息,不能使用。

     

    2 利用脚本任务发送公司内部邮箱

    以下代码用的是公司内部邮箱,认证方式为CredentialCache.DefaultNetworkCredentials

    Imports System

    Imports System.Data

    Imports System.Math

    Imports System.Net.Mail

    Imports System.Net

    Imports Microsoft.SqlServer.Dts.Runtime

     

    Public Class ScriptMain

     

         Public Sub Main()

             '

             ' Add your code here

            '

            Dim myHtmlMessage As MailMessage

            Dim mySmtpClient As SmtpClient

     

     

            myHtmlMessage = New MailMessage("qiangguo@test.com", "qiangguo@test.com", "Subject", "body")

            mySmtpClient = New SmtpClient("mail.test.com")

            mySmtpClient.Credentials = CredentialCache.DefaultNetworkCredentials

            mySmtpClient.Send(myHtmlMessage)

     

             Dts.TaskResult = Dts.Results.Success

         End Sub

     

    End Class

     

    3 利用脚本任务发送网易163邮箱

    以下代码用的是网易163邮箱,认证方式为System.Net.NetworkCredential("用户名", "密码")

     

    Imports System

    Imports System.Data

    Imports System.Math

    Imports System.Net.Mail

    Imports System.Net

    Imports Microsoft.SqlServer.Dts.Runtime

     

    Public Class ScriptMain

     

         Public Sub Main()

             '

             ' Add your code here

            '

            Dim myHtmlMessage As MailMessage

            Dim mySmtpClient As SmtpClient

     

     

            myHtmlMessage = New MailMessage("xxx@163.com", " qiangguo@test.com", "Subject", "body")

            mySmtpClient = New SmtpClient("smtp.163.com")

            'mySmtpClient.Credentials = CredentialCache.DefaultNetworkCredentials

            mySmtpClient.Credentials = New System.Net.NetworkCredential("用户名", "密码")

            mySmtpClient.Send(myHtmlMessage)

     

             Dts.TaskResult = Dts.Results.Success

         End Sub

     

    End Class

     

     

    4执行 SQL 任务 发送163邮件

    首先要配置sql server 2005 数据库邮件,如利用配置文件为:数据库邮件配置文件(网易163

    如何配置请参加我的另一篇文章:

    http://blog.csdn.net/guoqiang1983/archive/2008/05/30/2497547.aspx

    sql脚本为:

    msdb.dbo.sp_send_dbmail存储过程发送

    EXEC msdb.dbo.sp_send_dbmail

        @profile_name = '数据库邮件配置文件(网易163',

        @recipients = 'xxx@163.com',

        @body = 'ssis msdb.dbo.sp_send_dbmail测试发邮件',

    @subject = '测试发邮件';

     

     

    总结:四种方法都可行,遇到问题,想想其它的方法,办法总是有的!如下图所示:

     

    参考文章:
    http://www.sqlservercentral.com/articles/SSIS/62678/
  • 相关阅读:
    ZOJ2587 Unique Attack(判定最小割唯一性)
    SPOJ371 Boxes(最小费用最大流)
    SGU185 Two shortest(最小费用最大流/最大流)
    POJ2112 Optimal Milking(最大流)
    HDU3996 Gold Mine(最大权闭合子图)
    POJ3680 Intervals(最小费用最大流)
    SPOJ 7258 Lexicographical Substring Search(后缀自动机)
    HDU 4436 str2int(后缀自动机)
    SPOJ 1812 Longest Common Substring II(后缀自动机)
    CodeForces 235C Cyclical Quest(后缀自动机)
  • 原文地址:https://www.cnblogs.com/dbasys/p/2127577.html
Copyright © 2020-2023  润新知