关于数据库表设计之区域表system_district:省市县街道四级地址表
关于省市县的数据表的设计有两种方式:
一.将其设计成一张表
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:省市县街道四级地址表的更多相关文章
- DRF框架(三)——media资源路径设置、多表设计复习及补充、序列化组件(ModelSerializer)操作多表(序列化与反序列化)、多表序列化与反序列化整合(重点)
media资源路径设置 (设置好后把图片放在这个文件夹中,通过链接能访问到图片) 1.先在根目录设置一个media文件夹 2.配置settings.py,加上下面的 MEDIA_URL = '/me ...
- 抽屉之Tornado实战(2)--数据库表设计
经过我们上次分析,数据库要有最基本的四张表,用户表,消息表,类型表,点赞表,评论表,接下来我们看着怎么设计吧 首先我们要清楚,表设计的代码是写在models下的 用户表 #一张表对应一个类 class ...
- Tornado之抽屉实战(2)--数据库表设计
经过我们上次分析,数据库要有最基本的四张表,用户表,消息表,类型表,点赞表,评论表,接下来我们看着怎么设计吧 首先我们要清楚,表设计的代码是写在models下的 用户表 ? 1 2 3 4 5 6 7 ...
- MaxCompute表设计最佳实践
MaxCompute表设计最佳实践 产生大量小文件的操作 MaxCompute表的小文件会影响存储和计算性能,因此我们先介绍下什么样的操作会产生大量小文件,从 而在做表设计的时候考虑避开此类操作. 使 ...
- PHP 开发 APP 接口 学习笔记与总结 - APP 接口实例 [5] 版本设计分析及数据表设计
APP 版本升级以及 APP 演示 ① 版本升级分析以及数据表设计 ② 版本升级接口开发以及 APP 演示 /** * version_upgrade 版本升级信息表 */ CREATE TABLE ...
- 转一篇MYSQL文章《数据库表设计,没有最好只有最适合》
http://mp.weixin.qq.com/s/a8klpzM5iam0_JYSw7-U4g 我们在设计数据库的时候,是否会突破常规,找到最适合自己需求的设计方案,下面来举个例子: 常用的邻接表设 ...
- Oracle数据库表设计时的注意事项
表是Oracle数据库中最基本的对象之一.万丈高楼从平地起,这个基础对象对于数据库来说,非常重要.因为其设计是否合理,直接跟数据库的性能相关.从Oracle数据库菜鸟到数据库专家这个过程中,在表设计与 ...
- ERP开发分享 1 数据库表设计
这是我的ERP设计经验分享系列,今天讲的是数据库的表设计(1),主要阐述: 1.单字段的主键:2.使用int32作为主键类型:3.使用版本字段处理乐观锁定:4.生效字段标明是否允许“被使用”:5.锁定 ...
- Innodb IO优化 — 数据库表设计 转
数据库表设计这块学问比较多,我这里单从互联网角度出发同时结合Innodb的特性给出一些设计方法供大家参考.本文构建大概分两分部分:Innodb的特性及设计中如何利用这种特性. Innodb特性: In ...
随机推荐
- vue-loading图
父组件给子组件src地址: columns(){ return [ {'title': '图片', 'key': 'img', render(h, {row}){ return h(LoadingIm ...
- JavaScript的常用浏览器设置
用什么浏览器?如果您不告诉我您使用的浏览器,我将告诉您有关JavaScript的常用浏览器设置.~火狐在菜单栏中选择工具->选项->内容以查看启用javascript的选项.Interne ...
- Html-自适应
自适应 使网页能适应不同终端设备的技术.原理是通过检测视口分辨率来判断是什么终端的,PC,手机还是平板. 做自适应的网页时,需要在代码中加入“祖传代码”,即通用代码. 这是在头部head引入的: &l ...
- Shiro学习笔记总结,附加" 身份认证 "源码案例(一)
Shiro学习笔记总结 内容介绍: 一.Shiro介绍 二.subject认证主体 三.身份认证流程 四.Realm & JDBC reaml介绍 五.Shiro.ini配置介绍 六.源码案例 ...
- Java学习笔记【十一、序列化】
序列化的条件 实现Serializable接口 所有属性必须是可序列化的,或标记为transient(不做序列化) 序列化-将对象输出为序列化文件 ObjectOutputStream 反序列化-将序 ...
- centos 7 Apache-Tomcat-8.5.46 安装 Web 应用服务器
tomcat 官网版本地址:https://tomcat.apache.org/whichversion.html Servlet规格 JSP规范 EL规格 WebSocket规范 JASPIC规格 ...
- JavaScript【对象的学习】
JavaScript对象的了解 1.js的String对象创建String对象:var str = "abc";方法和属性(参照W3C文档详细学习)属性 length:字符串的长度 ...
- IPC之mq_sysctl.c源码解读
// SPDX-License-Identifier: GPL-2.0-only /* * Copyright (C) 2007 IBM Corporation * * Author: Cedric ...
- centos6下yum安装mariadb数据库的解决方法
在centos6下Yum安装mariadb数据库时老是提示无法正常安装,看错误日志才发现,是没有mariadb release源文件在/etc/yum.repos.d/中,为此,我特意在新建文件: # ...
- K-MEANS算法及sklearn实现
K-MEANS算法 聚类概念: 1.无监督问题:我们手里没有标签 2.聚类:相似的东西分到一组 3.难点:如何评估,如何调参 4.要得到簇的个数,需要指定K值 5.质心:均值,即向量各维取平均即可 6 ...