zoukankan      html  css  js  c++  java
  • 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.数据库运行和维护阶段

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

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

        

  • 相关阅读:
    面向对象实验 ——(二)类与对象
    [LeetCode] 957. Prison Cells After N Days
    [LeetCode] 32. Longest Valid Parentheses
    [LeetCode] 120. Triangle
    [LeetCode] 441. Arranging Coins
    [LeetCode] 79. Word Search
    [LeetCode] 1143. Longest Common Subsequence
    [LeetCode] 718. Maximum Length of Repeated Subarray
    [LeetCode] 332. Reconstruct Itinerary
    [LeetCode] 279. Perfect Squares
  • 原文地址:https://www.cnblogs.com/xiaoyingying/p/8548192.html
Copyright © 2011-2022 走看看