使用PowerShell将SQL Query输出发送到电子邮件

时间:2017-05-25 10:11:16

标签: powershell powershell-v2.0

我想使用PowerShell将SQL查询输出发送到电子邮件,我该怎么做?

这是我到目前为止所做的:

$query =  select name, surname, gender, accountNumber from table1
$Report = Invoke-Sqlcmd -ServerInstance "instance" -Database "db2" -Query $query

$MailUsername = "mail"
$MailPassword = "1234"
$cred = New-Object System.Management.Automation.PSCredential -ArgumentList @($MailUsername,(ConvertTo-SecureString -String $MailPassword -AsPlainText -Force))
Send-MailMessage -To "me@yahoo.com" -From "you@yahoo.com" -SmtpServer mail.net -Credential $cred -Subject "weekly Report:" -Body "$Report"

我希望能够以表格或看起来不错的形式发送报告?我怎么能这样做?

我上面的代码遇到了错误,有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

我需要添加附件,请参阅下文:

 $message = new-object System.Net.Mail.MailMessage
            $message.From = $fromaddress
            $message.To.Add($toaddress)
            $message.CC.Add($CCaddress)
            $message.Bcc.Add($bccaddress)
            $message.IsBodyHtml = $True
            $message.Subject = $Subject
            $attach = new-object Net.Mail.Attachment($attachment)
            $message.Attachments.Add($attach)
            $message.body = $body
            $smtp = new-object Net.Mail.SmtpClient($smtpserver)
            $smtp.Send($message)