Большинство ответов здесь предназначены для очевидной проверки того, что длина столбца, как определено в базе данных, не меньше, чем данные, которые вы пытаетесь передать в нее.
Несколько раз меня укусило, когда я пошел в SQL Management Studio, быстро:
sp_help 'mytable'
и запутайтесь в течение нескольких минут, пока я не пойму, что рассматриваемый столбец - nvarchar , что означает, что длина, сообщаемая sp_help, действительно вдвое больше реальной поддерживаемой длины, потому что это двухбайтовый (Unicode) тип данных .
т.е. если sp_help сообщает nvarchar Length 40, вы можете сохранить максимум 20 символов.