首页 _SQL复习完全体

_SQL复习完全体

举报
开通vip

_SQL复习完全体《数据库技术与应用》复习样题 在C盘根目录上创建文件夹DataBase;将“研究生管理-备份-20161009.BAK”复制到C盘根目录下;然后通过界面操作将该备份文件还原为“研究生管理”数据库 粘贴SQL命令时,应使用“选择性粘贴-文本” 编写SQL命令: 1. 创建数据库stud1:有两个数据文件,分别保存在C盘根目录下\ABC和D盘根目录下\123,物理文件名分别为s1.mdf和s2.ndf,逻辑文件名分别为s1_data和s2_data,大小分别为10MB和20MB,最大尺寸为100MB很200MB,增长...

_SQL复习完全体
《数据库技术与应用》复习样题 在C盘根目录上创建文件夹DataBase;将“研究生管理-备份-20161009.BAK”复制到C盘根目录下;然后通过界面操作将该备份文件还原为“研究生管理”数据库 粘贴SQL命令时,应使用“选择性粘贴-文本” 编写SQL命令: 1. 创建数据库stud1:有两个数据文件,分别保存在C盘根目录下\ABC和D盘根目录下\123,物理文件名分别为s1.mdf和s2.ndf,逻辑文件名分别为s1_data和s2_data,大小分别为10MB和20MB,最大尺寸为100MB很200MB,增长方式分别为5%和5MB;要求日志文件的逻辑名为s_log,保存在D盘根目录\123上,文件名s_log.ldf,5MB,最多为25MB,按每次25%速率增加。 create database stud1 on ( name=s1_data, filename='c:\ABC\s1.mdf', size=10, maxsize=100, filegRowth=5% ), (name=s2_data, filename='e:\123\s2.ndf', size=20, maxsize=200, filegrowth=5 ) log on (name=s_log, filename='e:\123\s_log.ldf', size=5, maxsize=25, filegrowth=25% )   2. 用SQL命令在“研究生管理”数据库中创建下面的数据表,该表以“学生信息”为表名保存。SQL代码: 学号 姓名 出生日期 性别 语文 数学 char(7) nvarchar(3) datetime nchar(1) int int             use 研究生管理 go create table 学生信息 (学号 char(7), 姓名 nvarchar(3), 出生日期 datetime, 性别 nchar(1), 语文 int, 数学 int )   3. 用SQL命令为学生信息表输入3条记录,数据见下表。SQL代码: 学号 姓名 出生日期 性别 语文 数学 2012001 董明 1992-06-13 男 78 91 2012002 欧阳文 1991-12-25 女 87 89 2012003 马自达 1993-01-04 男 68 93             insert into 学生信息(学号,姓名,出生日期,性别,语文,数学) values('2012001','董明','1992-06-13','男',78,91) go insert into 学生信息(学号,姓名,出生日期,性别,语文,数学) values('2012002','欧阳文','1991-12-15','女',87,89) go insert into 学生信息(学号,姓名,出生日期,性别,语文,数学) values('2012003','马自达','1993-01-04','男',68,93)   4. 创建默认值对象sex_defa,取值“女”,并将其分别绑定到研究生表的性别字段、导师表的性别字段,并验证其作用。SQL代码: create default sex_defa as'女' go exec sp_bindefault'sex_defa','研究生.性别' go exec sp_bindefault'sex_defa','导师.性别'   5. 在“研究生管理”数据库中创建“学生”表,字段包括学号、姓名、性别和年龄,要求同时建立check约束(无名),使性别限定于“男”或“女”,而年龄的范围限制在18~22岁(约束名age_check),并验证其作用。SQL代码: create table 学生 (学号 char(7), 姓名 nvarchar(3), 性别 nchar(1) check(性别='男'or 性别='女'), 年龄 int constraint age_check check(年龄>=18 and 年龄<=22) )   6. 用SQL代码创建规则对象sex_rule(限定“男”或“女”),绑定到研究生表的性别字段;创建规则对象age_rule(限定数值30~60),绑定到导师表的年龄字段上,并验证其作用。SQL代码: create rule sex_rule as @a='男' or @a='女' go exec sp_bindrule'sex_rule','研究生.性别' go exec sp_bindrule'sex_rule','导师.性别' go create rule age_rule as @a>=30 and @a<=60 go exec sp_bindrule'age_rule','导师.年龄'   7. 将“研究生管理”数据库中研究生表的“学号”字段定义为主键。SQL代码: alter table 研究生 add primary key(学号)   8. 用SQL代码将导师表的“导师编号”字段定义为主键,约束名th_pk;将研究生表的“导师编号”定义为外键,参照表为导师表,约束名为st_fk。完成后在研究生表中输入数据进行约束验证。SQL代码: alter table 导师 add constraint th_pk primary key(导师编号) go alter table 研究生 add constraint st_pk foreign key(导师编号) references 导师(导师编号)   9. 输出导师表中每位导师的所有信息。SQL命令: select * from 导师   10. 显示所有研究生的学号、姓名、性别和入学分数。SQL命令: select 学号,姓名,性别,入学分数 from 研究生   11. 显示研究生所学的全部研究方向,不能重复。SQL命令: select distinct 研究方向 from 研究生   12. 输出每位导师的姓名、年龄及其出生年份。出生年份的计算方法是用今年年份减去年龄。SQL命令: select 姓名,年龄,2016-年龄 as 出生年份 from 导师   13. 输出入学分数在300~400之间的女研究生全部信息(用Between完成)。SQL命令: select * from 研究生 where 入学分数 between 300 and 400 and 性别='女'   14. 输出研究生表中入学分数最高的三位学生的情况。 select top 3 * from 研究生 order by 入学分数 desc   15. 输出研究生的人数、入学平均分。SQL代码: select COUNT (*) as 人数,AVG(入学分数) as 入学平均分 from 研究生   16. 统计不同性别导师的平均年龄。SQL代码: select AVG(年龄) as 平均年龄,性别 from 导师 group by(性别)   17. 输出每门课程的最高分和最低分。SQL代码: select 课程.课程名,max(成绩) as 最高分,MIN(成绩)as 最低分 from 课程 inner join 成绩 on 成绩.课程号=课程.课程号 group by 课程.课程名   18. 统计各个研究方向的研究生的人数、入学分数最高分。SQL代码: select COUNT(*)as 人数,MAX(入学分数)as 入学分数最高分,研究方向 from 研究生 group by(研究方向)   19. 输出汇总表,内容为相关导师姓名、性别、职称及其所带研究生姓名、性别、入学分数和研究方向。SQL代码: select 导师.姓名,导师.性别,职称,研究生.姓名,研究生.性别,入学分数,研究方向 from 研究生 inner join 导师 on 导师.导师编号=研究生.导师编号   20. 输出研究生马腾跃所学全部课程的名称和成绩。SQL代码: select 课程.课程名,成绩.成绩 from 课程 inner join 成绩 on 成绩.课程号=课程.课程号 where 学号=(select 学号 from 研究生 where 姓名='马德里')   21. 输出高于入学分数平均分的研究生姓名、入学分数。SQL命令: select 姓名,入学分数 from 研究生 where 入学分数> (select AVG(入学分数) from 研究生 )   22. 将研究生马德里和马德望的研究方向修改为“考古学”。SQL代码: update 研究生 set 研究方向='考古学' where 姓名 in('马德里','马德望')   23. 为鼓励报考考古学研究方向,凡报考考古学研究方向者入学分数可加分20。SQL代码: update 研究生 set 入学分数=入学分数+20 where 研究方向='考古学'   24. 将马腾跃所带研究生的入学分数增加10分。SQL代码: update 研究生 set 入学分数=入学分数+10 where 导师编号=(select 导师编号 from 导师 where 姓名='马腾跃')   25. 创建视图“录取”,内容为被录取研究生的情况,包括入学分数达到300分(历史专业放宽到230分)考生的姓名、性别、入学分数和研究方向。SQL代码: create view 录取 as select 姓名,性别,入学分数,研究方向 from 研究生 where 入学分数>=300 or 入学分数>=230and 研究方向='历史'   26. 创建视图t_s,包括全体导师的姓名、性别、职称,以及全体研究生的姓名、性别、入学分数、研究方向,并能反映出师生关系。SQL代码: create view t_s as select 导师.姓名 as 导师姓名,导师.性别 as 导师性别,职称,研究生.姓名 as 研究生姓名,研究生.性别 as 研究生性别,研究方向,入学分数 from 导师 inner join 研究生 on 研究生.导师编号=导师.导师编号   ADO.NET技术访问数据库 1. 打开“ADO_NET(空)”文件夹,双击ADO_NET.sln,打开应用程序项目,应用Form1_Load事件在3个文本框中显示第一位研究生的学号、姓名、入学分数,并用两个单选按钮显示其性别。 第1题                                第2、3题 2. 添加一个复选框,标题为“已录取”。假定以300为录取分数线,入学分数达到或超过300分则选定复选框,否则不选;复选框不允许鼠标单击选定。 3. 添加命令按钮,标题为“下一位”,单击后可通过文本框、单选按钮、复选框显示下一位研究生的情况;到达最后的研究生后,再次单击该按钮则显示第一位研究生。 4. 添加“男生最高分”按钮,单击后用MessageBox消息框输出男研究生中入学分数最高者的姓名及其入学分数。 继续阅读
本文档为【_SQL复习完全体】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_954223
暂无简介~
格式:doc
大小:67KB
软件:Word
页数:0
分类:互联网
上传时间:2019-08-26
浏览量:14