Nein, es gibt keine Nachrichtendatei in sp_send_dbmail
.
Ich habe einige Artikel über das Thema gelesen und ich habe eine Option für Sie. Holen Sie sich die Datei mit einer CLR function to Read and Write Text Files und dann die Rückkehr in den Körper der Mail. Dann etwas wie folgt aus:
DECLARE @text VARCHAR(MAX)
EXEC @text=ReadTextFile 'C:\YourFile.txt'
EXEC msdb.dbo.sp_send_dbmail
@profile_name = 'something',
@recipients = '[email protected]',
@body = @text,
@subject = 'Hello my friend' ;
Oder können Sie die OPENROWSET
verwenden und die Datei in einem varchar (weitere Informationen here) laden:
DECLARE @LotsOfText VARCHAR(MAX)
SELECT @LotsOfText = BulkColumn
FROM OPENROWSET(BULK 'C:\YourFile.txt', SINGLE_BLOB) AS x
EXEC msdb.dbo.sp_send_dbmail
@profile_name = 'something',
@recipients = '[email protected]',
@body = @LotsOfText,
@subject = 'Hello my friend' ;
The TSQL of Text Files ist eine gute Referenz-Datei in SQL zum Lesen.
Ich hoffe, das wird helfen
Arion, ich habe die OPENROWSET Alternative und ich kann sagen, es funktioniert reibungslos. Ich konnte sogar 'htm' Dateien importieren, indem ich SINGLE_BLOB durch SINGLE_CLOB ersetzte. Meine E-Mail-Körper sind jetzt mit genau dem geladen, was ich wollte. Toll ... und nochmals vielen Dank! – user1320877
Kein Problem. Freut mich zu helfen. Vielleicht können Sie die Antwort dann akzeptieren? .. und denken Sie daran, die Antwort zu verbessern, die Sie für gut halten. Das gibt uns allen ein warmes, flauschiges Gefühl: P – Arion