字符串或二进制数据在插入到#temp表时将被截断

zed5wv10  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(378)

我的 #temp 表列定义为 VARCHAR(10) ,输入例如:值为“azure”。数据来自一个表,其中列定义为 VARCHAR(100) ,但是 TOP 1 插入到临时表中的查询只返回了6的值,但仍出现错误:
字符串或二进制数据将被截断

ldioqlga

ldioqlga1#

即使插入的特定值的最大大小为6,如果源表中有较大的值,例如:“稍微大一点的文本”(即20),则 #temp 如果是顶级查询,则insert失败。
当然,可以根据基本数据列定义的原始大小来调整temp表列的大小,这样就不会像我一样浪费时间:)有太多更大的列 VARCHAR 中的列 #temp 一张table被插在一起,人们不会认为 VARCHAR(10)VARCHAR(20) 会对值产生影响 LEN()=5 .

相关问题