springboot实战日记(一)数据库基本信息

摘要:基于spring boot的后端实现,开发一个微信小程序点餐系统,主要是写写思路和遇到的问题以及分享读到的好文章.

项目分析:

  1.角色划分,就是开有什么人使用这个系统,买家(手机端),卖家(pc端,手机端)

  2.功能分析划分,初步分为买家下面有商品,商品需要商品列表来表现,买家卖家通过订单来交互,卖家需要有一个类目,可以管理商品分类,还需要一个.

  3.之后画出相应的关系图,初步总结出可能的关系.

  4.画出部署架构.

  5.后续不断完善这些初步内容

数据库设计:

  1.完成项目初步设计之后,就进行数据库设计.

  2.基于项目分析,设计出买家信息表,卖家信息表,类目表(管理商品),商品表,订单主表,订单详细表,等等..完成相应的文档设计.

  3.依据文档设计,创建出数据库.

遇到的问题:

  sql:表的创建格式:

  create table table_name(   )ENGINE=InooDB CHARACTER SET utf8;

    数据的插入格式:

  insert into table_name (列1,列2...) values (值1,值2,...); 

      decimal数据库小数:

   decimal(10,2)是10位整数,2两位小数的意思.

  对于key的讲解:https://www.cnblogs.com/jpfss/p/8308656.html

  对于数据库InnoDB引擎的数据库理解: https://blog.csdn.net/qq_26222859/article/details/80631121   //b树介绍

                     https://www.cnblogs.com/fanBlog/p/11394035.html     //内存分析

                          https://blog.csdn.net/qq_33171970/article/details/88395278 //插入原理

                    https://zhuanlan.zhihu.com/p/35811482    //原理讲解

  如果创建表的时候建立了某个索引,那么会有以这个索引创建b+树,在叶子节点上保存的磁盘地址,b+树本身也是写在磁盘中的,b+树有多少层,那么就会有多少次oi读写发送.

  InnoDB非常复杂,看完上面4篇博客只能入门,,还有联合索引的坑:https://blog.csdn.net/Abysscarry/article/details/80792876

  关键字: explain + (sql语句):查看执行计划来观察索引利用情况

      desc + 表名: 观察表信息

你可能感兴趣的:(springboot实战日记(一)数据库基本信息)