Вставка изображения в таблицу HTML в хранимой процедуре SQL Server для использования с DBMail
Я хочу добавить значок / изображение в столбце таблицы, которая заполнена данными таблицы SQL Server и в результате по электронной почте.
Поскольку это стоит все, что я получаю в электронном письме,
<img src="cid:RedTL.gif"/>
Мой код:
--Full path set within attachments
@file_attachments='E:\RedTL.gif',
SET @TBLHTML=
N'<STYLE type="text/css">' +
N'.Table { background-color:#D8E7FB;border-collapse:separate;color:#000;font-size:18px; }' +
N'.Table th { background-color:#0E0355;color:white; }' +
N'.Table td, .Table th { padding:5px;border:0; }' +
N'.Table td { border: 1px dotted white; }' +
N'</STYLE>' +
N'<table class="Table">' +
N'<th><font face="calibri" size="2">Column1</th>' +
N'<th><font face="calibri" size="2">Image Column</font></th>' +
N'<th><font face="calibri" size="2">Column3</font></th>' +
N'<th><font face="calibri" size="2">Column4</font></th>' +
N'<th><font face="calibri" size="2">Column5</font></th>' +
N'<th><font face="calibri" size="2">Column6</font></th>' +
CAST ( ( SELECT td=[Column1],'',
--filename is referenced
td='<img src="RedTL.gif"/>','',
td=[Column2],'',
td=[Column3],'',
td=[Column4],'',
td=[Column5],''
FROM [Table1]
ORDER BY [Column1]
FOR XML PATH('tr'), TYPE
) AS NVARCHAR(MAX) ) +
N'</table>'
У меня есть другие встроенные изображения, просто есть проблемы с встраиванием одного в таблицу.
Электронная почта будет просматриваться в Outlook и не будет покидать внутреннюю сеть.
Любые указатели были бы превосходны!
Спасибо
1 ответ
Надеюсь, что это может пригодиться кому-то в какой-то момент времени..... Чтобы заставить его работать, я в основном приводил столбец как XML в таблице select, '' был установлен для каждой строки во временной таблице, поскольку они различались в зависимости от на свидании, так что это было на самом деле довольно просто;
SET @TBLHTML=
N'<STYLE type="text/css">' +
N'.Table { background-color:#D8E7FB;border-collapse:separate;color:#000;font-size:18px; }' +
N'.Table th { background-color:#0E0355;color:white; }' +
N'.Table td, .Table th { padding:5px;border:0; }' +
N'.Table td { border: 1px dotted white; }' +
N'</STYLE>' +
N'<table class="Table">' +
N'<th><font face="calibri" size="2">Case Attorney</th>' +
N'<th><font face="calibri" size="2">TL Status</font></th>' +
N'<th><font face="calibri" size="2">Event Due Date</font></th>' +
N'<th><font face="calibri" size="2">Event Description</font></th>' +
N'<th><font face="calibri" size="2">Event No.</font></th>' +
N'<th><font face="calibri" size="2">Client</font></th>' +
N'<th><font face="calibri" size="2">Applicant</font></th>' +
CAST ( ( SELECT td=[CaseAtt],'',
td=CAST([TLImage] AS XML),'',
td=CONVERT(VARCHAR(12),[EventDueDate],103),'',
td=[EventDesc],'',
td=[EventNo.],'',
td=[Client],'',
td=[Applicant],''
FROM #TLREP
ORDER BY [CaseAtt]
FOR XML PATH('tr'), TYPE
) AS NVARCHAR(MAX) ) +
N'</table>'
Чтобы указать, что предполагаемый вопрос / комментарий о дурацком вопросе был (очень) очень широким из того, что я фактически спрашивал.