简介
- mysql数据库, 是当前应用非常广泛的一款关系型数据库
- 什么是关系型数据库? >>>> https://my.oschina.net/u/1773689/blog/364548
- 官网: https://www.mysql.com
- 数据库排名: https://db-engines.com/en/ranking
- 主要知识点包括: 能够与mysql监理连接, 创建数据库, 表, 分别从图形界面与脚本界面两个方面入手
- 相关的指示点包括: E-R关系模型, 数据库的3范式, mysql中数据字段的类型, 字段约束
- 主要操作包括:
- 数据库的操作, 包括创建, 删除
- 表的操作, 包括创建, 修改, 删除
- 数据的操作, 包括增加, 修改, 删除, 查询(CRUD)
- 主要完成数据库的操作, 表的操作, 数据的增加, 修改, 删除操作, 分别从图形窗口, 命令行2个方面入手
- 示例:
- 学生表结构:ID, 姓名, 性别, 地址, 生日
- 科目表结构:ID, 名称
主要知识点
- 数据库与表的创建, 删除
- 字段的类型, 约束
- 关系的存储
- 数据行的增加, 修改, 删除
- 数据行的查询
- 视图, 事务, 索引
- 与python交互
自学内置函数
- 字符串函数
- 数学函数
- 日期时间函数
- 类型转换函数
E-R模型
- 当前物流的数据库都是按照E-R模型进行设计的
- E表示entry, 实体
- R表示relationship, 关系
- 一个实体转换为数据库中的一个表
- 一对一
- 一对多
- 多对多
- 关系转换为数据库表中的一个列*在关系型数据库中一行就是一个对象
三范式
- 经过研究和对使用中问题的总结, 对于设计数据库提出来一些规范, 这些规范被称为范式
- 第一范式(1NF): 列不可拆分
- 第二范式(2NF): 唯一标识
- 第三范式(3NF): 引用主键
- 说明: 后一个范式, 都是在前一个范式的基础上建立的
数据的完整性
- 一个数据库就是一个完整的业务单元, 可以包含多张表, 数据被存储在表中
- 在表中为了更加准确的存储数据, 保证数据的正确有效, 可以在创建表的时候, 为表添加一些强制性的验证, 包括数据字段的类型, 约束
字段类型
- 在mysql中包含的数据类型很多, 在这里主要列出常用的几种:
- 数字: int, decimal(decimal(5, 2) -> 一共5位, 小数位2位)
- 字符串: char, varchar, text
- 日期: datetime
- 布尔: bit
约束
- 主键: primary key
- 非空: not null
- 唯一: unique
- 默认: default
- 外键: foreign key
逻辑删除
- 对于重要数据, 并不希望物理删除, 一旦删除, 数据无法找回
- 一般对于重要数据, 会设置一个isDelete的列, 类型为bit, 表示逻辑删除
- 对于大量增长的非重要数据, 可以进行物理删除
- 数据的重要性, 要根据实际开发决定