我有下面的查询,其中我插入到临时表中,当我尝试运行查询sql是抛出二进制或字符串数据将被截断。但实际上,我的数据在列PhoneModel
的定义nvarchar(400)
的范围内。为什么我得到的二进制或字符串数据将被截断
CREATE TABLE #orders
(
quoteHeaderId INT,
PhoneModel nvarchar(400)
)
INSERT INTO #orders(quoteHeaderId, PhoneModel)
SELECT qh.QuoteHeaderId,
(Select ph.ModelName + ','
FROM t_handsetQuote h2
INNER JOIN t_PhoneAudit t1 on t1.PhoneAuditId = h2.QuotePhoneAuditId
INNER JOIN t_phoneModel ph on t1.phoneModelid = ph.phoneModelid
where qh.QuoteHeaderId = h2.QuoteHeaderId
FOR XML PATH('')
) AS PhoneModel
FROM t_QuoteHeader qh
INNER JOIN t_handsetQuote h on qh.QuoteHeaderId = h.QuoteHeaderId
INNER JOIN t_CustomerAdditionalInformation ch on qh.CustomerId = ch.CustomerId
and keyName ='SendUpdatesByEmail' AND ch.value = 'yes'
[SQL服务器的可能的复制字符串或二进制数据将被截断](http://stackoverflow.com/questions/6388756/sql-server-string-or-binary-data-would-be- truncated) –