2

我将从 CLR 存储过程返回的结果集插入到表变量中。我收到错误:“System.Data.SqlClient.SqlException:字符串或二进制数据将被截断”,因为结果集中某些字符串的长度超过了临时表中定义的 varchar 限制。烦人的是,截断正是我想要的!
那么,如何在插入时从存储过程中截断(其中的字符串)结果集?
我宁愿不更改 CLR SP 的代码。正在插入的数据中的字符串是任意长度的。

4

1 回答 1

2

我想我会让临时表的列足够大以接受数据,然后在插入后截断,例如,

UPDATE #YourTempTable
    SET ColumnA = LEFT(ColumnA, 20),
        ColumnB = LEFT(ColumnB, 50)
于 2011-05-16T15:09:51.000 回答