笔记有错误欢迎直接在评论区进行纠正!我将不再维护软件设计师笔记!
关系转换
一对一转换
一对一转换就是把联系对应的属性随便放到一个实体里面(注意联系本身不放),然后把另外的实体的主键也放到该实体里
一对多转换
一对多转换就是把联系对应的属性放到多方实体类中(注意联系本身不放),并且把其他实体的主键也放到该多方实体类中
多对多转换
多对多转换就是把联系单独作为一个新的关系,把对应联系的实体的主键的组合作为这个新关系的主键
下午题15分
刷题心得
问题1
一般问题1都是要求对应的实体类直接的联系,无非就是三种联系,一对一,一对多,多对多,然后这个直接根据说明就可以得到,很简单,但是有时候会让你补充E-R图,所以要会画,基本上是两个实体类直接用菱形拼接起来,这个菱形里面的就是联系,这个联系一般是两个实体类直接的关系,是动词!
问题2
一般问题2都是补充关系模式的空,这个直接去说明中一一对应的找,但是有时候会找不到,就是说明里的都有,然后挖个空在那里,那就要知道这个是让你填外键,这里是通过关系转换来做题的,我之前都是乱做的,先要看那个关系名称跟哪些实体类有关,然后他们的关系都是哪种,然后把这些关系进行转换(转换原则就是上面的关系转换),最后得到那个关系模式。这里的话先直接去说明里找,然后填好答案后用这个关系转换去检查一下有没有漏掉的就可
问题3
问题3一般是增加新的实体,然后指定这个实体和另外一个实体的关系,这个时候要搞清楚两个实体是什么?他们直接连接的动词是什么?动词是用来作为联系的,分析他们的关系是哪种?最后在对应的图找到对应的实体类新增一个关系进去
真题
2009年下半年试题二
问题1
地址薄与用户是1对1,电子邮件账号与邮件是1对n,邮件和附件是1对n
问题2
这里只有知道外键的含义就会做这个题,很简单,但是有时候出现(b)这样除了说明里给的这两个外还有一个外键,这很容易漏
问题3
2011年下半年试题二
问题1
这个一个空心圈被直线穿过是继承的意思,然后一对多可以用1:*或1:n(m)都可以,记得把联系加上去,每两个实体直接的联系是必须要画上去的,用菱形表示
问题2
问题3
讲解地址:2011年下半年问题3_哔哩哔哩_bilibili
2013年上半年试题二
问题1
问题2
问题3
2019年上半年试题二
问题1
这里我就很迷这个傻逼出题人怎么把项目作为一个联系,它应该是作为一个实体,出个题都这么拉,晦气,然后我是直接把孵化公司很项目连起来了,这里就是经验主义者,根据说明“投资方和创业公司之间依靠孵化公司牵线建立创业项目合作关系,具体实施由孵化公司的一位员工负责协调投资方和创业公司的一个创业项目”应该是员工跟项目连起来,这个员工跟创业公司的关系是根据经验连起来的,说明中并没有给出明确的话语。
讲解地址:2019年上半年问题1_哔哩哔哩_bilibili
问题2
注意这里的完整性约束关系不止是主键还有外键
问题3
这里我一开始是把这两个属性放到了投资方实体类中,但是放到项目里更合适一些,而且题目已经给出了“若创业项目的信息还需要包括投资额和投资时间”,这里是我傻逼了,没有仔细看题
2019年下半年试题二
问题1
问题2
这里的成绩我丢了,说明里有句话“新入职员工要选择多门课程进行培训,并通过考试取得课程的成绩”,所以这里还需要这个成绩,而且不能通过工号去其他地方查到这个成绩,所以必须要有这个成绩
问题3
这里注意一下,讲授是一个多对多的联系,那么它的主键一般是一个组合主键,其实我也想到了,但是我想着一个课程号应该可以唯一确认这个讲授联系,主要是它这里是多对多关系,多对多转成关系模式是要把两个实体的主键组合在一起的,然后培训师这里要理解为是培训师员工号,这样才能是作为一个外键
问题4
这里我一开始是想着员工号–>部门号—>部门负责人,最后得到员工号–>部门负责人,我感觉吧也没啥问题。。。。
2020年下半年试题二
问题1
问题2
这个(b)的主管号是根据E-R图的关系转换得来的
讲解地址:2020年下半年问题2_哔哩哔哩_bilibili
问题3
问题4
讲解地址:2020年下半年问题4_哔哩哔哩_bilibili
2021年上半年试题二
问题1
这里它是把属性用哦椭圆都表示出来了,所以订单的属性也要补充完整,我一开始就把日期过呢订单内容这两个属性给丢了
问题2
这里的(b)我以为是客户姓名,应该是那个椭圆表示的属性的文字下面有下划线表示这个是主键
问题3
2021年下半年试题二
问题1
问题2
这里(d)我多写了个业务员,我觉得应该加业务员
问题3
问题4
这里考的还是关系的转换,当两个实体的关系变成了多对多的时候就要把这个联系单独抽出来作为一个新的关系模式,然后根据多对多的转换原则去转换