学习内容:
1.any all 关键字
如果where 后的条件需要比对多个值时,可以用any或all关键字
例如:
SELECT cno,sno,degree FROM score WHERE degree >ANY(SELECT degree FROM score WHERE cno=‘3-245‘) AND cno=‘3-105‘ ORDER BY degree DESC;
2.数据库设计:
分析需求,设计E-R模型,利用三大范式审核结构,代码编写
(a)E-R模型:
包含实体,实体属性,实体间的关系
实体即关键对象,例如学校内的教师就是一个实体,实体属性就是实体本身的一些特征,例如教师有工号、姓名、性别、年龄、教授的学科等属性,
实体间关系,例如教师教授学生,教师与学生间的关系就是教授与被教授,同时实体间的关系还分为:1对1,例如每个人的基因都是唯一的,一对一的,
一对多,例如一个老师可以教授多名学生,多对多,例如一个学生可以学多门课,而一门课有多个学生学习。
E-R模型:
设计时注意:
1.如果是1:1的关系:那么将实体转换成表,将任意1端实体的主键拿到另一端实体做外键。
2.如果是1:N的关系:那么将实体转换成表,关系不成表,将1端实体的主键拿到N端实体做外键,即1端为主表,n端为副表。
3.如果是M:N的关系:将实体转换成表,关系形成表,同时将两端实体的主键拿过来作为该表的外键,形成复合主键,即关系形成的表存放两个外键。
(b)范式:
第一范式:将字段最小化分解,例如地址一般包含省市县街道这几级,把每一级分开成为多个字段。
第二范式:一个数据库表中,一个表中只能保存一种数据,不可以把多种数据保存在同一张数据库表中,例如商品种类表单只存商品信息,而不应出现客户信息。
第三范式:减少数据冗余,例如一条家电类商品信息,可以把家电的种类单独做一张表,用编号代替家电种类名称。