8 votes

Obtenir le nom de la région dans la base de données maxmind

J'ai téléchargé une base de données villes

`Country`  `City`        `AccentCity`  `Region`  `Population`  `Latitude`  `Longitude`
af     amir kalay       Amir Kalay      16        0             34.6333     70.3333 
ad     aixas            Aixas           06        0             42.4833     1.4667 
and lot more records

J'ai téléchargé une autre base de données appelée fips_10_4 qui indique l'état de la ville.

country,Region,State
AD,02,"Canillo"
AD,03,"Encamp"
AD,04,"La Massana"
AD,05,"Ordino"
AD,06,"Sant Julia de Loria"
AD,07,"Andorra la Vella"
AD,08,"Escaldes-Engordany"
AE,01,"Abu Dhabi"

Si vous pensez que je vous demande une requête SQL, vous vous trompez. Tout fonctionnait bien, mais j'ai appris que le fichier que j'ai téléchargé à partir de
Site web de Maxmind est incomplet car "fips_10_4" n'a pas d'enregistrement pour le pays "af" et la région "16". Quelqu'un peut-il m'aider à résoudre ce problème et m'indiquer l'endroit correct pour télécharger ce fichier complet ?

9voto

Teleo Points 686

La norme FIPS 10-4 a changé. La liste des modifications peut être consultée à l'adresse suivante aquí .

En particulier, l'AF16 (Laghman) est devenu l'AF35. MaxMind utilise la nouvelle liste.

Si vous avez besoin de l'ancien et du nouveau code, vous pouvez les trouver aquí . Vous pouvez analyser le contenu du fichier et remplacer la table de votre base de données par les informations qu'il contient.

9voto

Ben Points 23834

AF est le code ISO à deux chiffres (IS0-3166-2) pour l'Afghanistan, que l'ISO tente actuellement de vendre pour la somme franchement étonnante de 244 CHF (francs suisses).

En tant que Teleo dit La norme FIPS 10-4 a été modifiée comme indiqué sur le site Internet de la Commission européenne. Site web de l'ITL et le lien donné par Teleo fournit les données dans un format plus utilisable. MaxMind le propose également dans un meilleur format.

Je serais extrêmement se méfier de l'utilisation de ce produit. Le lien de MaxMind et de Teleo est fourni gratuitement par une société/personne externe qui n'a aucun intérêt particulier à maintenir ses données à jour. Je remarque, par exemple, que le lien suivant pays manquent :

  • Sud Soudan
  • Sint Martaan (partie néerlandaise)
  • Bonaire, Saint-Eustache et Saba
  • Curaçao

Les trois dernières faisaient partie des Antilles néerlandaises, qui ont été dissoutes le 10 octobre 2010. D'ailleurs, les Antilles néerlandaises, qui n'existent plus depuis un an et demi, figurent toujours dans ce dossier.

La raison de tout cela ? La norme FIPS 10-4 était retiré il y a presque dix ans le 8 septembre 2002. Pour citer le site web de l'ITS (je souligne) :

"Pour remplacer la norme FIPS 10-4, l'INCITS L1 travaille en coordination avec d'autres organismes de normalisation. développeurs de normes et les parties intéressées afin de déterminer si le traitement d'un projet de norme nationale américaine proposée ou d'un projet de norme nationale américaine proposée ou d'un projet de norme nationale américaine proposée. l'adoption d'une norme ISO serait la meilleure solution. Pour plus d'informations sur l'état d'avancement de cette activité, contactez Rick Pearsall (Richard.A.Pearsall@nga.mil)."

Un rapide coup d'œil sur Google permet d'apprendre que la norme INCITS L1 est prochaine réunion le 12 juin 2012 . Je ne retiendrais pas votre souffle.

Une autre raison de ne pas utiliser le FIPS est qu'il est peu probable qu'il soit utilisé en dehors des États-Unis (il est évident que certaines personnes l'utiliseront encore). Même si cela n'a pas d'importance dans l'immédiat, il est évident que vous devriez protéger vos systèmes contre les risques futurs.

Je recommande vivement l'utilisation de la norme ISO 3166. Il s'agit d'une méthode mondialement reconnue de catégorisation des données relatives aux pays.

En CommonDataHub maintient une excellente version, qui inclut le pays et l'État de la même manière que la norme FIPS 10-4. Ils ont également d'autres Bases de données des états ISO qui sont plus normalisés et méritent d'être étudiés.

Elle maintient également une liste de toutes les villes dont la population est supérieure à 5 000 habitants.

L'ISO conserve une copie sur leur site web de la norme 3166-2, ce qui nécessitera un peu de codage pour s'assurer qu'elle est toujours mise à jour, mais vous aurez au moins la certitude qu'elle est correcte. Wikipedia (en anglais) est également étonnamment efficace pour ce qui est de l'actualisation des données. Il a devancé CommonDataHub d'un mois lors de la création du Sud-Soudan, en raison de problèmes liés à l'annonce de l'existence des données.

Il existe d'autres endroits où ces données sont disponibles, mais je me contente de détailler celles que j'utilise.

Si vous souhaitez éviter complètement les bases de données, l'option Yahoo ! PlaceFinder API est un bon point de départ. Il contient quelques documenté problèmes mais au moins il y a un endroit où l'on peut trouver des vous pouvez leur dire "ils .

t

D

3voto

Ilya_Gazman Points 3685

Je ne sais pas quel est votre véritable objectif, mais aquí est une grande ressource de pays, de villes et de...

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X