我想从表2中的char column2向表1中的varchar column1插入一个值。我可以使用什么SQL查询?感谢。
我使用此查询时遇到错误:
insert into Table1 (Column1 ,Column2)
select Table2.Column1, Table2.Column2
from Table2.
字符串或二进制数据将被截断。
答案 0 :(得分:1)
char
列始终占用所有可用空间。如果数据短于指定的长度,则将用空格填充。
如果您确定所有数据实际上都足够短,以适应新的较小的列,请使用RTRIM
删除不需要的填充:
insert into Table1 (Column1 ,Column2)
select RTRIM(Table2.Column1), RTRIM(Table2.Column2)
from Table2
(不确定哪些列实际上需要RTRIM
,因为您的叙述是将Column2
从Table2
插入Column1
Table1
,但那是不是这个查询的作用)