set identity_insert tblindividual ON
insert into tblIndividual (nametitle, individ, lastname, firstname, occupation, employer, active, editor, creationdate)
select
salutation, idnumber, last_name, first_name, occupation,
employer, 1, recstatus, GETDATE()
from
i_master
where
cc_rectype = '1'
set identity_insert tblindividual OFF
收到错误:
Msg 8152,Level 16,State 2,Line 2
字符串或二进制数据将被截断。 声明已经终止。
答案 0 :(得分:4)
您收到该错误,因为您尝试插入数据的其中一个列接收的数据太大而且必须被截断(缩短)。
例如,如果您的nametitle
字段属于varchar(50)
数据类型,但您的salutation
数据类型为varchar(100)
,则可能存在不适合的值截断。
如果您愿意将较长的数据缩减到适当大小,可以关闭警告以允许插入继续使用语句:
SET ANSI_WARNINGS OFF;
-- Your insert TSQL here.
SET ANSI_WARNINGS ON;
如上所述,请务必记住之后再次打开警告。我希望这会有所帮助。