文本消息中的sp_send_dbmail和换行符



我正在尝试向自己发送短信,但我无法在消息中实现换行符。 我可以在电子邮件中使用 HTML 毫无问题地执行此操作,但对于 SMS 消息的工作方式不同。

DECLARE @TXT_LIST VARCHAR(255);
DECLARE @TXT_BODY NVARCHAR(MAX);
SET @TXT_LIST = 'myphonenumber@msg.fi.google.com';
SET @TXT_BODY = 'This should be line 1.';
-- SET @TXT_BODY += 'n';
-- SET @TXT_BODY += 'rn';
-- SET @TXT_BODY += '<br />';
-- SET @TXT_BODY += '%0a';
SET @TXT_BODY += 'This should be line 2.';
EXEC msdb.dbo.sp_send_dbmail @profile_name='myProfile', @recipients=@TXT_LIST, @body_format='HTML', @subject='Test Subject', @body=@TXT_BODY;

我已经尝试了您在上面看到的所有注释掉的方法,所有这些方法都在我的手机上显示为纯文本,并且一行而不是两行。

最终目标是运行一个返回 X 行的查询,并将结果中的每一行都设置在文本消息中的新行上。

我偶然发现了解决方案:

DECLARE @TXT_LIST NVARCHAR(255);
DECLARE @TXT_BODY NVARCHAR(MAX);
DECLARE @CRLF CHAR(2) = CHAR(13)+CHAR(10);
SET @TXT_LIST = 'myphonemumber@msg.fi.google.com';
SET @TXT_BODY = 'This should be line 1.';
SET @TXT_BODY += @CRLF;
SET @TXT_BODY += 'This should be line 2.';
EXEC msdb.dbo.sp_send_dbmail @profile_name='myProfile', @recipients=@TXT_LIST, @body_format='HTML', @subject='Test Subject', @body=@TXT_BODY;

相关内容

  • 没有找到相关文章

最新更新