这是一个错误,还是一些我无法找到任何文档的隐藏限制?在SSIS 2008中创建发送邮件任务时,TO,CC和BCC字段似乎具有255个字符的隐藏限制。我知道这是个人电子邮件地址的标准限制,但这三个地址通常用于多个地址,而To字段的注释甚至表示“用分号分隔收件人”。但是,它会将地址截断为最多255个字符。
错误,非显而易见的标准,还是我缺少的东西?有什么方法吗?我们试图动态构建CC列表,但这引起了重新思考。
编辑:经过一段谷歌搜索,我相信我已经找到了标准的来源 - RFC 2821说:
域
域名或号码的最大总长度为255 字符。路径
反向路径或前向路径的最大总长度为256 字符(包括标点符号和元素分隔符)。
答案 0 :(得分:2)
奇怪的是,Sql Server 2008和2005都声明如下:
根据互联网标准,To,Cc和Bcc行数限制为256个字符。
在以下地址:
http://msdn.microsoft.com/en-us/library/ms142165.aspx
但我能够使用以下代码生成像您尝试的ToLine:
declare @toline varchar(8000)
set @toline = ' '
select @toline = @toline + EMAIL + ';'
from Control.ControlPointMail where enabled = 1
select @toline = substring(@toline,1,len(@toline)-1)
select @toline
运行此代码的执行SQL任务将其放入变量中 该变量在发送邮件任务的to行的表达式中引用。
我认为我会将MSDN中的文本解释为To,CC和BCC行的输入字段限制为256个字符,前提是您只能一次向该字段输入一个地址