使用回车符或换行符来构建带有tsql的消息体

时间:2013-10-25 14:46:00

标签: sql tsql

我有以下发送db邮件的tsql。这适用于一个格式化异常。生成的最后两行在电子邮件正文中没有换行符或回车符。数据类型分别是varchar(255)和varchar(300)。

我尝试过使用和不使用演员表,我已经分别和CHAR一起尝试了CHAR(10),CHAR(13)。

为什么这两个最后两个不分成不同的行?

  DECLARE  @errMsg VARCHAR(max)

  -- review edit fact UMDNSID values and catch orphans with out parents in CategoryList
  select @errMsg = 

  '====================================================================' + char(10) + 
  'Orphan UMDNSID: ' + cast(ef.umdnsid as varchar(50)) + char(10) + 
   'Edit Fact VendorItemID: ' + cast(ef.vendoritemid as varchar(50)) + char(10) + 
   'Current VendorItem UMDNSID: ' + cast(ip.umdnsid as varchar(50)) + char(10) + 
   'Current VendorItem Category: ' + ipcl.categoryname + char(10) + 
   'Item Description: ' + ef.LongDescription + char(10) + char(13)

  from EditFact ef
  join itemprovider ip
  on ef.vendoritemid = ip.itemprovider_pk
  join categorylist ipcl
  on ipcl.umdnsid = ip.umdnsid
  where 1=1
  AND editstatusid = 0
  AND settled is null 
  AND ef.UMDNSID not in (
        select umdnsid from categorylist)

EXEC dbo.ProcessFile_SendMail @ProcessFile_id=0, @Subject='Orphan UMDNSID', @Message=@errMsg, @To='someone@email.com';

电子邮件正文最终看起来如下所示,我希望你看到一个新行**。

Orphan UMDNSID:27854
编辑事实VendorItemID:4654178
Current VendorItem UMDNSID:99936
Current VendorItem类别:Custom Packs **项目描述:TRAY CARDIAC CATH CUSTOM

1 个答案:

答案 0 :(得分:1)

如果这是最终答案

测试打印件(@errMsg) 问题可能出在ProcessFile_SendMail。