У меня есть столбец, для которого установлено значение int(20), когда я пытаюсь вставить число типа 622108120237, оно говорит, что оно выходит за пределы допустимого диапазона.Почему?
int(20)
622108120237
int с MySQL хранится в 4 байтах и поэтому может содержать значения только от -2147483648 до 2147483647.
int
-2147483648
2147483647
622108120237 больше 2147483647; поэтому он не вписывается в int - похоже, вам придется использовать bigint.
bigint
См. Типы данных - Числовые типы раздел Руководство по MySQL, об этом.
См. Документацию по числовому типу MySQL .Эти вещи хорошо документированы.
Диапазон для INT со знаком - [-2147483648, 2147483647].
INT
Обратите внимание, что в случае INT(x), х равен "ширина дисплея" и не имеет ничего общего с требованиями к диапазону или пространству:
INT(x)
MySQL поддерживает расширение для необязательного указания ширины отображения целочисленных типов данных в скобках послебазовое ключевое слово для типа.Например, INT (4) задает INT с шириной отображения в четыре цифры ... ширина отображения не ограничивает [или не расширяет] диапазон значений, которые могут быть сохранены в столбце .
Счастливого кодирования.
Максимальное значение, которое вы можете хранить в целом числе со знаком, равно 2147483647, а целое число без знака равно 4294967295. В обоих случаях вы превысите предел