名词

  • 数据库(database):保存有组织的数据的容器,是通过DBMS创建的容器
  • 表(table):某种特定类型数据的结构化清单
  • 元组(tuple):行,一条数据库记录,对应一个事物
  • 属性(property):列,字段,对应事物的一个特征
  • 关系:元组的集合,即数据库表
  • 关系模型:由数据结构、关系操作集合、完整性约束组成
  • 数据库管理系统(DBMS):一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,如MySQL,ORACLE等
  • 关系型数据库:建立在关系模型基础上的数据库,由多张能相互连接的二维行列表格组成,如MySQL
  • 关系型数据库管理系统(RDBMS):管理关系数据库,并将数据逻辑组织的系统
  • MySQL:一种RDBMS,采用SQL语言访问数据库,优点有体积小、速度快、成本低、开源等,适用于中小型网站开发
  • SQL(Structured Query Language):一种介于关系代数和关系演算之间的结构化查询语言,用于操作关系型数据库
  • 主键(primary key):一列,其值能唯一标识表中每一行
  • 外键:另一个表的主键,用于与另一张表的关联,是能确定另一张表记录的字段,用于保持数据的一致性
  • 关键字:
  • 关系代数
    • 并,交,差
    • 笛卡尔积:列数相加,行数相乘
    • 选择,投影
    • 连接:等值连接,自然连接
    • 除法
  • 关系演算
  • ACID
    • 原子性(Atomicity)
    • 一致性(Consistency)
    • 隔离性(Isolation)
    • 持久性(Durability)
  • 范式:设计关系数据库时,遵从不同的规范要求
    • 第一范式:一个主键确定一行,每个单元格只能有一个值
    • 第二范式:在第一范式的基础上,所有属性仅仅依赖于主键
    • 第三范式:在第二范式的基础上,表之间不存在依赖传递

数据库设计

  • 需求分析
  • 概念设计(E-R图)
  • 逻辑设计(E-R图转换成关系数据模型)
  • 物理设计
  • 建立、测试
  • 运行、维护

概念设计

  • 概念模型(CDM Conceptual Data Model):从现实世界抽象出来的实体概念。如学生选课,实体模型是“学生”和“课程”
  • 概念设计意义:需求分析阶段所得到的应用需求应该首先抽象成信息世界的结构,才能更好地、更准确地用某一DBMS实现
  • 关系数据模型(逻辑结构):实体间的关系。包括层次模型(树)、网状模型(图)、关系模型(表格)
  • E-R图:实体-关系图(Entity-Relationship Diagram);三要素:实体、属性、关系;矩形表示实体,椭圆表示属性,菱形表示实体间的关系

逻辑设计

  • 数据库的逻辑结构设计:逻辑结构设计的任务就是将概念结构设计阶段设计好的全局E-R图转换成DBMS产品所支持的数据模型(关系模型),并进行规范化和优化,然后为每个应用设计外模式
  • 关系模型范式化:按第一、二、三范式对关系模型进行分解,降低数据冗余

物理设计

  • 物理模型(PDM Physical Data Model):关系型数据库中对象存储的表。可通过概念模型创建,或直接创建
  • 物理结构设计:数据库在物理设备上的存储结构和存取方法就称为数据库的物理结构
  • 确定物理结构:存取方法和存储结构
  • 评价物理结构:时间、空间效率

工具

  • PowerDesigner

    • 一款数据库设计软件,可从概念数据模型和物理数据模型两个层次对数据库进行设计
    • 安装:https://blog.csdn.net/tgbyn/article/details/72809116
    • 教程:https://www.cnblogs.com/biehongli/p/6025954.html
  • Swing

    • Java的应用程序界面开发工具包

参考

基本概念

https://www.cnblogs.com/fudashi/p/6856628.html

数据库设计

https://blog.51cto.com/9291927/2087925

一小时学会mysql

https://www.cnblogs.com/xuanbjut/p/10407028.html

外键

https://blog.csdn.net/bingqingsuimeng/article/details/51595560

E-R图

https://blog.csdn.net/q547550831/article/details/47186693

从E-R图到关系模型

https://wenku.baidu.com/view/77a59f04534de518964bcf84b9d528ea80c72f37.html#

https://blog.csdn.net/HaoDaWang/article/details/78098937

https://blog.csdn.net/Firehotest/article/details/52412865

https://blog.csdn.net/cunfen6312/article/details/107684536

最新文章

  1. [Android Pro] ScrollView嵌套RecyclerView时滑动出现的卡顿
  2. iptables--简单的防火墙
  3. 最长上升子序列[LIS]
  4. 改进iOS客户端的升级提醒功能
  5. Hark的数据结构与算法练习之计数排序
  6. Linux--变量与虚拟内存
  7. nginx 提供静态内容
  8. 18、面向对象基本原则及UML类图简介
  9. 如何成为一个优秀的java程序员
  10. .NET反编译工具:de4dot
  11. Hibernate报错,关于配置的SessionFactory找不到问题
  12. JS基础——原型和原型链
  13. redis底层设计(五)——内部运作机制
  14. LVS负载均衡下session共享的实现方式-持久化连接
  15. 100度享乐电商网 html
  16. SPOJ QTREE2 (LCA - 倍增 在线)
  17. Spark On YARN 分布式集群安装
  18. express基础
  19. Java Socket通信实例
  20. POJ 3169 Layout (spfa+差分约束)

热门文章

  1. vue实现日历
  2. HarmonyOS三方件开发指南(16)-VideoCache 视频缓存
  3. [BFS]最小转弯问题
  4. 阅读《构建之法》之FAQ
  5. 连续函数离散化-以SOGI为例
  6. Dynamics CRM安装教程九(续):自建证书的CRM项目客户端设置CRM访问
  7. 【C/C++】memset方法的误区
  8. 通过Dapr实现一个简单的基于.net的微服务电商系统(五)——一步一步教你如何撸Dapr之状态管理
  9. struct 模块
  10. python 闭包函数与装饰器