사람들이 궁금해하는 경우에, 이것은 mhtml을 html로 변환하여 SQL을 사용하는 방법입니다.
declare @source varchar(max),
@decoded varchar(MAX)
SELECT @source =BulkColumn
FROM OPENROWSET(BULK N'c:\test\test.mhtml',SINGLE_BLOB) x;
SET @source = SUBSTRING(@source,CHARINDEX('base64',@source,1)+10,LEN(@source))
SET @source = SUBSTRING(@source,1,CHARINDEX('-',@source,CHARINDEX('base64',@source,1)+10)-5)
SET @decoded = cast('' AS xml).value('xs:base64Binary(sql:variable("@source"))', 'varbinary(max)')
EXEC msdb.dbo.sp_send_dbmail
@profile_name = N'Email', -- you should use the profile name of yours, whatever is set up in your system.
@recipients = 'recipient_email_id',
@subject = 'Test',
@body = @decoded,
@body_format = 'html',
@from_address = 'sender_email_id';
응답 해 주셔서 감사합니다. 내가 제안한 것을 시도 할 때 .mhtml 파일의 텍스트가 임베드됩니다 (예 : 메모장에서 열어 본 것처럼). IE에서 파일을 열면 보고서가 표시되지 않습니다. – Pops
최소한의 예제 .mhtml 파일 (보고서)을 게시 할 수 있습니까? '@body_format = 'html''을 설정 했습니까? – ahoxha
어디에 문제가 있는지 알 수 있습니다. 파일이 HTML이지만 MHTML이 아닌 경우에만 작동합니다. – ahoxha