学每一种课程,总是免不了这些单词或概念的东西:
1、DB:database 数据库
2、DBMS:database management system 数据库管理系统
3、database application:数据库应用程序
4、SQL:structured query language 结构化查询语句
5、DDL:数据定义语句,DROP、CREATE、ALERT等语句;
6、DML:数据操作语言,INSERT、UPDATE、DELETE等语句;
7、DCL:数据控制语句,GRANT、REVOKE、COMMIT、RELLBACK等语句;
8、TCL:事务控制语句:COMMIT、ROLLBACK等(这和上面有异议)
关系模型有三个组成部分:数据结构、数据操作和完整性规则(如何理解这三部分);
关系模型中的术语:
1、关系(relation):对应通常所说的一张表;
2、元组(tuple):表中的一行即为一个元组,可以用来表示实体几种的一个实体,表中任意两行不能相同(就类似一个学生信息表里:小明、六年级、男——即为一个元组)
3、属性(attribute):表中的一列即为一个属性,比如学生信息表里,性别就是一个属性。表中的属性名不可相同,也就是一个表中不可能存在两个性别的属性;
4、主键(key):表中的某个属性组,可以唯一确定一个元组,例如学生信息表里的学号,是标示学生信息的唯一属性;
5、域(domain):列的取值范围即为域,也就是属性的取值范围,例如性别的域是(男、女),不可能存在其他性别了吧?
6、分量:元组中的一个属性值,(例如:小明18岁,18岁即为这个元组的属性值,是这样理解的吧?)
7、关系模式:对关系的描述,(即为表名和表内容,是这样里理解的吧?)
8、键有:唯一键、复合键、超键、候选键、主键、外键等(如何理解这些键的关系?);
关系模型的完整性规则是对数据的约束,关系模型提供了3类完整性规则:实体完整性规则、参照完整性规则和用户定义的完整性规则。
关系模型的范式有第一范式、第二范式、第三范式和BCNF范式等。
第一范式:关系模式中的所有属性值都是不可再分解的原子值,那么就称此关系是第一范式(1NF),比如,性别这一属性值如果同时出现男、女,那就为非规范化的关系(关键就三点:有主键、主键非空、字段属性值不可再分);
第二范式:必须在第一范式中,并且关系中的所有属性依赖于整个候选键;(2NF);
第三范式:依赖于关系的候选键,关系必须在2NF中,非键属性相互之间必须无关,并且必须依赖于键。
BCNF范式:
有几种操作语句还不太熟悉:inner join、left join、right join、parameters声明、union操作
游标:https://blog.youkuaiyun.com/qq_37155959/article/details/80889612
视图:
目前接触的比较多的就是sql server,那相对来说,给我比较直观的比较是:mysql属于轻量级的。那除此之外,mysql开源,至于书里说的mysql功能有限,暂时还体会不到。
写到这,刚好想起几个问题:
1、嵌入式操作系统里面是不是也有数据库,只是linux能用mysql吗?
2、数据库中的表数据是以什么方式存储的,占的空间大么?
持续更新中。。。。。。