- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
数据库竞赛题目及参考答案
南阳师范学院2013-2014(1)数据库课程
教育技术学12.4班SQL语句竞赛
(提示:所有的操作均用SQL语句完成。)
有某个学生运动会比赛信息的数据库,保存了如下的表:
运动员(运动员编号,运动员姓名,运动员性别,所属系名)
项目(项目编号,项目名称,项目比赛地点)
成绩(运动员编号,项目编号,积分)
请用SQL语句完成如下功能:
1.建立数据库,数据库名称为y_x_c(4分)
Createdatabasey_x_c
2.建立数据表,并满足如下条件:(30分)
(1)定义各个表的主码、外码约束
(2)运动员的姓名和所属系别不能为空值。
(3)积分要么为空值,要么为6,4,2,0,分别代表第一,二,三名
和其他名次的积分。
Createtable运动员(
运动员编号char(8)primarykey,
运动员姓名char(20)notnull,
运动员性别check(运动员姓名in(男,女),
所属系名varchar(100)notnull
)
Createtable项目(
项目编号char(6)primarykey,
项目名称varchar(50),
项目比赛地点varchar(50))
Createtable成绩(
运动员编号char(8)foreignkeyreferences运动员(运动员编号),
项目编号char(6)foreignkeyreferences项目(项目编号),
积分tinyintcheck(积分in(6,4,2,0))--注释:没有写notnull
就是允许空
)
3.往表中插入数据:(提示:每个表只需要书写插入前面两行数据
的命令即可)(6分)
运动员(1001,李明,男,计算机系
1002,张三,男,数学系
1003,李四,男,计算机系
1004,王二,男,物理系
1005,李娜,女,心理系
1006,孙丽,女,数学系)
项目(x001,男子五千米,1操场
x002,男子标枪,1操场
x003,男子跳远,2操场
x004,女子跳高,2操场
x005,女子三千米,3操场)
成绩(1001,x001,6
1002,x001,4
1003,x001,2
1004,x001,0
1001,x003,4
1002,x003,6
1004,x003,2
1005,x004,6
1006,x004,4)
这部分比较简单,省略答案
4.使用完成如下查询
(1)找出参加了张三所参加的所有项目的其他同学的姓名。(10
分)
select运动员姓名
from运动员
where运动员姓名!=张三and运动员编号in(selectdistinct运
动员编号from成绩
where项目编号in(select项目.项目编号
fromdbo.成绩,dbo.项目,dbo.运动员
wheredbo.成绩.运动员编号=dbo.运动员.运动员编号anddbo.
成绩.项目编号=dbo.项目.项目编号and运动员编号=(select运动员编
号
from运动员
文档评论(0)