mysql Ошибка: Out of range value for column
Primary tabs
Forums:
Предположим, есть некоторая таблица users c таким полем:
`INN` INT(12) NULL DEFAULT NULL COMMENT 'ИНН',
При попытке вставить значение следующим запросом:
INSERT INTO users values ('12345678945');
Возникает предупреждение:
Warning: Out of range value for column 'INN' at row 1
Дело в том, что 12345678945 больше, чем максимальное значение для INT - 2147483647
Стоит также обратить внимание, что
(12)
в
INT (12)
не определяет размер числа, т.е. нельзя записать 12 девяток, а определяет ширину отображения столбца. Т.е. предполагается, что в эту колонку можно записать число в диапазоне: -2(12 - 1) до 2(12 - 1) -1. Однако это ограничени носит рекомендательный характер
Как исправить ошибку: Поменять тип данных столбца с INT, например на VARCHAR
- Log in to post comments
- 1820 reads
vedro-compota
Wed, 08/12/2020 - 14:49
Permalink
максимальное значение для INT
хм, всего два миллиарда? значит для полулярной соцсети INT тоже использовать нельзя)
_____________
матфак вгу и остальная классика =)