Compartilhar via


Usando o Database Mail

No SMO, o subsistema Database Mail é representado pelo objeto SqlMail que é referenciado pela propriedade Mail. Através do objeto SqlMail do SMO, você pode configurar o subsistema Database Mail e gerenciar perfis e contas de email. O objeto SqlMail do SMO pertence ao objeto Server. Isso significa que o escopo das contas de email está em nível de servidor.

Exemplos

Para usar qualquer exemplo de código fornecido, será necessário escolher o ambiente de programação, o modelo de programação e a linguagem de programação para criar o aplicativo. Para obter mais informações, consulte Criar um projeto SMO do Visual Basic no Visual Studio .NET ou Criar um projeto SMO do Visual C# no Visual Studio .NET.

Para programas que usam o SQL Server Database Mail, inclua a instrução Imports para qualificar o namespace do Mail. Insira a instrução após as outras instruções Imports, antes de qualquer declaração no aplicativo, como:

Imports Microsoft.SqlServer.Management.Smo

Imports Microsoft.SqlServer.Management.Common

Imports Microsoft.SqlServer.Management.Smo.Mail

Criando uma conta de email de banco de dados usando o Visual Basic

Este exemplo de código mostra como criar uma conta de email no SMO. O Database Mail é representado pelo objeto SqlMail e referenciado pela propriedade Mail do objeto Server. O SMO pode ser usado para configurar programaticamente o Database Mail, mas não pode ser usado para enviar ou tratar emails recebidos.

VB.NET

'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server()
'Define the Database Mail service with a SqlMail object variable and reference it using the Server Mail property.
Dim sm As SqlMail
sm = srv.Mail
'Define and create a mail account by supplying the Database Mail service, name, description, display name, and email address arguments in the constructor.
Dim a As MailAccount
a = New MailAccount(sm, "AdventureWorks Administrator", "AdventureWorks Automated Mailer", "Mail account for administrative e-mail.", "dba@Adventure-Works.com")
a.Create()

Criando uma conta de email de banco de dados usando o Visual C#

Este exemplo de código mostra como criar uma conta de email no SMO. O Database Mail é representado pelo objeto SqlMail e referenciado pela propriedade Mail do objeto Server. O SMO pode ser usado para configurar programaticamente o Database Mail, mas ele não pode ser usado para enviar ou tratar emails recebidos.

{
         //Connect to the local, default instance of SQL Server.
         Server srv = default(Server); 
           srv = new Server(); 
           //Define the Database Mail service with a SqlMail object variable 
           //and reference it using the Server Mail property. 
           SqlMail sm; 
           sm = srv.Mail; 
           //Define and create a mail account by supplying the Database Mail
           //service, name, description, display name, and email address
           //arguments in the constructor. 
           MailAccount a = default(MailAccount); 
           a = new MailAccount(sm, "AdventureWorks2012 Administrator", "AdventureWorks2012 Automated Mailer", "Mail account for administrative e-mail.", "dba@Adventure-Works.com"); 
           a.Create();  
}

Criando uma conta de email de banco de dados usando o PowerShell

Este exemplo de código mostra como criar uma conta de email no SMO. O Database Mail é representado pelo objeto SqlMail e referenciado pela propriedade Mail do objeto Server. O SMO pode ser usado para configurar programaticamente o Database Mail, mas não pode ser usado para enviar ou tratar emails recebidos.

PowerShell

#Connect to the local, default instance of SQL Server.

#Get a server object which corresponds to the default instance
$srv = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Server

#Define the Database Mail; reference it using the Server Mail property.
$sm = $srv.Mail

#Define and create a mail account by supplying the Database Mail service,
#name, description, display name, and email address arguments in the constructor.
$a = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Mail.MailAccount -argumentlist $sm, `
"Adventure Works Administrator", "Adventure Works Automated Mailer",`
 "Mail account for administrative e-mail.", "dba@Adventure-Works.com"
$a.Create()