数据库设计优化
数据库的基本语法的使用,很多,我也没有去整理,所以在这里就不介绍那些基本的语法了。如果对这方面有问题,我在这里给大家分享一个方法: SQL语句应该怎样去优化?在职业生涯中,有一次维护一个项目中的一个模块。之前做的那个同事离职了,交给我来维护。我记得好像是七八张表吧,各种join、order by、distinct、group by.......看得头大。这样的SQL语句应该怎么优化呢?额......这怎么优化啊?建议从表的设计方面考虑吧。后来我也是这样做的,重新设计表,将表的数量减少,将数据更新到那写新表中去。即使不刷数据,流程中做下控制,时间久了,老表中的数据也都会更新到新表中去。 数据库设计步骤: 1、需求分析:大概明白需要存储什么 2、概要设计阶段:E-R图,表-属性-关系表,解决多方的沟通问题 3、详细设计,细致到表甚至字段 关系型数据库:面向对象的封装+关系 面向对象的思想来建表: 一对一:人----身份证;垂直分别的时候;相同主键/外键 一对多:订单----商品表;省-----市;公司-----员工;主外键表示 多对多:用户----菜单;学生----课程;女神----备胎;关系表/中间/映射表 三大范式: 第一范式:每一列保持原子性,不可分割 原子性:不可分割。 人----工作电话/家庭电话/移动电话,必须要拆分开