Base de datos con países, provincias y localidades de todo el mundo
Written by Sergi on 22 Junio 2008 – 10:39 am -
Uno de los problemas de un proyecto Web el cual necesita tener referencias de países, provincias y localidades con la mayor cantidad correcta de registros es, precisamente, encontrar una buena base de datos.
Después de buscar y buscar encontré una URL donde nos ofrecen una base de datos con países, provincias y localidades de todo el mundo (lo del todo no es una afirmación exacta, pero sí aproximada) en ocho idiomas diferentes (Ruso, Inglés, Alemán, Francés, Castellano, Italiano, Portugués y Chino).
A parte de los más de 200 países, casi 2.000 provincias y sus casi 130.000 localidades, viene acompañado de su posición (latitud y longitud) de Google Maps (aunque no todas son exactas).
Os dejo el enlace con esta base de datos de países, provincias y localidades de todo el mundo.
No he podido dejar referencia del sitio donde la encontré porque la URL hacia el fichero era un servidor de Rapidshare y no mencionaba ninguna otra Web.
Espero que sea de utilidad este listado de países y sus provincias.
Edito: En el listado de países y sus provincias se ha detectado algunas duplicidades en la tabla de localidades (mismo país, misma región, mismo idioma y mismo nombre de localidad con diferente ID). Para solventar esto, he creado un pequeño script PHP:
$sql = "SELECT count(id) as total, localidades.* FROM `localidades` group by id_region, ". "id_pais, id_idioma, nombre having total > 1";$contador = 0; $res = $conexion->db_query($sql); echo "Total seleccioandas: " . $conexion->db_num_rows($res); echo "<br>"; while ($row = $conexion->db_fetch_array($res)){ $sql = "DELETE FROM localidades WHERE id_region = '{$row['id_region']}’ “. ” AND id_pais = ‘{$row['id_pais']}’ AND nombre = \”{$row['nombre']}\” “. ” AND id_idioma = ‘{$row['id_idioma']}’ AND id <> ‘{$row['id']}’”; if (!$conexion->db_query($sql)){ echo $sql.”<br>”.$conexion->db_error().”<br><br>”; die; } else $contador++; } echo “Total: $contador”;
Tags: base de datos, localidades, mundo, países, provincias, regiones
Posted in Informática, Programación, SQL |

Junio 22nd, 2008 at 17:01 pm
Que de trabajo puede ahorrar esto, habrá que ver como separarla para poder utilizar en cada momento solo lo que necesites, pero pesando 64 megas se hace bastante complicado trabajar con ese archivo SQL.
Gracias
Junio 22nd, 2008 at 17:33 pm
Bueno, sería importarla entera y ya está
luego las peticiones por separado, no?
(es que no entiendo donde ves el problema)
Junio 23rd, 2008 at 9:53 am
Estoy de acuerdo con Sergi, no se donde ves el problema, este su,inistro es bestial!! lo pienso utilizar en todos mis desarrollos.
Con webservices te podrás montar un filtro por nombre o por lo que necistes.
Junio 23rd, 2008 at 10:02 am
Aqui te dejo una solución que halle hace ya algun tiempo, muy versatil y con soporte webservice
Este es el enlace
http://salvador-gomez.com/weblog/2008/06/geolocalizacion/
Junio 23rd, 2008 at 10:31 am
Muy util, lo importante son los datos, el como aprovecharlos ya es depede lo que nos haga falta
Agosto 19th, 2008 at 23:56 pm
Chaval, te lo has currao. Gracias por este gesto de generosidad y por compartir tu conocimiento con el resto.
Agosto 20th, 2008 at 8:36 am
Gracias Gorrión. Aunque solo he puesto al alcance de “todos” una herramienta difícil de encontrar.
Octubre 13th, 2008 at 18:17 pm
gracias men fue una graaaaaan ayuda
Diciembre 3rd, 2008 at 18:29 pm
Muy pero muy groso!
mil gracias, chabón!
Abrazo,
Nacho.-