WGS84 Lat Lng quel type numérique pour le stockage sous MySQL ?
Par PlaceOweb le vendredi, novembre 29 2013, 18:42 - General - Lien permanent
Coordonnées géographique, quel type numérique utiliser pour le stockage de la latitude et longitude sous MySQL ?
Le type de données MySQL "DECIMAL" est pour l'arithmétique exacte.
Contrairement au type "FLOAT" sa précision est fixée pour n'importe quelle taille de nombre, donc en utilisant "DECIMAL" au lieu de "FLOAT" vous pourriez éviter les erreurs de précision lorsque vous effectuez des calculs.
Si vous avez juste à stocker et récupérer des numéros sans calcul, dans la pratique "FLOAT" serait sûr, mais il n'y a pas de mal à utiliser "DECIMAL".
La plage de latitudes s’étend de -90° de +90° (degrés), donc DECIMAL(10, 8) est correct pour cela, mais les longitudes vont de -180° à +180° (degrés) donc vous aurez besoin d'un DECIMAL(11, 8).
Le premier nombre est le nombre total de chiffres mémorisés, et le second est le nombre après la virgule.
En bref : lat DECIMAL(10, 8) NOT NULL, lng DECIMAL(11, 8) NOT NULL