22001: string_data_right_truncation
PostgreSQLЧто это значит?
Значение было бы усечено, поскольку длина текста превышает заданную длину целевого столбца (например, VARCHAR(n)); PostgreSQL отклоняет его и выдаёт ошибку.
Почему возникает?
Вставка или обновление текста длиннее n в столбце VARCHAR(n)/CHAR(n), более длинные, чем ожидалось, данные из приложения или слишком узкая для потребностей длина столбца.
Как исправить
Сократите значение так, чтобы оно помещалось в столбец, или увеличьте длину столбца: ALTER TABLE my_table ALTER COLUMN my_column TYPE VARCHAR(500). Если нужен текст без ограничения длины, используйте тип TEXT. Проверяйте длину в приложении. Если требуется намеренное усечение, применяйте LEFT(value, n) явно.