用于sql server的免费国家,城市数据库[关闭]

Posted

技术标签:

【中文标题】用于sql server的免费国家,城市数据库[关闭]【英文标题】:free country, city database for sql server [closed] 【发布时间】:2010-10-11 21:41:33 【问题描述】:

有人用过这个吗,我需要免费的国家、城市、sqlserver的IP数据库

【问题讨论】:

【参考方案1】:

我用过http://www.maxmind.com/app/geolitecity。这是他们付费数据库的不太精确的版本。免费数据库声称“在 25 英里半径范围内,美国在国家层面上超过 99.5%,在城市层面上超过 79%”。你可以在http://www.maxmind.com/app/geolite_city_accuracy查看它们的准确度。

数据以 CSV 文件的形式呈现,其中包含起始 IP 块、结束 IP 块和位置。加载到 sqlserver 很容易。

C、C#、php、Java、Perl 和免费版本 GeoLite 中的 API 除了可下载的 CSV 格式外,还有一个 IPv6 版本。

【讨论】:

【参考方案2】:

ipinfodb 为 mysql 提供免费的地理位置数据。使用简单的数据库转换器,您可以将其放入不同的数据库中,因为表结构很简单。他们还提供 CSV 格式的数据,这将更容易导入到不同的数据库引擎。

数据基于 MaxMind 免费版,每月更新。如果您不想将数据存储在服务器中,它们还提供免费的 API。准确度不错,足以满足正常的网站使用。

【讨论】:

他们不再提供数据库【参考方案3】:

如果您需要根据 IP 地址查找当前用户的位置,那么您可以尝试使用 Google Geolocation API,尤其是 google.loader.ClientLocation

查看 Google API 文档了解更多信息: http://code.google.com/apis/ajax/documentation/#ClientLocation

【讨论】:

+1 '因为这是正确的,但根据我的经验,它通常不知道你来自哪里。至少当它不知道时它会告诉你。似乎比商业更好地识别住宅。【参考方案4】:

你也可以从这里找到 Mysql 数据库...

https://github.com/baraskar/Worlds-Country-State-and-City-Mysql-Database

欢迎随时提出建议……

【讨论】:

【参考方案5】:

查看这个免费的世界城市数据库http://www.sudostuff.com/world-cities-database-8.html

包括城市、地区和国家/地区。

MySQL 格式文件下载,包含国家、地区和城市三张表。 国家架构

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

【讨论】:

【参考方案6】:

不完全适用于 SQL Server,而是适用于 MySQL,我建议您查看这个 GitHub 存储库:

https://github.com/turalus/openDB

【讨论】:

【参考方案7】:

Geonames 是免费数据,但数据量很大。您需要 DBA 来清理数据。但根据您的要求清理负载数据是一次性的工作。在 zip 解压后,我最终得到了 1.3 GB 的文件大小,并将这些数据加载到 DB 还需要强大的硬件。

maxmind 数据很旧,他们已停止更新提供的免费数据

然后有许多付费数据源,但列出了我曾经使用过的来自http://www.worldcitiesdatabase.com 的世界城市数据库中成本最低且价格合理的数据源。

然后您也可以查看 maxmind 付费数据服务,但它们非常昂贵,除非您的预算非常好。

希望这会有所帮助。

【讨论】:

【参考方案8】:

看到这个

http://www.flagip.com

【讨论】:

【参考方案9】:

在此处查看数据库 -

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

他们有 Microsoft Sql Server 的国家/城市数据库。这里的代码 -

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

【讨论】:

以上是关于用于sql server的免费国家,城市数据库[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

sql 用于创建和填充国家,城市和国家的MySQL脚本与最受欢迎的城市和国家已经不相关的语言表

城市/州|地区/国家的邮政编码国际数据库? [关闭]

有一个表格,其中包含国家和城市列,如下表输入所示。我需要如下所述的输出

Sql 默认国家、城市、城镇列表

用于在SQL server表中导入India的所有城市的脚本

地理 IP 和国家/地区/城市数据库