Как в MySQL всунуть дробь?

DanGien

Новичок
Как в MySQL всунуть дробь?

Программа вычисляет по формуле определенную величину, которая может быть как целым цислом, так и дробью. Когда и как будет, я не знаю. Зависит от др. величин. Если полученную величину вывести сразу, то дробь выводится. А если ее засунуть в базу MySQL, то вместо, к примеру, 2.5 выводится просто 2. Как можно это обойти, чтобы считались и заносились в базу дроби?

P.S. Это поле - денежная величина, поэтому надо считать до цента:)

To Фанат: это тоже вопрос синтаксиса:)
 

DanGien

Новичок
Пока стоит поле

vsego int (10);

Что нужно сделать? Так будет работать?

vsego float (10, 2);

Если да, то это будет нормально работать и для целых чисел, и для дробей с количеством до 2 знаков после запятой (что мне нужно)?
 

Фанат

oncle terrible
Команда форума
тебе нужно не float, а decimal

только перед записью прогоняй через str_replace, заменяя запятую на точку
 

DanGien

Новичок
vsego DECIMAL ([,2]); - так для целых чисел, и для дробей с количеством до 2 знаков после запятой?

Фанат, а зачем менять запятую на точку, если и так вроде точка выдается?
 

Фанат

oncle terrible
Команда форума
что-то я не понял этой записи.
что за скобки квадратные?

заменять для надежности и удобства.
у нас разделителем является запятая.
ну так пусть пишут, как хотят
 

DanGien

Новичок
В примере

DECIMAL[(M[,D])] [UNSIGNED] [ZEROFILL]

такой вот ужас...

у меня заработало так:

vsego decimal (10,2);

Насчет запятой подумаю... но хлопотное это дело, таких полей у меня...:)
 

Falc

Новичок
Фанат
DECIMAL Не очень хорошее решение, зачем хранить лишние данные?
 
Сверху