数据库期未复习.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库期未复习数据库期未复习

数据库复习资料1?? SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体.它除了具有一般关系数据库语言的特点外, 还具有3个特点:①SQL具有自含式和嵌入式两种形式:②SQL具有语言简洁、易学易用的特点③SQL支持三级模式结构。 2. 设职工社团数据库有三个基本表: 职工(职工号,姓名,年龄,性别); 社会团体(编号,名称,负责人,活动地点); 参加(职工号,编号,参加日期)。 其中: 1)职工表的主码为职工号。 2)社会团体表的主码为编号;外码为负责人,被参照表为职工表,对应属性为职工号。 3)参加表的职工号和编号为主码;职工号为外码,其被参照表为职工表,对应属性为职工号;编号为外码,其被参照表为社会团体表,对应属性为编号。 试用SQL语句表达下列操作: l)定义职工表、社会团体表和参加表,并说明其主码和参照关系。 1)CREAT TABLE职工(职工号CHAR(l0)NOT NULL UNIQUE, 姓名CHAR(8)NOT NULL, 年龄SMALLINT, 性别CHAR(2), CONSTRAINT C1 CHECK(性别 IN(‘男’,‘女’))); CREAT TABLE社会团体(编号CHAR(8)NOT NULL UNIQUE, 名称CHAR(12)NOT NULL, 负责人 CHAR(8), 活动地点 VARCHAR(50), CONSTRAINT C2 FOREIGN KEY(负责人)REFERENCES职工(职工号)); CREAT TABLE参加(职工号CHAR(8), 编号CHAR(8), 参加日期 DATE CONSTRAINT C3 PRIMARY KEY(职工号,编号), CONSTRAIN C3 FOREIGN KEY (职工号)REFERENCES职工(职工号)); 2)建立下列两个视图。 社团负责人(编号,名称,负责人职工号,负责人姓名,负责人性别); 参加人情况(职工号,姓名,社团编号,社团名称,参加日期) 2)CREAT VIEW社团负责人(编号,名称,负责人职工号,负责人姓名,负责人性别) AS SELECT编号,名称,负责人,姓名,性别 FROM社会团体,职工 WHERE社会团体,负责人=职工.职工号; CREAT VIEW参加人情况(职工号,姓名,社团编号,社团名称,参加日期) AS SELECT参加.职工号,姓名,社会团体编号,名称,参加日期 FROM职工,社会团体,参加 WHERE职工.职工号=参加.职工号AND参加.编号=社会团体.编号; 3)查找参加唱歌队或篮球队的职工号和姓名。 3)SELECT职工号,姓名 FROM 职工,社会团体,参加 WHERE职工.职工号=参加.职工号AND参加.编号=社会团体.编号 AND社会团体.名称IN(‘唱歌队’,‘篮球队’) 4)查找没有参加任何社会团体的职工情况。 4)SELECT* FROM 职工 WHERE NOT EXISTS(SELECT* FROM参加 WHERE参加.职工号=职工.职工号); 5)查找参加了全部社会团体的职工情况。 5)SELECT* FROM职工 WHERE NOT EXISTS(SELECT* FROM参加 WHERE NOT EXISTS (SELECT* FROM社会团体 WHERE参加.职工号=职工.职工号AND 参加.编号=社会团体.编号)); 6)查找参加了职工号为“ xmlnamespace prefix =st1 ns =urn:schemas-microsoft-com:office:smarttags /1001”的职工所参加的全部社会团体的职工号。 6)SELECT职工号 FROM职工 WHERE NOT EXISTS(SELECT* FROM参加 参加1 WHERE参加1.职工号=‘1001’AND NOT EXISTS (SELECT* FROM参加 参加 2 WHERE 参加2.编号=参加1.编号AND 参加2.职工号一职工.职工号)); 7)求每个社会团体的参加人数。 7)SELECT TCOUNT(职工号) FROM 参加 GROUP BY编号; 8)求参加人数最多的社会团体的名称和参加人数。 8)SELECT社会团体.名称,COUNT(参加.职工号) FROM社会团体 参加 WHERE 所在城市=‘天津’));

文档评论(0)

cxiongxchunj + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档