почему номер телефона не хранится в целочисленном типе данных?

mysql> desc Student; +———+—————+——+——+———+—————-+ | Field | Type | Null | Key | Default | Extra | +———+—————+——+——+———+—————-+ | Roll_no | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(200) | YES | | NULL | | | address | varchar(200) | YES | | NULL | | | phone | int(100) | YES | | NULL | | | age | int(11) | YES | | NULL | | +———+—————+——+——+———+—————-+ 5 rows in set (0.00 sec) mysql> insert into Student values(1,’Ram’,’Delhi’,90404444389,18);

ОШИБКА 1264 (22003): значение вне допустимого диапазона для столбца «телефон» в строке 1

почему по ошибке..размер телефона 100 но почему вне диапазона ..

Поскольку телефонные номера, если их рассматривать как числа, выглядят как очень большие числа, большее, чем целое число, может содержать См. раздел 11.1.2 Целочисленные типы (точное значение) — INTEGER, INT, SMALLINT, TINYINT, MEDIUMINT, BIGINT   —  person Bachan Ghatuary    schedule 21.02.2020

Отвечает ли это на ваш вопрос? Как исправить ошибку ‘ Значение вне диапазона скорректировано с учетом ошибки столбца?   —  person Bachan Ghatuary    schedule 21.02.2020

проверьте dev.mysql.com/doc/refman/8.0/en /integer-types.html для значений целочисленного диапазона, я предлагаю вам сделать это varchar вместо этого!   —  person Bachan Ghatuary    schedule 21.02.2020

И еще этот: dev.mysql.com/ doc / refman / 8.0 / en / numeric-type-attributes.html   —  person Bachan Ghatuary    schedule 21.02.2020

Я думаю, вы неправильно поняли значение int (11). Int (11) не означает, что вы можете иметь целое число с одиннадцатью цифрами. В отличие от varachar (200), что означает, что вы можете хранить максимум 200 символов. Фактически, для типа Int число в круглых скобках сообщает вам размер одного целочисленного значения, и в этом случае это означает, что одно значение int хранится в 4 байтах, а номер телефона, который вы используете, намного больше этого. Я бы порекомендовал взять здесь stackoverflow.com/questions/4151259/   —  person Bachan Ghatuary    schedule 21.02.2020

Помимо проблем с хранением, номер телефона — это не число в смысле количества или чего-то, над чем вы хотите выполнять арифметические операции. Это строка, состоящая из цифр, поэтому в ней сохраняются ведущие нули, и вы можете выполнять с ней строковые операции, например проверять, начинается ли она с определенного кода области.   —  person Bachan Ghatuary    schedule 21.02.2020

Источник: ledsshop.ru

Стиль жизни - Здоровье!