2009-03-07 15 views

risposta

9

ipinfodb fornire dati di geolocalizzazione gratuiti per MySQL. Con un semplice traduttore di database, è possibile inserirlo in un altro database, poiché la struttura della tabella è semplice. Forniscono anche dati in formato CSV, che saranno più facili da importare in diversi motori di database.

I dati sono basati sulla versione gratuita di MaxMind e vengono aggiornati ogni mese. Forniscono inoltre API gratuite, se non si desidera memorizzare i dati nel server. L'accuratezza è decente e sufficiente per il normale utilizzo del sito web.

+9

non forniscono più il db –

8

Se hai bisogno di trovare la posizione dell'utente corrente in base al loro indirizzo IP, quindi potresti provare l'API di geolocalizzazione di Google, in particolare google.loader.ClientLocation.

Scopri i documenti di Google API per maggiori informazioni: http://code.google.com/apis/ajax/documentation/#ClientLocation

+1

+1 'causa che è di destra, ma nella mia esperienza ha molto spesso idea di dove si da. Almeno ti dice quando non lo sa. Sembra essere meglio identificare le cose residenziali che commerciali. –

13

ho usato http://www.maxmind.com/app/geolitecity. È una versione meno esatta del loro database a pagamento. Il database gratuito afferma di essere "oltre il 99,5% a livello nazionale e il 79% a livello cittadino per gli Stati Uniti entro un raggio di 25 miglia". Puoi vedere la loro accuratezza dettagliata allo http://www.maxmind.com/app/geolite_city_accuracy.

I dati vengono presentati come file CSV contenente il blocco IP iniziale, il blocco IP finale e la posizione. È abbastanza facile caricare in sqlserver.

API in C, C#, PHP, Java, Perl e la versione gratuita, GeoLite, ha una versione IPv6 in aggiunta al formato CSV scaricabile.

0

See banca dati qui -

http://myip.ms/info/cities_sql_database/World_Cities_SQL_Mysql_Database.html

Hanno paesi/città ddatabase per Microsoft SQL Server. Ecco il codice -

CREATE TABLE countries (
    countryID varchar(3) NOT NULL, 
    countryName varchar(52) NOT NULL, 
    localName varchar(45) NOT NULL, 
    webCode varchar(2) NOT NULL, 
    region varchar(26) NOT NULL, 
    continent varchar(15) NOT NULL, 
    latitude float NOT NULL, 
    longitude float NOT NULL, 
    surfaceArea float NOT NULL, 
    population int NOT NULL, 
    PRIMARY KEY (countryID), 
    UNIQUE (webCode), 
    UNIQUE (countryName) 
); 


CREATE TABLE cities (
    cityID int NOT NULL, 
    cityName varchar(50) NOT NULL, 
    stateID int NOT NULL, 
    countryID varchar(3) NOT NULL, 
    latitude float NOT NULL, 
    longitude float NOT NULL, 
    PRIMARY KEY (cityID), 
    UNIQUE (countryID,stateID,cityID) 
); 
0

Scegli questa città del mondo libero database http://www.sudostuff.com/world-cities-database-8.html

Include città, della regione e del paese.

File in formato MySQL da scaricare con tre tabelle, paese, regione e città. schema Paese

CREATE TABLE IF NOT EXISTS `country` (
`countryId` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, 
`code` VARCHAR(5) DEFAULT NULL, 
`name` VARCHAR(150) DEFAULT NULL, 
PRIMARY KEY (`countryId`) 
) ENGINE=InnoDB; 

INSERT INTO `country` (`countryId`, `code`, `name`) VALUES(1, 'ad', 'andorra'); 
INSERT INTO `country` (`countryId`, `code`, `name`) VALUES(2, 'ae', 'united arab emirates'); 
INSERT INTO `country` (`countryId`, `code`, `name`) VALUES(3, 'af', 'afghanistan'); 
INSERT INTO `country` (`countryId`, `code`, `name`) VALUES(4, 'ag', 'antigua and barbuda'); 
INSERT INTO `country` (`countryId`, `code`, `name`) VALUES(5, 'ai', 'anguilla'); 
Problemi correlati