我有一个proc,我生成带有链接的小html文档,并通过xp_smtp_sendmail proc发送出去.链接是根据查询结果生成的,并且很长.这适用于大多数情况.但是,由于空格被插入到查询字符串变量名中,有时链接会被破坏,即& Na me = John.
这可能因电子邮件客户端而异(同一链接在Gmail中有效,但由于空格可能无法在comcast中使用.空间似乎是随机插入的,因此在每个损坏的电子邮件链接空间中可能会破坏其他查询字符串变量.当我从proc执行PRINT时链接很干净,没有空格.
这是我在main proc中执行的邮件proc的示例(获取查询结果并为@Message生成html).无论我是否编码网址,似乎都插入了空格.
预先感谢您的帮助.如果代码在这里没有正确显示,我可以发送更清晰的代码版本.
….上面的查询结果
SET @Message = NULL SET @Message = @Message + + '<br/>Dear ' + @FirstName + ' ' + @LastName + ',' + '<br/><br/>Recently you took "' + @Title + '". ' + 'In response to the question "What is it?" ' + 'you responded "' + @Response + '".' + '<br/><br/>Following up on prevIoUs mailing' + '<br/><br/>Please click on the link below' + '<br/><br/><a href="' + @Link + '">Please click here</a>' + '<br/><br/>plain text' + '<br/><br/>plain text,' + '<br/><br/>plain text<br/> plain text<br/> plain text<br/> plain text<br/> plain text<br/> plain text EXEC @rc = master.dbo.xp_smtp_sendmail @FROM = 'any@any.com',@FROM_NAME = 'Any User',@TO = @Email,@priority = N'NORMAL',@subject = N'My email',@message = @Message,@messagefile = N'',@type = N'text/html',@attachment = N'',@attachments = N'',@codepage = 0,@server = 'smtp.server.any'