news 2026/4/4 19:48:51

中国行政区划数据MySQL部署实战指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
中国行政区划数据MySQL部署实战指南

想要快速搭建中国行政区划数据库的MySQL版本吗?这个完整的中国行政区划数据系统包含从省级到村级的五级联动信息,是开发地址选择组件、数据分析平台的理想数据源。本文将带你从零开始完成MySQL数据部署全流程,无需复杂技术背景!🚀

【免费下载链接】Administrative-divisions-of-China中华人民共和国行政区划:省级(省份)、 地级(城市)、 县级(区县)、 乡级(乡镇街道)、 村级(村委会居委会) ,中国省市区镇村二级三级四级五级联动地址数据。项目地址: https://gitcode.com/gh_mirrors/ad/Administrative-divisions-of-China

📊 项目核心价值与数据特性

中国行政区划数据库汇集了完整的五级行政区划信息,覆盖省级(省份、直辖市、自治区)、地级(城市)、县级(区县)、乡级(乡镇街道)和村级(村委会居委会)。这些数据基于官方发布的统计用区划代码,具有极高的准确性和权威性。

数据层级体系

  • 省级数据:34个省级行政区划单元
  • 地级数据:334个地级行政区划单元
  • 县级数据:2851个县级行政区划单元
  • 乡级数据:超过4万个乡级单位
  • 村级数据:超过66万个村级单位

🔧 环境配置与项目初始化

获取项目源码

git clone https://gitcode.com/gh_mirrors/ad/Administrative-divisions-of-China cd Administrative-divisions-of-China

安装项目依赖

项目基于Node.js环境运行,需要先安装必要的依赖包:

npm install

验证数据文件完整性

项目提供了多种格式的数据文件,位于dist/目录下:

  • data.sqlite- SQLite格式完整数据库
  • provinces.csvcities.csv等 - CSV格式分层数据文件
  • provinces.jsoncities.json等 - JSON格式分层数据文件

🗃️ MySQL数据库架构设计

创建专用数据库

CREATE DATABASE china_administrative_divisions; USE china_administrative_divisions;

设计五级联动表结构

-- 省级行政区划主表 CREATE TABLE provinces ( division_code VARCHAR(10) PRIMARY KEY, division_name VARCHAR(50) NOT NULL ); -- 地级行政区划关联表 CREATE TABLE cities ( division_code VARCHAR(10) PRIMARY KEY, division_name VARCHAR(50) NOT NULL, province_code VARCHAR(10), FOREIGN KEY (province_code) REFERENCES provinces(division_code) ); -- 县级行政区划扩展表 CREATE TABLE counties ( division_code VARCHAR(10) PRIMARY KEY, division_name VARCHAR(50) NOT NULL, city_code VARCHAR(10), province_code VARCHAR(10), FOREIGN KEY (city_code) REFERENCES cities(division_code), FOREIGN KEY (province_code) REFERENCES provinces(division_code) ); -- 乡级行政区划明细表 CREATE TABLE townships ( division_code VARCHAR(15) PRIMARY KEY, division_name VARCHAR(50) NOT NULL, county_code VARCHAR(10), city_code VARCHAR(10), province_code VARCHAR(10), FOREIGN KEY (county_code) REFERENCES counties(division_code), FOREIGN KEY (city_code) REFERENCES cities(division_code), FOREIGN KEY (province_code) REFERENCES provinces(division_code) ); -- 村级行政区划终端表 CREATE TABLE villages ( division_code VARCHAR(20) PRIMARY KEY, division_name VARCHAR(50) NOT NULL, township_code VARCHAR(15), county_code VARCHAR(10), city_code VARCHAR(10), province_code VARCHAR(10), FOREIGN KEY (township_code) REFERENCES townships(division_code), FOREIGN KEY (county_code) REFERENCES counties(division_code), FOREIGN KEY (city_code) REFERENCES cities(division_code), FOREIGN KEY (province_code) REFERENCES provinces(division_code) );

🔄 数据转换与批量导入

生成标准CSV数据文件

使用项目内置的导出脚本生成CSV格式文件:

./export_csv.sh

该脚本将自动创建五个核心CSV文件:

  • dist/provinces.csv- 省级行政区划数据
  • dist/cities.csv- 地级行政区划数据
  • dist/areas.csv- 县级行政区划数据
  • dist/streets.csv- 乡级行政区划数据
  • dist/villages.csv- 村级行政区划数据

执行MySQL数据导入操作

使用MySQL的批量导入功能,按层级顺序导入数据:

-- 导入省级行政区划数据 LOAD DATA LOCAL INFILE 'dist/provinces.csv' INTO TABLE provinces FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS; -- 导入地级行政区划数据 LOAD DATA LOCAL INFILE 'dist/cities.csv' INTO TABLE cities FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS; -- 导入县级行政区划数据 LOAD DATA LOCAL INFILE 'dist/areas.csv' INTO TABLE counties FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS; -- 导入乡级行政区划数据 LOAD DATA LOCAL INFILE 'dist/streets.csv' INTO TABLE townships FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS; -- 导入村级行政区划数据 LOAD DATA LOCAL INFILE 'dist/villages.csv' INTO TABLE villages FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS;

✅ 数据质量验证与完整性检查

验证数据导入结果

执行以下SQL查询验证各级数据完整性:

SELECT '省级行政区划' as 数据层级, COUNT(*) as 记录数量 FROM provinces UNION ALL SELECT '地级行政区划', COUNT(*) FROM cities UNION ALL SELECT '县级行政区划', COUNT(*) FROM counties UNION ALL SELECT '乡级行政区划', COUNT(*) FROM townships UNION ALL SELECT '村级行政区划', COUNT(*) FROM villages;

预期验证结果应显示:

  • 省级行政区划:34条数据记录
  • 地级行政区划:334条数据记录
  • 县级行政区划:2851条数据记录
  • 乡级行政区划:约4万条数据记录
  • 村级行政区划:约66万条数据记录

🚀 实际应用场景与查询示例

应用场景一:地址联动选择组件开发

-- 获取指定省份下的所有城市信息 SELECT * FROM cities WHERE province_code = '44'; -- 获取指定城市下的所有区县信息 SELECT * FROM counties WHERE city_code = '4401'; -- 获取指定区县下的所有乡镇信息 SELECT * FROM townships WHERE county_code = '440106'; -- 获取指定乡镇下的所有村庄信息 SELECT * FROM villages WHERE township_code = '440106011';

应用场景二:数据分析与统计报表

-- 统计各省份的城市数量分布 SELECT p.division_name, COUNT(c.division_code) as 城市数量 FROM provinces p LEFT JOIN cities c ON p.division_code = c.province_code GROUP BY p.division_code, p.division_name; -- 查找特定名称的行政区划单元 SELECT * FROM provinces WHERE division_name LIKE '%广东%';

⚡ 性能优化与运维最佳实践

索引策略优化配置

-- 为高频查询字段创建性能索引 CREATE INDEX idx_cities_province ON cities(province_code); CREATE INDEX idx_counties_city ON counties(city_code); CREATE INDEX idx_townships_county ON townships(county_code); CREATE INDEX idx_villages_township ON villages(township_code);

数据维护管理建议

  1. 定期备份机制:配置MySQL自动备份策略确保数据安全
  2. 编码统一规范:确保数据库使用UTF-8字符集支持中文
  3. 外键关系验证:定期检查外键约束的完整性和一致性

🎯 部署成果总结与后续规划

通过本文的完整部署指南,你已经成功将中国行政区划数据库从SQLite迁移到MySQL环境。这套五级联动数据系统为你的技术项目提供了坚实的数据基础:

  • ✅ 完整的行政区划数据覆盖范围
  • ✅ 标准化的数据库表结构设计
  • ✅ 高效的数据查询访问性能
  • ✅ 易于维护的数据关系架构

现在你可以基于这套MySQL数据库系统开发各类应用,包括地址选择组件、数据分析平台、地理信息系统等。这套数据将为你的项目提供准确、完整的中国行政区划信息服务支撑!

【免费下载链接】Administrative-divisions-of-China中华人民共和国行政区划:省级(省份)、 地级(城市)、 县级(区县)、 乡级(乡镇街道)、 村级(村委会居委会) ,中国省市区镇村二级三级四级五级联动地址数据。项目地址: https://gitcode.com/gh_mirrors/ad/Administrative-divisions-of-China

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/1 22:29:21

PyInstaller解包工具完整指南:轻松提取Python程序源码

PyInstaller解包工具完整指南:轻松提取Python程序源码 【免费下载链接】pyinstxtractor PyInstaller Extractor 项目地址: https://gitcode.com/gh_mirrors/py/pyinstxtractor PyInstaller解包工具是一款功能强大的Python脚本工具,专门用于提取由…

作者头像 李华
网站建设 2026/3/26 8:34:17

10 行代码带你上手 LangChain 智能 Agent

它是一个开源框架,内置了完善的代理(Agent)架构,并且可以和各种模型、工具、外部系统无缝集成——你只需要写很少的代码,就能搭出功能完整的智能应用。一、LangChain 是什么?🤔简单一句话&#…

作者头像 李华
网站建设 2026/4/3 4:44:47

【高阶避坑指南】:Dify使用Flask-Restx时不可不知的4类异常处理机制

第一章:Dify Flask-Restx 错误修复在使用 Dify 平台集成 Flask-Restx 构建 API 接口时,开发者常遇到资源加载失败、模型序列化异常以及请求解析错误等问题。这些问题多源于配置缺失或扩展初始化顺序不当。通过合理调整应用工厂模式中的组件注册流程&…

作者头像 李华
网站建设 2026/4/2 14:07:38

PlotDigitizer图表数据提取:5步解决科研数据数字化难题

PlotDigitizer图表数据提取:5步解决科研数据数字化难题 【免费下载链接】PlotDigitizer A Python utility to digitize plots. 项目地址: https://gitcode.com/gh_mirrors/pl/PlotDigitizer 还在为从论文图表中提取数据而烦恼吗?🤔 科…

作者头像 李华
网站建设 2026/3/30 22:07:30

BilibiliDown跨平台下载神器:一键保存B站视频的终极解决方案

BilibiliDown跨平台下载神器:一键保存B站视频的终极解决方案 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh_mir…

作者头像 李华
网站建设 2026/4/4 3:02:02

Notepad--终极指南:跨平台文本编辑器的完整使用教程

还在为不同操作系统间的文本编辑烦恼吗?Notepad--作为一款专为中国用户设计的跨平台文本编辑器,完美解决了Windows、Linux和macOS三大系统间的编码兼容问题。这款开源工具不仅免费使用,还能提供媲美专业IDE的编辑体验。 【免费下载链接】note…

作者头像 李华