DBS课后综合作业 三级模式的理解 题目 谈谈你对数据库系统的三级模式结构的理解。 要求 参考其他书籍 包含自己的观点 不少于500字,截至9月23日 Email或单页纸提交,写清姓名和学号 在邮件主题中包含“作业一”及姓名、学号等内容,严格如“作业一 某某某 12345678”的格式 关系代数操作 设有下列四个关系模式: 供应商表(供应商号,供应商名,供应商所在城市) S(SNO,SNAME,CITY) 零件表(零件号,零件名称,零件颜色,零件重量) P(PNO,PNAME,COLOR,WEIGHT) 项目表(项目号,项目名,项目所在城市) J(JNO,JNAME,CITY) 情况表(供应商号,零件号,项目号,供应数量) SPJ(SNO,PNO,JNO,QTY) 试用关系代数语言完成以下操作: 求供应项目J1零件的供应商号SNO ?SNO(?JNO=’J1’(SPJ)) 求供应项目J1零件P1的供应商号SNO ?SNO(?JNO=’J1’∧PNO=’P1’(SPJ)) 求供应项目J1红色零件的供应商号SNO ?SNO(?COLOR=’红色’(P)*??JNO=’J1’(SPJ)) 求没有使用天津供应商生产的红色零件的项目号JNO ?PNO(P)-??PNO(?CITY=’天津’(S)*?SPJ) 求至少使用了S1供应商所供应的全部零件的项目号JNO ?PNO,JNO(SPJ)÷?PNO(?SNO=’S1’(SPJ)) 要求 Email或单页纸提交,写清姓名和学号 在邮件主题中包含“作业二”及姓名、学号等内容,严格如“作业二 某某某 12345678”的格式 SQL对用户和权限的操作 要求 每小题首先要写出对应的SQL语句,然后再指出该语句可由哪个(或哪些)用户或角色来操作 如果通过Email提交,必须在邮件主题(Subject)中包含“数据库 作业三”及姓名、学号等内容,如“数据库 作业三 张三 00123456”字样,否则我Outlook的邮件自动分拣功能将有可能将你的作业邮件误删 如果通过纸面提交,也请注明姓名和学号 截至11月10日 根据以上要求完成下列各小题 在数据库系统中建立数据库用户zhang,并设置密码为YourPassword SQL:CREATE USER zhang IDENTIFIED BY YourPassword 操作者:DBA 将用户zhang的密码更改为MyPassword SQL:ALTER USER zhang IDENTIFIED BY MyPassword 操作者:DBA,zhang 使包括zhang在内的所有用户拥有登录数据库系统的权限 SQL:GRANT CONNECT TO PUBLIC 操作者:DBA 定义拥有建表和查询权限的角色part1 SQL:GRANT CREATE TABLE, SELECT TO part1 操作者:DBA 将角色part1授予zhang,并允许zhang将该角色传递给其他用户 SQL:GRANT part1 TO zhang WITH GRANT OPTION 操作者:DBA 使zhang拥有修改表Student中Grade属性的权限 SQL:GRANT UPDATE(Grade) ON TABLE student TO zhang 操作者:DBA, 表的创建者 收回zhang操作表Student的所有权限 SQL:REVOKE ALL ON TABLE Student FROM zhang 操作者:DBA, 表的创建者 收回zhang的建表权限 SQL:REVOKE CREATE TABLE FROM zhang 操作者:DBA 删除用户zhang SQL:DROP USER zhang 操作者:DBA 关系的模式分解 已知 有关系模式UN(Sno,Cno,Dn,Dm,G) 其中Sno为学生编号 Cno为课程编号 Dn为学生所在系的名称 Dm为系主任姓名 G为学生选修对应课程的成绩 求解 该关系模式中的关系键、候选键和主键 分析该关系模式中的所有函数依赖关系 利用规范化理论对该关系模式进行规范化,写出过程 要求 可通过片页纸或Email提交,需注明“数据库 作业四”及姓名、学号等内容 截至11月18日 答案 该关系模式中的关系键、候选键和主键 该关系的关系键为(Sno,Cno),只有一个关系键,所以候选键也为(Sno,Cno),主键也为(Sno,Cno)。 分析该关系模式中的所有函数依赖关系 Sno→Dn, Dn→Dm, (Sno,Cno)→G 利用规范化理论对该关系模式进行规范化,写出过程 由于(Sno,Cno)是键,所以有(Sno,Cno) p→Dn 消除部分依赖,将关系UN分解为两个关系: UN1(Sno,Cno,G)和UN2(Sno,Dn,Dm) 由Sno→Dn, Dn→Dm,可以得出Sno t→Dm 消除传递依赖,将关系UN2分解为: UN3(Sno,Dn)和UN4(Dn,Dm) 分解后最终得到三个关系模式: UN1(Sno,Cno,G),UN3(Sno,Dn)和UN4(Dn,Dm) 这三个关系均不存在异常函数依赖,起码达到3NF,分解结束。 数据库设计步骤 已知 设有某商业单位需要建立商务数据库用以处理销售记帐,它记录的数据包括:顾客姓名、所在单位及单位电话;商品名称、型号及单价;某顾客购买某商品的数量及日期。假定无同名顾客,无同型号的商品,电话公用,顾客可在不同日期购买同一商品。 求解 画出该单位的商务E-R模型,并优化。 将E-R模型转换成关系模型并规范化到3NF。 要求 可通过片页纸或Email提交,需注明“数据库 作业五”及姓名、学号等内容 截至11月18日 答案 画出该单位的商务E-R模型,并优化。 根据已知条件,可以初步画出如下的E-R图:  由于单位的电话是公用的,一个电话可能被同一单位的顾客使用,所以将上面E-R图中的属性单位看成一个实体,优化为以下的E-R图:  将E-R模型转换成关系模型并规范化到3NF。 根据以上的ER图,得到的关系模式为(下划线的为关系的键): 单位(名称,电话) 顾客(姓名,……) 购买(顾客姓名,商品名称,日期,数量) 商品(型号,名称,单价) 所在(姓名,单位名称) 以上关系均不存在异常的函数依赖,自然达到3NF。