Mysql系列:MySql 数据库设计与基本使用

前言

  看完mysql必知必会后,一直以来都有一个误区,认为码农在实际的过程中,只需要掌握,创建数据库,在数据库创建表,然后对表进行增删改查就完了。直到研一上又重新选修了《数据库系统概述》,才发现一个专业的DBA(数据库管理员)进行一套专业的数据开发也是有一套自己的规范的。

数据库设计的概念

       数据库建设是指数据库应用系统从设计,实施到运行与维护的全过程。“三分技术,七分管理,十二分基础数据”突出了数据的收集,整理,组织和不断更新是数据库建设中的重要环节。从一开始的数据收集到后来的数据库建立,到最后的数据库维护每个阶段都是十分重要的。

  为什么要进行数据库的设计?

       良好的数据库设计对减少数据冗余和操作异常、对数据有限存储和高效访问有很大帮助。如果一开始的数据库设计的不够好,那么到后面可能你会发现一些令人糟心的问题:数据冗余大,不好查找等等。

数据库设计的几个阶段

1.需求分析阶段

2.概念结构设计阶段

3.逻辑结构设计阶段

4.物理结构设计阶段

5.数据库实施阶段

6.数据库运行和维护阶段

数据库设计的理论与实际

以我现在在做的一个项目:图书馆预约系统为例。

1.需求分析

  理论:通过调查现实世界要处理的对象,充分了解原系统的工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。新系统必须充分考虑今后可能的扩充和改变,不能仅仅按当前应用需求来设计数据库。

  实际:我们学生去图书馆借书的时候,基本事件首先有学生,图书馆会有很多书,借书这个行为通过学生和书之间发生联系。

  

2.概念结构设计阶段

  理论:前一个阶段的需求在这个阶段应该抽象为信息世界的结构,来充分反映现实世界事物之间的联系。用像E-R图这种工具表示。

  实际:每个学生都有一个学号,这个学号唯一标识了他/她,除此以外,还有相应的密码;

  图书馆的书有图书ID,书名,库存数量,书籍介绍。

  借书这个行为绑定了图书ID,学生ID,借阅的时间。

  我们用E-R图进行表示

3.逻辑结构设计阶段

  理论:将E-R图转变为数据库管理系统产品所支持的数据模型相符合的逻辑结构。

  实际:

学生: {学号,密码}

书籍: {书籍ID,书名,数量,书籍介绍}

借书:{书籍ID,学号,时间,书籍}

4.物理结构设计阶段

  理论:

  • 选择合适的DBMS
  • 规定数据库、表和字段的命名规范
  • 根据所选的DBMS确定具体字段的字段类型
  • 实际:
  • 确定每个实体对应的数据类型,我已经把数据类型写在E-R图里面了

5.数据库实施阶段

  理论:目前,企业级数据库有Oracle和SQL Server,这类数据库对数据的安全性和容量有较高要求。互联网项目使用的一般都是MySQL、PgSQL,所以根据需要根据自己项目的类型选择合适的数据库。并规定命名规范。命名规范需要遵循字段可读性原则和见名知义原则,不然随意的字段名还要建立数据字典,增加额外的工作量,没什么必要。

  实际:大家最熟练的mysql语句操作!!!mysql常用语句大全:https://www.cnblogs.com/cxxjohnson/p/5914583.html

6.数据库运行和维护阶段

  理论:这是一个周期比较长的过程。

用这套流程规范,我们来创建部署项目中的数据库。

    

原文地址:https://www.cnblogs.com/xiaoyingying/p/8548192.html