关于省市县的数据表的设计有两种方式:

一.将其设计成一张表
DROP TABLE IF EXISTS `system_district`;
CREATE TABLE `system_district` (
`district_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '区域ID',
`parent_id` bigint(20) unsigned NOT NULL COMMENT '父ID',
`district_name` varchar(200) NOT NULL COMMENT '区域名称',
`short_name` varchar(200) NOT NULL COMMENT '简称',
`longitude` decimal(10,7) NOT NULL DEFAULT '0.0000000' COMMENT '经度',
`latitude` decimal(10,7) NOT NULL DEFAULT '0.0000000' COMMENT '维度',
`level` int(11) NOT NULL DEFAULT '' COMMENT '等级(地区级别 1-省、自治区、直辖市 2-地级市、地区、自治州、盟 3-市辖区、县级市、县 4-街道办-乡)',
`sort` int(11) NOT NULL DEFAULT '' COMMENT '排序',
`is_deleted` tinyint(1) NOT NULL DEFAULT '' COMMENT '删除标志: 0未删除,1已删除',
`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_time` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '修改时间',
PRIMARY KEY (`district_id`)
) ENGINE=InnoDB AUTO_INCREMENT=659004503 DEFAULT CHARSET=utf8 COMMENT='区域表';

二.将其设计成三张表
省表:
DROP TABLE IF EXISTS `province`;
CREATE TABLE `province` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`code` varchar(6) NOT NULL,
`name` varchar(20) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=35 DEFAULT CHARSET=utf8; -- ----------------------------
-- Records of province
-- ----------------------------
INSERT INTO `province` VALUES ('', '', '北京市');
INSERT INTO `province` VALUES ('', '', '天津市');
INSERT INTO `province` VALUES ('', '', '河北省');
INSERT INTO `province` VALUES ('', '', '山西省');
INSERT INTO `province` VALUES ('', '', '内蒙古');

市表:

DROP TABLE IF EXISTS `city`;
CREATE TABLE `city` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`code` varchar(6) NOT NULL,
`name` varchar(20) NOT NULL,
`provincecode` varchar(6) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=343 DEFAULT CHARSET=utf8; -- ----------------------------
-- Records of city
-- ----------------------------
INSERT INTO `city` VALUES ('', '', '北京市', '');
INSERT INTO `city` VALUES ('', '', '石家庄市', '');
INSERT INTO `city` VALUES ('', '', '唐山市', '');
INSERT INTO `city` VALUES ('', '', '秦皇岛市', '');
INSERT INTO `city` VALUES ('', '', '邯郸市', '');
INSERT INTO `city` VALUES ('', '', '邢台市', '');
INSERT INTO `city` VALUES ('', '', '保定市', '');
INSERT INTO `city` VALUES ('', '', '张家口市', '');

县表:

DROP TABLE IF EXISTS `area`;
CREATE TABLE `area` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`code` varchar(6) NOT NULL,
`name` varchar(20) NOT NULL,
`citycode` varchar(6) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=3145 DEFAULT CHARSET=utf8; -- ----------------------------
-- Records of area
-- ----------------------------
INSERT INTO `area` VALUES ('', '', '东城区', '');
INSERT INTO `area` VALUES ('', '', '西城区', '');
INSERT INTO `area` VALUES ('', '', '崇文区', '');
INSERT INTO `area` VALUES ('', '', '宣武区', '');
INSERT INTO `area` VALUES ('', '', '朝阳区', '');
INSERT INTO `area` VALUES ('', '', '丰台区', '');
INSERT INTO `area` VALUES ('', '', '石景山区', '');
INSERT INTO `area` VALUES ('', '', '海淀区', '');
INSERT INTO `area` VALUES ('', '', '门头沟区', '');
INSERT INTO `area` VALUES ('', '', '房山区', '');
INSERT INTO `area` VALUES ('', '', '通州区', '');
INSERT INTO `area` VALUES ('', '', '顺义区', '');
INSERT INTO `area` VALUES ('', '', '昌平区', '');
 

关于数据库表设计之区域表system_district:省市县街道四级地址表的更多相关文章

  1. DRF框架(三)——media资源路径设置、多表设计复习及补充、序列化组件(ModelSerializer)操作多表(序列化与反序列化)、多表序列化与反序列化整合(重点)

    media资源路径设置  (设置好后把图片放在这个文件夹中,通过链接能访问到图片) 1.先在根目录设置一个media文件夹 2.配置settings.py,加上下面的 MEDIA_URL = '/me ...

  2. 抽屉之Tornado实战(2)--数据库表设计

    经过我们上次分析,数据库要有最基本的四张表,用户表,消息表,类型表,点赞表,评论表,接下来我们看着怎么设计吧 首先我们要清楚,表设计的代码是写在models下的 用户表 #一张表对应一个类 class ...

  3. Tornado之抽屉实战(2)--数据库表设计

    经过我们上次分析,数据库要有最基本的四张表,用户表,消息表,类型表,点赞表,评论表,接下来我们看着怎么设计吧 首先我们要清楚,表设计的代码是写在models下的 用户表 ? 1 2 3 4 5 6 7 ...

  4. MaxCompute表设计最佳实践

    MaxCompute表设计最佳实践 产生大量小文件的操作 MaxCompute表的小文件会影响存储和计算性能,因此我们先介绍下什么样的操作会产生大量小文件,从 而在做表设计的时候考虑避开此类操作. 使 ...

  5. PHP 开发 APP 接口 学习笔记与总结 - APP 接口实例 [5] 版本设计分析及数据表设计

    APP 版本升级以及 APP 演示 ① 版本升级分析以及数据表设计 ② 版本升级接口开发以及 APP 演示 /** * version_upgrade 版本升级信息表 */ CREATE TABLE ...

  6. 转一篇MYSQL文章《数据库表设计,没有最好只有最适合》

    http://mp.weixin.qq.com/s/a8klpzM5iam0_JYSw7-U4g 我们在设计数据库的时候,是否会突破常规,找到最适合自己需求的设计方案,下面来举个例子: 常用的邻接表设 ...

  7. Oracle数据库表设计时的注意事项

    表是Oracle数据库中最基本的对象之一.万丈高楼从平地起,这个基础对象对于数据库来说,非常重要.因为其设计是否合理,直接跟数据库的性能相关.从Oracle数据库菜鸟到数据库专家这个过程中,在表设计与 ...

  8. ERP开发分享 1 数据库表设计

    这是我的ERP设计经验分享系列,今天讲的是数据库的表设计(1),主要阐述: 1.单字段的主键:2.使用int32作为主键类型:3.使用版本字段处理乐观锁定:4.生效字段标明是否允许“被使用”:5.锁定 ...

  9. Innodb IO优化 — 数据库表设计 转

    数据库表设计这块学问比较多,我这里单从互联网角度出发同时结合Innodb的特性给出一些设计方法供大家参考.本文构建大概分两分部分:Innodb的特性及设计中如何利用这种特性. Innodb特性: In ...

随机推荐

  1. shiro学习(一)

    基础依赖: shiro-core,junit(因为在单元测试中) test.class public class AuthenticationTest { SimpleAccountRealm rea ...

  2. Qtspim和MIPS的坑

    Qtspim和MIPS的坑 数组要么用空格隔开,要么逗号之后再加一个空格 乘法的结果保存在(HI,LO)寄存器中,但是不能直接通过Move得到,必须使用mfhi 和mflo指令 用户输入的数组最后一个 ...

  3. day10 mysql常用操作

    一. 目录 1.mysql的简介 2.增删改查操作 3.单表查询 4.多表查询常见的三种方式 5.pymysql模块操作数据库 二. 内容 一.mysql的简介  概述:mysql是一个关系型数据库, ...

  4. jquery 取指定class下的input checkbox选中的值

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. DA_06_iptables 与 firewalld 防火墙

    8.1 防火墙管理工具 防火墙作为公网与内网之间的保护屏障,在保障数据的安全性方面起着至关重要的作用.主要功能都是依据策略对穿越防火墙自身的流量进行过滤.防火墙策略可以基于 流量的源目地址.端口号.协 ...

  6. 在STM32上如果不使用外部晶振,OSC_IN和OSC_OUT的接法

    如果使用内部RC振荡器而不使用外部晶振,请按照下面方法处理: 1)对于100脚或144脚的产品,OSC_IN应接地,OSC_OUT应悬空.2)对于少于100脚的产品,有2种接法:  2.1)OSC_I ...

  7. Python中关于txt的简单读写模式与操作

    Python中关于txt的简单读写操作 常用的集中读写模式: 1.r 打开只读文件,该文件必须存在. 2.r+ 打开可读写的文件,该文件必须存在. 3.w 打开只写文件,若文件存在则文件长度清为0,即 ...

  8. thinkphp方法success和error跳转时间以及返回ajax

    Action类的success和error方法第三个参数为数字时候,表示指定页面跳转时间,例如: $,); $,); 如果是ajax跳转 必须用true: $this->success('操作成 ...

  9. Django :执行 python manage.py makemigrations 时报错 TypeError: __init__() missing 1 required positional argument: 'on_delete'

    原因 执行命令 python manage.py makemigrations 报错 TypeError: __init__() missing 1 required positional argum ...

  10. AMD 异步模块定义

    1.解决模块加载过慢 2.核心:define函数