news 2026/4/3 4:07:59

中国行政区划五级联动数据MySQL部署终极指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
中国行政区划五级联动数据MySQL部署终极指南

想要快速搭建完整的中国行政区划数据库吗?这套五级联动数据系统包含从省级到村级的所有行政区划信息,为地址选择组件、数据分析平台提供强大的数据支撑。本文将带你从零开始,用不到30分钟完成MySQL环境下的完整部署!🚀

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

💡 为什么需要行政区划数据库?

在开发电商系统、用户注册表单、数据分析平台时,地址选择功能是必不可少的。传统的手工维护地址数据不仅效率低下,而且容易出错。这套基于官方数据的中国行政区划数据库,为你提供准确、完整的五级联动数据支持。

核心价值亮点:

  • 📊 覆盖全国34个省级行政区、334个地级市、2851个区县、4万多个乡镇街道、66万多个村庄社区
  • 🔗 完整的五级联动关系,支持任意层级的地址查询
  • 📈 基于2023年最新统计数据,保证数据准确性
  • 🛠️ 开箱即用,支持多种格式输出

🛠️ 环境准备与项目初始化

第一步:获取项目源码

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

第二步:安装项目依赖

项目基于Node.js环境,需要安装相关依赖包:

npm install

安装完成后,你可以查看项目核心模块:

  • 数据抓取模块:lib/fetch.js
  • 数据格式化模块:lib/format.js
  • 数据导出模块:lib/export.js
  • SQLite数据库模块:lib/sqlite.js

🗄️ MySQL数据库架构设计

创建专用数据库

CREATE DATABASE china_division CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; USE china_division;

五级联动表结构设计

采用层次化设计,确保数据关系的完整性:

-- 省级行政区划表 CREATE TABLE province ( code VARCHAR(10) PRIMARY KEY COMMENT '行政区划代码', name VARCHAR(50) NOT NULL COMMENT '行政区划名称' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -- 地级行政区划表 CREATE TABLE city ( code VARCHAR(10) PRIMARY KEY COMMENT '行政区划代码', name VARCHAR(50) NOT NULL COMMENT '行政区划名称', provinceCode VARCHAR(10) COMMENT '所属省级代码', FOREIGN KEY (provinceCode) REFERENCES province(code) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -- 县级行政区划表 CREATE TABLE area ( code VARCHAR(10) PRIMARY KEY COMMENT '行政区划代码', name VARCHAR(50) NOT NULL COMMENT '行政区划名称', cityCode VARCHAR(10) COMMENT '所属地级代码', provinceCode VARCHAR(10) COMMENT '所属省级代码', FOREIGN KEY (cityCode) REFERENCES city(code), FOREIGN KEY (provinceCode) REFERENCES province(code) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -- 乡级行政区划表 CREATE TABLE street ( code VARCHAR(15) PRIMARY KEY COMMENT '行政区划代码', name VARCHAR(50) NOT NULL COMMENT '行政区划名称', areaCode VARCHAR(10) COMMENT '所属县级代码', cityCode VARCHAR(10) COMMENT '所属地级代码', provinceCode VARCHAR(10) COMMENT '所属省级代码', FOREIGN KEY (areaCode) REFERENCES area(code), FOREIGN KEY (cityCode) REFERENCES city(code), FOREIGN KEY (provinceCode) REFERENCES province(code) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -- 村级行政区划表 CREATE TABLE village ( code VARCHAR(20) PRIMARY KEY COMMENT '行政区划代码', name VARCHAR(50) NOT NULL COMMENT '行政区划名称', streetCode VARCHAR(15) COMMENT '所属乡级代码', areaCode VARCHAR(10) COMMENT '所属县级代码', cityCode VARCHAR(10) COMMENT '所属地级代码', provinceCode VARCHAR(10) COMMENT '所属省级代码', FOREIGN KEY (streetCode) REFERENCES street(code), FOREIGN KEY (areaCode) REFERENCES area(code), FOREIGN KEY (cityCode) REFERENCES city(code), FOREIGN KEY (provinceCode) REFERENCES province(code) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

🔄 数据迁移与批量导入

生成CSV格式数据文件

使用项目提供的导出脚本:

./export_csv.sh

脚本执行后,将在dist目录下生成五个标准CSV文件:

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

执行数据批量导入

使用MySQL的LOAD DATA命令高效导入:

-- 导入省级数据 LOAD DATA LOCAL INFILE 'dist/provinces.csv' INTO TABLE province FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS; -- 导入地级数据 LOAD DATA LOCAL INFILE 'dist/cities.csv' INTO TABLE city FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS; -- 导入县级数据 LOAD DATA LOCAL INFILE 'dist/areas.csv' INTO TABLE area FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS; -- 导入乡级数据 LOAD DATA LOCAL INFILE 'dist/streets.csv' INTO TABLE street FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS; -- 导入村级数据 LOAD DATA LOCAL INFILE 'dist/villages.csv' INTO TABLE village FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS;

✅ 数据完整性验证

检查数据导入结果

执行验证SQL确认各级数据数量:

SELECT '省级行政区划' as 数据级别, COUNT(*) as 记录数量 FROM province UNION ALL SELECT '地级行政区划', COUNT(*) FROM city UNION ALL SELECT '县级行政区划', COUNT(*) FROM area UNION ALL SELECT '乡级行政区划', COUNT(*) FROM street UNION ALL SELECT '村级行政区划', COUNT(*) FROM village;

预期验证结果:

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

🚀 实战应用场景展示

场景一:电商平台地址选择组件

-- 获取北京市下的所有区县 SELECT code, name FROM area WHERE cityCode = '1101'; -- 获取朝阳区下的所有街道 SELECT code, name FROM street WHERE areaCode = '110105'; -- 获取某街道下的所有社区 SELECT code, name FROM village WHERE streetCode = '110105001';

场景二:用户数据分析报告

-- 统计各省份城市数量分布 SELECT p.name as 省份名称, COUNT(c.code) as 城市数量 FROM province p LEFT JOIN city c ON p.code = c.provinceCode GROUP BY p.code, p.name ORDER BY 城市数量 DESC; -- 查找特定行政区域 SELECT * FROM province WHERE name LIKE '%上海%';

⚡ 性能优化策略

关键索引配置

-- 为常用查询字段创建索引 CREATE INDEX idx_city_province ON city(provinceCode); CREATE INDEX idx_area_city ON area(cityCode); CREATE INDEX idx_street_area ON street(areaCode); CREATE INDEX idx_village_street ON village(streetCode); -- 复合索引优化复杂查询 CREATE INDEX idx_area_composite ON area(cityCode, provinceCode); CREATE INDEX idx_street_composite ON street(areaCode, cityCode, provinceCode);

查询性能最佳实践

  1. 层级查询优化:使用JOIN替代子查询
  2. 分页处理:大数据量查询使用LIMIT分页
  3. 缓存策略:热点数据使用Redis缓存
  4. 定期维护:每月执行一次索引重建

🎯 部署完成检查清单

  • ✅ 项目源码成功获取并完成依赖安装
  • ✅ MySQL数据库及五级表结构创建完成
  • ✅ CSV格式数据文件导出成功
  • ✅ 批量数据导入执行无误
  • ✅ 数据完整性验证通过
  • ✅ 性能索引配置到位

📈 后续扩展建议

这套中国行政区划五级联动数据库为你的项目提供了坚实的数据基础。接下来你可以:

  • 🔧 集成到现有系统的地址选择模块
  • 📊 用于用户地域分布数据分析
  • 🌐 结合地图服务开发地理信息系统
  • 🔄 建立数据更新机制,保持数据时效性

现在,你的MySQL环境已经拥有了完整的中国行政区划数据支持,可以开始基于这套数据系统开发各种应用了!

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

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

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

情感迁移设想:将一段视频人物的情绪迁移到IndexTTS 2.0

情感迁移设想:将一段视频人物的情绪迁移到IndexTTS 2.0 在短视频创作中,你是否曾遇到这样的困境?画面中角色愤怒地拍桌而起,可配音却语气平淡,毫无张力;或是动画剪辑时旁白提前结束,留下几秒尴尬…

作者头像 李华
网站建设 2026/4/1 18:00:58

3分钟掌握AnimateMate:在Sketch中直接制作动画的终极指南

3分钟掌握AnimateMate:在Sketch中直接制作动画的终极指南 【免费下载链接】AnimateMate Create your animations directly in Sketch using AnimateMate. 项目地址: https://gitcode.com/gh_mirrors/an/AnimateMate 作为UI/UX设计师,你是否厌倦了…

作者头像 李华
网站建设 2026/4/3 5:58:07

故障注入实验:主动制造异常验证IndexTTS 2.0容错能力

故障注入实验:主动制造异常验证IndexTTS 2.0容错能力 在AIGC浪潮席卷内容创作的今天,语音合成已不再是“能出声就行”的基础功能,而是影视配音、虚拟主播、短视频口播等场景中决定用户体验的关键环节。B站开源的 IndexTTS 2.0 正是在这一背景…

作者头像 李华
网站建设 2026/3/18 14:35:16

电子书有声化:一键将TXT/PDF转为IndexTTS 2.0朗读音频

电子书有声化:一键将TXT/PDF转为IndexTTS 2.0朗读音频 在短视频、播客与虚拟偶像席卷内容生态的今天,文字正在“开口说话”。你是否曾想过,一本静静躺在硬盘里的PDF小说,只需点击几下,就能变成由你指定音色、带着情绪起…

作者头像 李华
网站建设 2026/4/2 6:27:22

Dify多模态数据管道搭建全攻略:从零构建高并发处理系统的6个关键步骤

第一章:Dify多模态数据处理的核心概念Dify 是一个面向 AI 应用开发的低代码平台,其在多模态数据处理方面提供了强大的抽象能力与集成支持。多模态数据指的是包含文本、图像、音频、视频等多种形式的数据集合。Dify 通过统一的数据接入层和标准化的处理管…

作者头像 李华
网站建设 2026/4/2 16:29:50

JAVA赋能:同城无人共享棋牌茶室台球系统

JAVA赋能同城无人共享棋牌茶室台球系统方案一、技术架构:高可用与弹性扩展微服务架构:基于Spring Boot 3.0与Spring Cloud Alibaba框架,将系统拆分为用户服务、订单服务、设备服务、支付服务、AI服务等独立模块。各模块支持横向扩展&#xff…

作者头像 李华