我在SQL管理工作室做了一个查询,如下: -
ALTER TABLE [TransactionNote]
ALTER COLUMN NoteLine [varchar]
COLLATE SQL_Latin1_General_CP1_CI_AS.
为什么我看
Msg 8152, Level 16, State 14, Line 4
String or binary data would be truncated.
The statement has been terminated.
在输出窗口中。?
答案 0 :(得分:0)
您需要为NoteLine
字段指定新的长度。如果没有为varchar
指定长度,则默认为长度为1.该字段中任何超过1个字符的当前值都将被截断,因此会显示错误消息。
确定该字段中最长值的长度,然后相应地ALTER
列。
select max(len(NoteLine) from TransactionNote;
记下结果。
ALTER TABLE [TransactionNote]
ALTER COLUMN NoteLine [varchar(VALUE_FROM_BEFORE)]
COLLATE SQL_Latin1_General_CP1_CI_AS