省市区(县) mysql数据库表设计

CREATE TABLE `region` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键 ID',
  `name` varchar(100) NOT NULL COMMENT '名称',
  `parent_id` int(10) unsigned DEFAULT NULL COMMENT '父级 ID,省级为 NULL',
  `level` tinyint(4) NOT NULL COMMENT '级别:1-省,2-市,3-区县',
  `code` varchar(20) NOT NULL COMMENT '行政区划代码',
  `full_name` varchar(255) NOT NULL COMMENT '完整名称,例如: 北京市-东城区',
  `create_by` varchar(64) DEFAULT NULL COMMENT '创建者',
  `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_by` varchar(64) DEFAULT NULL COMMENT '更新者',
  `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  `version` int(11) NOT NULL DEFAULT '1' COMMENT '版本号',
  `delete_time` int(10) unsigned zerofill DEFAULT '0000000000' COMMENT '软删除时间',
  PRIMARY KEY (`id`),
  UNIQUE KEY `idx_code` (`code`),
  KEY `idx_parent_id` (`parent_id`),
  KEY `idx_name_parent` (`parent_id`,`name`)
) ENGINE=InnoDB AUTO_INCREMENT=49 DEFAULT CHARSET=utf8mb4 COMMENT='省市区表';
-- 省级数据
INSERT INTO `region` (`name`, `parent_id`, `level`, `code`, `full_name`, `create_by`, `create_time`, `update_by`, `update_time`, `version`, `delete_time`)
VALUES
('河南省', NULL, 1, '410000', '河南省', 'admin', NOW(), 'admin', NOW(), 1, 0000000000);

-- 获取 河南省 ID
SET @province_id = (SELECT id FROM region WHERE name='河南省' AND level=1);

-- 市级数据
INSERT INTO `region` (`name`, `parent_id`, `level`, `code`, `full_name`, `create_by`, `create_time`, `update_by`, `update_time`, `version`, `delete_time`)
VALUES
('郑州市', @province_id, 2, '410100', '河南省-郑州市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('开封市', @province_id, 2, '410200', '河南省-开封市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('洛阳市', @province_id, 2, '410300', '河南省-洛阳市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('平顶山市', @province_id, 2, '410400', '河南省-平顶山市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('安阳市', @province_id, 2, '410500', '河南省-安阳市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('鹤壁市', @province_id, 2, '410600', '河南省-鹤壁市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('新乡市', @province_id, 2, '410700', '河南省-新乡市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('焦作市', @province_id, 2, '410800', '河南省-焦作市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('濮阳市', @province_id, 2, '410900', '河南省-濮阳市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('许昌市', @province_id, 2, '411000', '河南省-许昌市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('漯河市', @province_id, 2, '411100', '河南省-漯河市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('三门峡市', @province_id, 2, '411200', '河南省-三门峡市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('南阳市', @province_id, 2, '411300', '河南省-南阳市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('商丘市', @province_id, 2, '411400', '河南省-商丘市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('信阳市', @province_id, 2, '411500', '河南省-信阳市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('周口市', @province_id, 2, '411600', '河南省-周口市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('驻马店市', @province_id, 2, '411700', '河南省-驻马店市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('济源市', @province_id, 2, '419001', '河南省-济源市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000);

-- 获取 郑州市 ID
SET @zhengzhou_id = (SELECT id FROM region WHERE name='郑州市' AND level=2);

-- 区县级数据(郑州市示例)
INSERT INTO `region` (`name`, `parent_id`, `level`, `code`, `full_name`, `create_by`, `create_time`, `update_by`, `update_time`, `version`, `delete_time`)
VALUES
('中原区', @zhengzhou_id, 3, '410102', '河南省-郑州市-中原区', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('二七区', @zhengzhou_id, 3, '410103', '河南省-郑州市-二七区', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('管城回族区', @zhengzhou_id, 3, '410104', '河南省-郑州市-管城回族区', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('金水区', @zhengzhou_id, 3, '410105', '河南省-郑州市-金水区', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('上街区', @zhengzhou_id, 3, '410106', '河南省-郑州市-上街区', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('惠济区', @zhengzhou_id, 3, '410108', '河南省-郑州市-惠济区', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('中牟县', @zhengzhou_id, 3, '410122', '河南省-郑州市-中牟县', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('巩义市', @zhengzhou_id, 3, '410181', '河南省-郑州市-巩义市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('荥阳市', @zhengzhou_id, 3, '410182', '河南省-郑州市-荥阳市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('新密市', @zhengzhou_id, 3, '410183', '河南省-郑州市-新密市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('新郑市', @zhengzhou_id, 3, '410184', '河南省-郑州市-新郑市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000),
('登封市', @zhengzhou_id, 3, '410185', '河南省-郑州市-登封市', 'admin', NOW(), 'admin', NOW(), 1, 0000000000);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值