BIGINT

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в Flash-приложениях (ActionScript)
Garch
Сообщения: 186
Зарегистрирован: 27 ноя 2011, 20:49

BIGINT

Сообщение Garch »

Как работать с таким типом данных в БД?
Создал таблицу, там где просили указать тип - указал BIGINT, так как INT мне мало.
Но когда счет доходит до максимума INT`а, счет начинается заново(из самого минимального значения INT).
В общем он как бы принимает BIGINT за простой INT, может с бигинтом надо как то по особенному общаться?
Serge
WEB Team
WEB Team
Сообщения: 520
Зарегистрирован: 04 мар 2011, 21:55

Re: BIGINT

Сообщение Serge »

Это насколько же большие числа? Может имеет смысл их в строках хранить?
Garch
Сообщения: 186
Зарегистрирован: 27 ноя 2011, 20:49

Re: BIGINT

Сообщение Garch »

Ну смотрите
Есть число, и каждую секунду к нему прибовляется пара миллиончиков единиц, 3.000.000 к примеру
Каждые 5 сек это все идет в базу
Соответственно число очень большое, в разы больше простого инта))

Как их в строках хранить, не подскажите? :)
Casperovskii
Сообщения: 429
Зарегистрирован: 22 июн 2012, 17:50

Re: BIGINT

Сообщение Casperovskii »

Написать свой обработчик для складывания в столбик по разрядам же. Был бы с компа - пояснил. Т.е. тебе нужно строку твою разбить на символы и посимвольно складывать, как в школе (переводя символы в числа, естественно и если число стало двуразрядное (больше 9), то разбивать его на два однозначных и первый знак прибавлять к следующему разряду).
Serge
WEB Team
WEB Team
Сообщения: 520
Зарегистрирован: 04 мар 2011, 21:55

Re: BIGINT

Сообщение Serge »

Ага, все верно.
Пишется свой класс для работы с числами, которые представляют числа, в котором банально перегружаются необходимые арифметические операции.

Ну и может стоит задуматься над оптимизацией? К примеру, хранить в базе число пропорциональное исходному, а не само исходное. С Бигинтом работать тоже самое, что и с интом, только вопрос в скорости обработки таких данных и объеме базы
Garch
Сообщения: 186
Зарегистрирован: 27 ноя 2011, 20:49

Re: BIGINT

Сообщение Garch »

Я не совсем понял про хранение в разрядах, не могли бы рассказать подробнее, пожалуйста? :)
Serge
WEB Team
WEB Team
Сообщения: 520
Зарегистрирован: 04 мар 2011, 21:55

Re: BIGINT

Сообщение Serge »

Garch
ну если у вас все числа, к примеру, заканчиваются на 000 - то зачем хранить эти лишние 000?
Если не понятка в этом... А если про перегрузку арифметики - то числа хранить можно в строках и писать сложение. К примеру:

127 + 45 = 127 + 045 = 1 + 0 _ 2 + 4 _ 7 + 5 = 1 _ 6 + 1(единиц больше десяти в сумме) _ 2
Garch
Сообщения: 186
Зарегистрирован: 27 ноя 2011, 20:49

Re: BIGINT

Сообщение Garch »

Так если числа можно хранить в строках, можно просто большое число сохранять как строку? Ничего не раскладывая ничего? Арифметика вся происходит на стороне клиента же все равно, отправляется в базу уже готовое число
IndieGD
Сообщения: 124
Зарегистрирован: 28 май 2013, 19:20

Re: BIGINT

Сообщение IndieGD »

Garch, можно
Garch
Сообщения: 186
Зарегистрирован: 27 ноя 2011, 20:49

Re: BIGINT

Сообщение Garch »

А максимум какой то будет?
Оно будет точно нормально работать?
Не зверски много памяти занимать?
Ответить