Über den kostenpflichtigen MS-SQL Server (Standardedition) können automatisiert e-mails mit Informationen aus einer Datenbank versendet werden. In diesem Beispiel werden die täglichen Fakturadaten an die Geschäftsführung versendet.
Die Einrichtung erfolgt über die SQL Management Console SSMS
Hier wird ein neues öffentliches Profil angelegt
Dieses Protokoll öffentlich aktivieren und im nächsten Dialog die Zugangsdaten des Mailkontos einrichten.
Bei den E-Mail Einstellungen die Portnummern verifizieren. Strato z.B. nutzt für SSL auch den Port 587
Damit ist die Profileinrichtung abgeschlossen. Über diese Profil können jetzt SQL Abfragen versendet werden. Die Syntax zu den Abfragen finden sie hier:
https://docs.microsoft.com/de-de/sql/relational-databases/system-stored-procedures/sp-send-dbmail-transact-sql?view=sql-server-ver15
Die Beispielabfrage:
EXEC msdb.dbo.sp_send_dbmail
@profile_name = ‚DB_BNWINS_RNO‘,
@recipients = ‚rno@musterfirma.de‘,
@query = ‚USE BNWINS
SELECT sum(ustbasis) AS FakturierungHeute
FROM rechnung where datepart(dd,erstdat) = datepart(dd, getdate()) And datepart(mm,erstdat) = datepart(mm, getdate()) And datepart(YYyy, erstdat) = datepart(yyyy, getdate())
SELECT sum(ustbasis) AS FakturierungMONAT
FROM Rechnung where datepart(mm,erstdat) = datepart(mm, getdate()) And datepart(yyyy, erstdat) = datepart(yyyy, getdate())‘ ,
@subject = ‚Faktura-Auswertung‘,
@body = ‚Fakturasummen:‘,
@body_format = ‚TEXT‘,
@attach_query_result_as_file = 0;
Das Ergebnis ist im ersten Screenshot zu sehen. Um diese Abfrage als e-mail täglich automatisiert zu verwenden muss jetzt im SSMS SQL Server Agent ein neuer Auftrag angelegt werden.