Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 16.11.2015
Сообщений: 8
MySQL

Почему в поле INT меняется значение ?

16.05.2016, 20:23. Показов 2671. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В базе есть поле INT(12). В него планировалось вводить ИНН.

При вводе в input значения 1234567890 число записывается как есть, а вот если ввести 12345678901, то в базу вместо него записывается 2147483647. Изменил тип поля на BIGINT(12) - всё записывается как вводишь.

Почему так ?!...

Насторожило собственно то, что в базе много таблиц с INT(255) AI. Не начнутся случайно глюки, когда этот AI превысит число более 10 знаков ?!...

Добавлено через 15 минут
Попробовал ввести в BIGINT(255) значение 11111111111111111111 - записалось 9223372036854775807.

Вопрос тот же, почему так ?!... (((
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.05.2016, 20:23
Ответы с готовыми решениями:

Поле int(11)
Добрый день! Хотел задать вопрос . У меня есть 2е таблицы в БД в них есть поля где хранится id пользователей Суть вот в чем: у этих...

(QML) - почему property int меняется сам по себе
property real pc:ir.x Rectangle{ id:ir; } Если перемещать ir, у него меняются координаты ir.x, ir.y - это приводит к тому,...

Не меняется значение если курсор в поле
$('').blur(); $('').attr('value', '2'); Значение атрибута меняется, но меняется значение в поле если курсор находится в поле, что...

14
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
16.05.2016, 20:31
Цитата Сообщение от Dgeday Посмотреть сообщение
Почему так ?!...
Число в скобках после INT не задает диапозон, В INT(1) и INT(255) поместится одинаковое количество чисел
Целочисленные типы в mysql http://dev.mysql.com/doc/refma... types.html
Это число в скобках влияет на ширину столбца, в отличае напрмер от VARCHAR, где в скобках указывается максимальная длина
1
0 / 0 / 0
Регистрация: 16.11.2015
Сообщений: 8
16.05.2016, 20:43  [ТС]
Примерно похожие статьи читал. Не могу понять, как тогда хранить числа, например, из 30 разрядов ?!...
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
16.05.2016, 21:10
Цитата Сообщение от Dgeday Посмотреть сообщение
как тогда хранить числа, например, из 30 разрядов ?!...
как строку
1
0 / 0 / 0
Регистрация: 16.11.2015
Сообщений: 8
16.05.2016, 21:19  [ТС]
Цитата Сообщение от Jewbacabra Посмотреть сообщение
как строку
А как быть с INT(255) AI, которые заданы как ID, там глюки будут ?!...
0
wq
85 / 78 / 32
Регистрация: 26.11.2015
Сообщений: 481
16.05.2016, 21:26
Цитата Сообщение от Dgeday Посмотреть сообщение
А как быть с INT(255)
255 это число знаков(нулей) которое выделит сервер mysql. у него там все в строках. смиритесь.число с 255 нулями вам все равно не понадобится
0
0 / 0 / 0
Регистрация: 16.11.2015
Сообщений: 8
16.05.2016, 21:28  [ТС]
Цитата Сообщение от wq Посмотреть сообщение
255 это число знаков(нулей) которое выделит сервер mysql. у него там все в строках. смиритесь.число с 255 нулями вам все равно не понадобится
Я согласен про 255 знаков, но вот 10-11 - это вполне реальная тема, собственно вопрос-то про это и был ...
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
16.05.2016, 23:35
Цитата Сообщение от Dgeday Посмотреть сообщение
но вот 10-11 - это вполне реальная тема
А ты попробуй выйти за пределы. 2 миллиарда это достаточно много.
0
0 / 0 / 0
Регистрация: 16.11.2015
Сообщений: 8
17.05.2016, 07:58  [ТС]
Цитата Сообщение от Jewbacabra Посмотреть сообщение
А ты попробуй выйти за пределы. 2 миллиарда это достаточно много.
Ну пусть вопрос будет риторическим и возможно со временем такие цифры станут реальностью и всё же вопрос остаётся в силе.

Что бы знать такие вещи хотя бы для теории, что бы сюрпризов в будущем не было
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
17.05.2016, 10:16
Цитата Сообщение от Dgeday Посмотреть сообщение
В базе есть поле INT(12). В него планировалось вводить ИНН
Обычно в числовых полях хранятся данные, с которыми предполагается совершать мат. операции. Если нет, то используй строки (ИНН, почтовый индекс, серия и номер паспорта и проч.).
1
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
17.05.2016, 15:35
Цитата Сообщение от Dgeday Посмотреть сообщение
Ну пусть вопрос будет риторическим и возможно со временем такие цифры станут реальностью и всё же вопрос остаётся в силе.
Если рассматривать все гипотетические ситуации, которые могут возникнуть, то не останется времени на саму разработку. Ну а если AI может превысить INT_MAX, то используй BIGINT, его уже точно превысить не удастся
1
wq
85 / 78 / 32
Регистрация: 26.11.2015
Сообщений: 481
17.05.2016, 17:02
Цитата Сообщение от Jewbacabra Посмотреть сообщение
то используй BIGINT, его уже точно превысить не удастся
база обработает. а пых (даже 64 битный) как посмотрит на переполнение? целое число-то у него все равно останется 32 бита. Или я ошибаюсь?
0
Эксперт PHP
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
17.05.2016, 17:20
Цитата Сообщение от wq Посмотреть сообщение
а пых (даже 64 битный) как посмотрит на переполнение?
Просто будет строка, а не число, если нет необходимости выполнять арифметических операций, то это не существенно.
Цитата Сообщение от wq Посмотреть сообщение
целое число-то у него все равно останется 32 бита.
php поддерживает 64 битные целые числа в системах, где тип long - 64 битный. Это выполняется на всех 64 разрядных ОС, кроме как всегда винды. Вроде как в php 7 сделали так, что и на 64 разрядной винде поддерживаются 64 разрядные целые, но я это не проверял.
1
wq
17.05.2016, 17:49

Не по теме:

Цитата Сообщение от Jewbacabra Посмотреть сообщение
кроме как всегда винды.
а.. ну не в винде же получается дело. а в том что "кроссплатформенный" пых не предоставил корректной версии для 64битной виндус. это уже ремарка.

0
17.05.2016, 18:14

Не по теме:

Цитата Сообщение от wq Посмотреть сообщение
а в том что "кроссплатформенный" пых не предоставил корректной версии для 64битной виндус
В последних версиях вроде как есть, да и в документации честно сказано:
The size of an integer is platform-dependent
64 разряда никто не обещает. Если бы массово php испольщовали в продакшн на винде, то вероятно поддержка уже давно бы была
Цитата Сообщение от wq Посмотреть сообщение
ну не в винде же получается дело
Может и не в винде, но уж больно часто она выделяется не в лучшую сторону

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.05.2016, 18:14
Помогаю со студенческими работами здесь

Почему меняется значение переменной?
Здравствуйте. Пишу вот такой код: #include <stdio.h> #include <sys/ioctl.h> #include <sys/types.h> #include <sys/stat.h> ...

Почему не меняется значение переменной?
Здравствуйте ,не могли бы вы помочь с кодом на c# в юнити . вот один класс: public class Monet2 : MonoBehaviour { public...

Почему не меняется значение переменной double?
int _tmain(int argc, _TCHAR* argv) { int a=5,b=4,n=3; double x=3.2; scanf("%d %d %f",&a,&b,&x); printf("n=%d a=%d...

Почему значение статической переменной не меняется?
У м еня есть класс, в котором есть статическая переменная - ID работника. В конструкторе я её увеличиваю, но она остаётся прежней код:...

Почему меняется значение константной переменной?
Доброго времени суток! Возникла такая проблема. Вовремя выполнения функции меняется значение константного указателя на 0x3f800000. Также...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru