У меня есть столбец, который установлен в int(20) когда я пытаюсь вставить номер, например 622108120237 , он говорит, что он выходит за пределы диапазона. Зачем?
int , с MySQL, хранится в 4 байтах и, как таковой, может содержать только значения между -2147483648 и 2147483647 .
622108120237 больше, чем 2147483647 ; поэтому он не вписывается в int look, как будто вам придется использовать bigint .
См. Раздел Datatypes – Numeric types of
руководство по MySQL, об этом.
См. Документацию по численному типу MySQL . Эти вещи хорошо документированы.
Диапазон для подписанного INT – [-2147483648, 2147483647].
Обратите внимание, что в случае INT(x) x является «шириной отображения» и не имеет ничего общего с требованиями к диапазону или пространству:
MySQL поддерживает расширение для необязательного указания ширины отображения целочисленных типов данных в круглых скобках, следующих за ключевым словом для этого типа. Например, INT (4) указывает INT с шириной отображения четырех цифр … Ширина отображения не ограничивает [или расширяет] диапазон значений, которые могут быть сохранены в столбце .
Счастливое кодирование.
Максимальное значение, которое вы можете сохранить в значении целого числа, равно 2147483647, а unsigned int – 4294967295. В обоих случаях вы превышаете предел