Как сохранить точные координаты десятичной степени в базе данных MySQL - PullRequest
2 голосов
/ 07 декабря 2011

Я создал базу данных, используя руководство по поиску магазина в Google Code, в котором указано, что поля для хранения координат маркера имеют тип FLOAT(10,6).Однако, когда я геокодирую определенные точки с помощью сервиса геокодера Google, я получаю некоторые результаты с 14 десятичными знаками.Например,

-70.07290899999998

Числа никогда не превышают 21 или меньше -67 и всегда имеют от 1 до 14 цифр после десятичной точки.

Какустановить это поле в базе данных?

Ответы [ 2 ]

7 голосов
/ 07 декабря 2011

Не используйте float; использовать фиксированную точку. Плавать от природы грубо.

http://dev.mysql.com/doc/refman/5.0/en/fixed-point-types.html

3 до, 15 после DECIMAL (17,14)

3 голосов
/ 07 декабря 2011

Я просто использую тип столбца DECIMAL, и шесть цифр после десятичной точки более чем достаточно точны для местоположений.

...