




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验一1、建立学生表studentcreate table student(学号 char(5) primary key, 姓名 char(8) not null, 性别 char(2) check(性别=男 or 性别=女), 年龄 int default 20, 所在系 char(20)2、建立课程表course:create table course( 课程号 char(5) not null primary key, 课程名 char(20), 先修课 char(5), 学分 smallint);3、建立sc表create table sc( 学号 char(5) not null, 课程号 char(5) not null, 成绩 int check (成绩=0 and 成绩=100), primary key (学号,课程号), foreign key (学号) references student (学号), foreign key (课程号) references course (课程号);4、修改表(1)在sc表中最后一列增加一个新列:课时,数据类型为smallint(半字长整型),然后再删除该列。alter table sc add 课时 smallint;alter table sc drop column 课时;(2)在学生表的学号上建立唯一索引。create unique index a on student(学号);5、尝试利用Alter语句删除学生表中对年龄默认值的约束条件。提示:进入SQL Server后按“F1”查看帮助文档,学会通过检索关键字查找相关命令,先查看表中的约束条件名再删除该约束。alter table student drop DF_student_年龄_023D5A04alter table student alter column 年龄 smallint实验二一、在企业管理器中向数据库student000中的表插入数据在企业管理器中向student表插入记录。在企业管理器中选择表student?单击鼠标右键?打开表?返回所有行?逐列(字段)输入数据记录值,输入完后关闭表窗口。用同样的操作过程在企业管理器中向course和sc表插入数据。1、insert into studentvalues (95001,李勇,男,20,计算机)insert into studentvalues (95002,刘晨,女,19,应用数学)insert into studentvalues (95003,王敏,女,18,电子机械)insert into studentvalues (95004,张立,男,19,计算机)2、insert into coursevalues (1,数据结构,5,4)insert into coursevalues (2,高等数学, ,4)insert into coursevalues (3,面向对象,1,3)insert into coursevalues (4,操作系统,6,3)insert into coursevalues (5,数据库,7,4)insert into coursevalues (6,计算机文化基础, ,2)insert into coursevalues (7,C语言,6,4)3、insert into scvalues (95001,1,92)insert into scvalues (95001,2,82)insert into scvalues (95001,3,88)insert into scvalues (95002,2,90)insert into scvalues (95003,3,80)二、修改1、在企业管理器中删除数据库student000表数据,在企业管理器中删除表student的第4行和sc表的第2行数据。在企业管理器中选择表student?单击鼠标右键?打开表?返回所有行?选择要删除的行?右键删除?关闭表窗口。(alter table )用同样的操作过程在企业管理器中删除表course的第7行记录。delete from studentwhere 学号=95004delete from scwhere 学号=95001 and 课程号=2delete from coursewhere 课程号=72、在企业管理器中将表student中学生95002的年龄改为22。update studentset 年龄=22where 学号=950023、使用T-SQL语句更新数据库的表数据(1)使用T-SQL语句分别向student、course和sc表中插入一行记录。启动查询分析器?在“SQL Server(S)”一栏输入“.”或者“(local)”表示本地服务器?点选“Windows身份验证(W)”?在下拉菜单中选择数据库?在“查询”窗口中输入以下T-SQL语句:use student000goinsert into studentvalues(95005, 李冬, 20, 男, 电子机械)g单击快捷工具栏的分析图标以检查T-SQL的语法,再单击执行图标执行语句。试分析出现错误的原因,并通过修改以上T-SQL语句完成插入记录的操作。(2)利用同样的方法向表course和sc表插入任意一行带有空值的记录,并同时在企业管理器中观察三个表的数据的变化。4、使用T-SQL语句修改表中的某个记录的字段值。(1)启动查询分析器,在“查询”窗口中输入如下T-SQL语句:use student000goupdate studentset 年龄=19where 学号=95002go单击快捷工具栏的分析图标以检查T-SQL的语法,再单击执行图标将学号为95002的学生年龄改为19。(2)用同样的操作过程修改sc表中95002选修的高等数学课程的成绩为100,并同时在企业管理器中观察其的变化。update scset 成绩=100where 学号=95002 and 课程号=25、使用T-SQL语句修改表student中所有记录的值。(1)启动查询分析器,在“查询”窗口中输入如下T-SQL语句:use student000goupdate studentset 年龄=年龄+2go单击快捷工具栏的分析图标以检查T-SQL的语法,再单击执行图标将所有学生的年龄增加2岁。(2)用同样的操作过程修改course表中的数学课程学分乘以2。update course set 学分=学分*26、使用T-SQL语句删除表中的记录。启动查询分析器,在“查询”窗口中输入如下T-SQL语句:use student000godelete from coursewhere 课程号=6go单击快捷工具栏的分析图标以检查T-SQL的语法,再单击执行图标将删除course表中课程号为6的记录。7、违反约束条件,观察出现的情况对数据库student000中的表进行插入记录和删除记录的操作,观察当这些操作破坏了表的列级完整性约束或表级完整性约束时所出现的情况。例如:插入一个姓名为空的学生记录,或删除student表中学号为95001的学生记录。实验三在前面建立的数据库student000的表中进行如下操作:1、查询全体学生的学号和姓名;select 学号,姓名 from student2、查询全体学生的详细记录;select * from student3、查询全体学生的姓名、出生年份和所在系;select 姓名,2012-年龄 出生年份,所在系 from student4、查询选修了课程的学生学号;select distinct 学号 from sc where 课程号 in (select distinct 课程号 from sc)5、查询计算机系全体学生的姓名;select 姓名 from student where 所在系=计算机6、查询考试成绩不及格的学生姓名;select distinct student.姓名 from student,sc where student.学号=sc.学号 and sc.成绩607、查询年龄在2023岁之间(包括20和23岁)的学生姓名、所在系和年龄;select 姓名,所在系,年龄 from student where 年龄 between 20 and 238、查询年龄不在2023岁之间的学生姓名、所在系和年龄;select 姓名,所在系,年龄 from student where 年龄 not between 20 and 239、查询电子机械系和应用数学系学生的姓名和性别;select 姓名,性别 from student where 所在系 in (电子机械,应用数学)10、查询既不是电子机械系又不是应用数学系学生的姓名和性别;select 姓名,性别 from student where 所在系 not in (电子机械,应用数学)11、查询所有姓刘的学生的学号和姓名;select 学号,姓名 from student where 姓名 like 刘%12、求缺少成绩的学生的学号和课程号;select 学号,课程号 from sc where 成绩 is null13、查询没有选课的学生的学号;select distinct 学号 from student where 学号 not in (select distinct 学号 from sc)14、查询所有有成绩的学生的学号和课程号;select 学号,课程号 from sc where 成绩 is not null15、查询计算机系年龄在20岁以下的学生姓名;select 姓名 from student where 年龄9019、查询每一门课的间接先修课select first.课程号,second.先修课 from course first,course second where first.先修课=second.课程号实验四1、查询选修了3号课程的学生学号和成绩,查询结果按成绩的降序排列;select 学号,成绩 from sc where 课程号=3 order by 成绩 desc2、查询全体学生的情况,查询结果按所在系升序排列,同一个系的学生按年龄降序排列;select * from student order by 所在系,年龄 desc3、查询学生总人数;select count(*) from student4、计算1号课程的学生平均成绩;select avg(成绩) from sc where 课程号=15、求各个课程号及其相应的选课人数;select 课程号,count(学号) from sc group by 课程号6、查询选修了2门以上课程的学生学号;select distinct 学号 from sc group by 学号 having count(学号)27、查询与刘晨在同一个系学习的学生情况(用IN谓词和自然连接两种方式实现);select * from student where 所在系 in(select 所在系 from student where 姓名=刘晨)select s1.* from student s1,student s2 where s1.所在系=s2.所在系 and s2.姓名=刘晨8、查询选修了高等数学的学生学号和姓名;select student.学号,student.姓名 from student,course,sc where student.学号=sc.学号 and sc.课程号=course.课程号 and course.课程名=高等数学9、求2号课程的成绩高于李勇任意一门成绩的学生学号和成绩;select sc.学号,sc.成绩 from student,sc where student.学号=sc.学号 and sc.课程号=2 and sc.成绩any(select sc.成绩 from sc,student where student.姓名=李勇)10、求其它系中比计算机系中某一学生年龄小的学生情况;select * from student where 年龄any(select 年龄 from student where 所在系=计算机) and 所在系!=计算机11、求其它系中比计算机系学生年龄都小的学生情况;select * from student where 年龄all(select 年龄 from student where 所在系=计算机) and 所在系!=计算机12、求选修了2号课程的学生姓名(用EXISTS谓词和连接查询两种方式实现);select 姓名 from student where exists(select * from sc where sc.课程号=2 and student.学号=sc.学号)select distinct 姓名 from student,sc where student.学号=sc.学号 and sc.课程号=213、求没有选修2号课程的学生姓名;select 姓名 from student where not exists(select * from sc where sc.课程号=2 and student.学号=sc.学号)14、求选修了全部课程的学生姓名;select 姓名 from student where not exists(select * from course where not exists (select * from sc where sc.学号=student.学号 and sc.课程号=course.课程号)15、求至少选修了学号为95002的学生所选修的全部课程的学生学号和姓名。select distinct 学号,姓名 from sc,scx where not exists (select * from sc,scy where scy.学号=95002 and not exists (select * from sc,scz where scz.学号=scx.学号 and scz.课程号 =scy.课程号)实验五在前面建立的数据库student000的表中进行如下操作:1、查询选修了1号课程或2号课程的学生学号(用集合查询和OR操作实
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 房地产工程方案(3篇)
- 农业无人机植保作业效率优化2025年技术升级与创新报告
- 工厂搬迁工程外包方案(3篇)
- 粮食公司面试题库及答案
- 篮协部门面试题库及答案
- 矿产资源面试题库及答案
- 科技生面试题库及答案大全
- 抗旱救灾面试题库及答案
- 2025年分布式新能源在光伏发电与储能市场发展趋势研究报告
- 2025年无线充电技术在新能源汽车中的能源管理优化报告
- 三级安全教育试题及答案
- 脱硝培训试题一及答案
- 两人合伙贷款合同范本
- 人工智能全套课件下载
- 美容护肤产品合同协议
- 2025-2030中国高压造影剂注射管行业市场现状供需分析及投资评估规划分析研究报告
- 终止妊娠药品规范化管理
- 护理输入过期液体不良事件
- 全面了解农业职业经理人考试的试题及答案
- 高职高考语文复习语言知识与应用第四章正确使用词语(包括熟语)课件
- 考研英语一阅读理解真题大全
评论
0/150
提交评论