Проблема заключается в преобразовании данных из десятичного (28, 4) в десятичное (21,20). Я работаю на SQL Server 2008.
Я попробовал некоторые фрагменты, чтобы решить мою задачу, но, как вы видите, я не могу сохранить данные в десятичном формате (21,20), потому что я получаю это сообщение:
Сообщение 8115, Уровень 16, Состояние 8, Строка 35
Ошибка арифметического переполнения при преобразовании числового значения в числовой тип данных.
Код:
UPDATE [table]
SET [col] = CONVERT(DECIMAL(21, 20), [col1])
GO
ALTER TABLE [non_det_liabilities]
MODIFY [col1] DECIMAL(21, 20)
Результат, который я ожидаю, это скопированные данные с требуемой десятичной точностью.