数据库原理及应用教程综合实训_第1页
数据库原理及应用教程综合实训_第2页
数据库原理及应用教程综合实训_第3页
数据库原理及应用教程综合实训_第4页
数据库原理及应用教程综合实训_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本文格式为Word版,下载可任意编辑——数据库原理及应用教程综合实训二、简单的数据查询

此题中所用的数据库是第1题中所建立的Study数据库。

(1)查询所有同学的基本信息,包括:学号s_no、班级号class_no、姓名s_name、性别S_sex、出生日期s_birthday。

(2)查询所有同学,要求显示其学号s_no、姓名s_name。

(3)查询所有男同学,要求显示其学号s_no、姓名s_name、出生日期s_birthday。(4)查询所有出生日期在“1980一01一01〞前的女同学,要求显示其学号sno、姓名S_name、性别s_sex、出生日期s_birthday。

(5)查询所有姓“李〞的男同学,要求显示其学号s_no、姓名s_name、性别s_sex、出生日期s_birthday。

(6)查询所有姓名中含有“一〞字的同学,要求显示其学号s_no、姓名s_name。(7)查询所有职称不是“讲师〞的教师,要求显示其教师号t_no、姓名t_name、职称t_title。

(8)查询虽选修了课程,但未参与考试的所有同学,要求显示出这些同学的学号s_no。(9)查询所有考试不及格的同学,要求显示出这些同学的学号s_no、成绩score,并按成绩降序排列。

(10)查询出课程号为01001,02023,02023的所有课程,要求显示出课程号course_no、Course_name。(要求用in运算符)。

三、繁杂数据查询

此题中所用的数据库是第l题中所建立的Study数据库。

(1)查询所有同学的选课及成绩状况,要求显示学生的学号s_no、姓名s_name、课程号

Course_no和课程的成绩score。

(2)查询所有同学的选课及成绩状况,要求显示学生的姓名s_name、课程名称course_name、课程的成绩score,并将查询结果存放到一个新的数据表new_table中。

(3)查询“计算机99-1〞班的同学的选课及成绩状况,要求显示学生的学号s_no、姓名s_name、课程号course_no、课程名称course_name、课程的成绩score。

(4)查询所有同学的学分状况(假设课程成绩>=60时可获得该门课程的学分),要求显示学生的学号s_no、姓名s_name、总学分(将该列定名为:total_score)。(用JOIN)(5)查询所有同学的平均成绩及选课门数,要求显示学生的学号s_no、姓名s_name、

均成绩(将该列定名为:average_score)、选课的门数(将该列定名为:choice_num)。(6)查询所有选修了课程但未参与考试的所有同学及相应的课程,要求显示学生的学号S_no、姓名s_name、课程号course_no、课程名称course_name。.

(7)查询所有选修了课程但考试不及格(假设<60分为不及格)的所有同学及相应的课程,要求显示学生的学号s_no、姓名s_name、课程号course_no、课程名称course_name、课程成绩course_score。

(8)查询选修了课程名为“程序设计语言〞的所有同学及成绩状况,要求显示学生的姓名s_name、课程的成绩score。(使用ANY)

(9)查询“计算机系〞的所有同学及成绩状况,要求显示学生的学号s_no、姓名s_name、班级名称class_name、课程号course_no、课程名称course_name、课程的成绩score。(10)查询所有教师的任课状况,要求显示教师姓名t_name、担任课程的名称course_name。

四、用Transact-SQL语句定义存储过程

1、创立一个能向学生表Student中插入一条记录的存储过程Insert_student,该过程需要5个参数,分别用来传递学号、姓名、班级、性别、出生日期。

2、写出执行存储过程Insert_student的SQL语句,向数据表Student中插入一个新同学,

并提供相应的实参值(实参值自己给出)。

3、创立一个向课程表中插入一门新课程的存储过程Insert_course,该存储过程需要三个参数,分别用来传递课程号、课程名、学分,但允许参数“学分〞的默认值为2,即当执行存储过程Insert_course时,未给参数“学分〞提供实参值时,存储过程将按默认值2进行运算。

4、执行存储过程Insert_course,向课程表Course中插入一门新课程。分两种状况写出相应的SQL命令

(1)提供三个实参值执行存储过程Insert_course(三个参数值由用户提供)

(2)只提供二个实参值执行存储过程Insert_course,即:不提供与参数“学分〞对应的实参值。

5、创立一个名为Query_student的存储过程,该存储过程的功能是根据学号查询学生表中某一学生的姓名、年级、性别及出生日期。

6、执行存储过程Query_student,查询学号为〞001101〞的学生的学号、班级号、性别及出生日期。写出完成此功能的SQL命令。五、用Transact-SQL语句自定义触发器

1、创立一个向学生表Student中插入一新同学时能自动列出全部同学信息的触发器Display_trigger

2、执行存储过程insert_student,向学生表中插入一新同学,看触发器Display_trigger是否被执行

2.简单的数据查询(1)select*

fromStudent;

(2)selects_no,s_name

fromStudent

(3)selects_no,s_name,s_birthday

fromStudentwheres_sex='男'

(4)Selects_no,s_name,s_sex,s_birthday

FromStudent

Where(s_sex='女')and(s_birthday<='1980-01-01')

(5)selects_no,s_name,s_sex,s_birthday

fromStudent

Wheres_sex='男'ands_namelike'李%'

(6)selects_n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论