DOUBLE как преодолеть лимит типа данных

ddarder

Новичок
здравствуйте! я новенький на вашем форуме) пришел в поисках решения своей проблемы)))
есть у меня готовый проект который работает уже не один год, то есть вап сайт... на нем регулярно производятся математические вычисления и заносятся в базу большими числами

в базу идут числа в формате Double типа 9.9999999999999E+307 проблема такая что дубля стало не хватать но этот "лимит" типа данных стоит не только в mysql но и в php....
короче эта проблема у меня уже более 8 месяцев хз что делать)
 

ddarder

Новичок
DOUBLE value is out of range in '(`admin_mmars`.`users`.`gold` + '6.1701772139627E+307')'

Query:
UPDATE `users` SET `gold` = `gold`+'6.1701772139627E+307' WHERE `id` = '1'

вот такая грусная картина😞
 

fixxxer

К.О.
Партнер клуба
Никогда не считать деньги (даже виртуальные) во float-ах (и их вариациях).

В базе завести поле типа DECIMAL, хранить в нем. Для вычислений (со стороны php - со стороны базы и так все будет ок) использовать bcmath или gmp, а чтобы с ними напрямую не мучаться, удобнее взять библиотеку типа вот этой.
 

fixxxer

К.О.
Партнер клуба
Ну да, если подойдёт, фиг знает, что у него там за свиньи 80 уровня.
 
Сверху