2011春数据库系统及应用习题课.ppt

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2011春数据库系统及应用习题课

数据库技术与应用 习题课 数据库设计与ER模型 ER 模型的设计过程:数据库设计者的任务就是要把现实世界中的数据以及数据间的联系抽象出来,用“实体”、“属性”与“联系”来表示。具体设计步骤为: 数据库设计举例(一) 设某商业集团数据库中有3个实体集。一是“公司”实体集,属性有公司编号、公司名、地址等;二是“仓库”实体集,属性有仓库编号、仓库名、地址等;三是“职工”实体集,属性有职工编号、姓名、性别等。 公司与仓库间存在“隶属”联系,每个公司管辖若干仓库,每个仓库只能属于一个公司管辖;仓库与职工之间存在聘用联系,每个仓库可聘用多个职工,每个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。 数据库设计实例(二) 设某商业集团数据库中有3个实体集。一是“商店”实体集,属性有商店编号、商店名、地址等;二是“商品”实体集,属性有商品号、商品名、规格、单价等;三是“职工”实体集,属性有职工编号、姓名、性别、业绩等。 商店与商品间存在“销售”联系,每个商店可销售多种商品,每种商品也可以放在多个商店销售,每个商店每销售一种商品,有月销售量;商店与职工间存在着“聘用”关系,每个商店有许多职工,每个职工只能在一个商店工作,商店聘用职工有聘期和月薪。 (1)试画出ER 图,并在图上注明属性、联系的类型。 (2)将ER图转换成关系模式集,并指出每个关系模式主键和外键。 数据库设计实例(三) 供应商、项目和零件三者之间具有多对多的联系。即一个供应商 可以供给若干项目多种零件,每个项目可以使用不同供应商供应 的零件,每种零件可由不同供应商供给。 实体描述如下: 供应商: 供应商号、姓名、地址、电话号码、帐号。 项目:项目号、预算、开工日期。 零件:零件号、名称、规格、单价、描述。 (1)试画出ER 图,并在图上注明属性、联系的类型。 (2)将ER图转换成关系模式集,并指出每个关系模式主键和外键。 数据库设计思考题 关系代数运算 关系模型中常用的操作如下: 1、交 2、并 3、差 4、笛卡儿积 5、投影 6、选择 7、?联接 关系代数运算 8、自然连接 9、除法:设有关系R(X,Y)和S(Y),其中X、Y可以使单个属性或属性集,则除法运算定义为: 关系代数实例 设有关系模式: S(snum,sname,age,sex) SC(snum,cnum,grade) C(cnum,cname,teacher) 试用关系代数表达式表达每个查询语句。 1、检索学习课程号为C2的学生学号与成绩。 2、检索学习课程为C2的学生学号与姓名。 3、检索选修课程名为Maths的学生学号与姓名。 4、检索选修课程号为C2或C4的学生学号。 5、检索至少选修课程号为C2和C4的学生学号。 6、检索不学课程号为C2的学生姓名与年龄。 7、检索学习全部课程的学生姓名。 8、检索所学课程包含学生S3所学课程的学生学号。 Take a break! SQL 语句 Select 属性名|表达式|聚合函数 From 表 Where 条件 Group by 属性名 Having 条件 Order by 属性名或表达式 [asc|desc] Compute WHERE的条件表达 用SQL实现上述操作 1.检索学习课程号为C2的学生学号与成绩。 2.检索学习课程为C2的学生学号与姓名。 3.检索选修课程名为Maths的学生学号与姓名。 4.检索选修课程号为C2或C4的学生学号。 5.检索至少选修课程号为C2和C4的学生学号。 6.检索不学课程号为C2的学生姓名与年龄。 7.检索学习全部课程的学生姓名。 8.检索所学课程包含学生S3所学课程的学生学号。 1、检索学习课程号为C2的学生学号与成绩。 Select snum,grade From sc Where cnum=‘c2’; 2、检索学习课程为C2的学生学号与姓名。 Select snum,sname From s Where snum in(select snum from sc where cnum=‘c2’); 3、检索选修课程名为Maths的学生学号与姓名。 select snum,sname from s where snum in(select snum from sc where cnum in(select cnum

您可能关注的文档

文档评论(0)

6358999 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档