Pergunta

Alguém já usou isso antes, preciso de país, cidade, banco de dados IP gratuito para SQLServer

Foi útil?

Solução

ipinfodb Forneça dados de geolocalização gratuitos para MySQL. Com um tradutor simples de banco de dados, você pode colocá -lo em um banco de dados diferente, pois a estrutura da tabela é simples. Eles também fornecem dados no formato CSV, que serão mais fáceis de importar para diferentes mecanismos de banco de dados.

Os dados são baseados na versão gratuita do MaxMind e são atualizados todos os meses. Eles também fornecem API gratuita, se você não deseja armazenar os dados em seu servidor. A precisão é decente e suficiente para o uso normal do site.

Outras dicas

Eu tenho usado http://www.maxmind.com/app/geolitecity . É uma versão menos exata do banco de dados pago. O banco de dados gratuito afirma estar "mais de 99,5% em nível de país e 79% em nível de cidade para os EUA em um raio de 25 milhas". Você pode ver a precisão deles detalhada em http://www.maxmind.com/app/geolite_city_accuracy.

Os dados são apresentados como um arquivo CSV que contém o bloco IP inicial, o bloco IP final e o local. É fácil o suficiente para carregar no SQLServer.

APIs em C, C#, PHP, Java, Perl e a versão gratuita, Geolite, possui uma versão IPv6, além do formato CSV para download.

Se você precisar encontrar a localização do usuário atual com base no endereço IP deles, poderá experimentar a API do Google Geolocation, em particular google.loader.ClientLocation.

Confira os documentos da API do Google para obter mais informações:http://code.google.com/apis/ajax/documentation/#clientLocation

Verifique este banco de dados de cidades mundiais gratuitas http://www.sudosff.com/world-cities-database-8.html

Inclui cidade, região e país.

Arquivo de formato MySQL para baixar com três tabelas, país, região e cidade.Esquema País

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');

Você pode encontrar o banco de dados MySQL daqui também ...

https://github.com/baraskar/worlds-country-state-and-city-mysql-database

Sugestões sempre são bem -vindas ...

Não exatamente para o SQL Server, mas para o MySQL, sugiro, você verá este repositório do GitHub:

https://github.com/Turalus/OpendB

Geonames são dados gratuitos, mas muitos e muitos dados. Você precisa de um DBA para limpar os dados. Mas é um esforço para limpar a carga dos dados de acordo com o seu requisito. Acabei com um tamanho de arquivo de 1,3 GB após a extração de zip e o carregamento desses dados para DB também requer um bom hardware poderoso.

Os dados maxmind são muito antigos e eles pararam de atualizar os dados gratuitos que fornecem

Depois, existem muitas fontes de dados pagas, mas listando o menos caro e bom que eu usei em algum momento do banco de dados de cidades mundiais do mundo http://www.worldcitiesdatabase.com que está a um custo razoável.

Então você também pode olhar para os serviços de dados pagos da MaxMind, mas eles são muito caros, a menos que seu orçamento seja muito bom.

Espero que isto ajude.

Veja o banco de dados aqui -

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

Eles têm países / cidades ddatabase para o Microsoft SQL Server. Código aqui -

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)
);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top