数据库原理实验内容2.docx

上传人:b****7 文档编号:15874093 上传时间:2023-07-08 格式:DOCX 页数:11 大小:90.26KB
下载 相关 举报
数据库原理实验内容2.docx_第1页
第1页 / 共11页
数据库原理实验内容2.docx_第2页
第2页 / 共11页
数据库原理实验内容2.docx_第3页
第3页 / 共11页
数据库原理实验内容2.docx_第4页
第4页 / 共11页
数据库原理实验内容2.docx_第5页
第5页 / 共11页
数据库原理实验内容2.docx_第6页
第6页 / 共11页
数据库原理实验内容2.docx_第7页
第7页 / 共11页
数据库原理实验内容2.docx_第8页
第8页 / 共11页
数据库原理实验内容2.docx_第9页
第9页 / 共11页
数据库原理实验内容2.docx_第10页
第10页 / 共11页
数据库原理实验内容2.docx_第11页
第11页 / 共11页
亲,该文档总共11页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

数据库原理实验内容2.docx

《数据库原理实验内容2.docx》由会员分享,可在线阅读,更多相关《数据库原理实验内容2.docx(11页珍藏版)》请在冰点文库上搜索。

数据库原理实验内容2.docx

数据库原理实验内容2

 

数据库原理实验报告

 

学院软件学院

专业软件工程

班级13级4班

学号201330611175

姓名黄旺

指导教师

(2015年05月)

 

姓名:

协作者:

__________教师评定:

实验题目查询数据库

一、实验目的

熟悉SQL语句的基本使用方法,学习如何编写SQL语句来实现查询、删除、更新

1、掌握基本的SELECT查询及其相关子句的使用;

2、掌握复杂的SELECT查询,如多表查询、子查询、连接查询和嵌套查询。

1、掌握基本的DELETE的使用;

1、掌握基本的UPDATE的使用;

二、实验内容和要求

使用SQL查询分析器修改数据表,查询数据,练习查询语句的使用,掌握SELECT语句的完整结构,包括简单查询、嵌套查询、连接查询等基本实现方法,掌握存储查询结果的方法,体会各种查询的异同及相互之间的转换,体会各种查询的执行过程,为简单综合应用打下良好的基础。

三、实验主要仪器设备和材料

1.计算机及操作系统:

PC机,Windows2000/xp;

2.数据库管理系统:

SQLsever2000/2003/2005;

四、实验方法、步骤及结果测试

1、利用查询分析器修改数据表

(1)、用INSERT语句向各个表中插入数据录入2条记录。

录入时注意体会外键约束。

实现代码及截图:

查询分析器执行情况:

SQL语句及执行结果显示

 

实验结果截图显示(插入数据的表格)

 

(2)、用UPDATE语句更改student表中数据;

实现代码:

student表更改前的内容截图显示查询分析

updatestudentsetsname='梨花'

wheres_no='00000001';

updatestudentsetsbirthday='1994-01-2312:

34:

12'

wheres_no='00000000';

student表更改后的内容截图显示

 

(3)、用DELETE语句删除student表中数据;

实现代码:

student表更改前的内容截图显示查询分析

 

student表更改后的内容截图显示

 

2、要求用SELECT完成以下查询

2.1简单查询:

(1)、查询全部学生的学号、姓名、性别和出身年月日。

实现代码及查询结果截图:

格式如下

查询分析器执行情况:

SQL语句及执行结果显示

selects.s_no,s.sname,s.sex,s.sbirthday

fromstudentass

查询结果截图显示

(2)、查询全体学生的学号、姓名和年龄

实现代码及查询结果截图:

查询分析器执行情况:

SQL语句及执行结果显示

selects.s_no,s.sname,s.sex,datediff(year,s.sbirthday,getdate())

fromstudentass

查询结果截图显示

(3)、查询院系编号为‘001’(软件学院)的全部学生的学号、姓名、性别和出身年月日。

实现代码及查询结果截图:

查询分析器执行情况:

SQL语句及执行结果显示

selects.s_no,s.sname,s.sex,s.sbirthday

fromstudentass

wheres.dno='000000';

查询结果截图显示

(4)、查询“制药工程”专业(专业代码为‘e’)并且班级代码为‘05’的学生的学号、姓名和出生日期。

实现代码及查询结果截图:

查询分析器执行情况:

SQL语句及执行结果显示

insertintodepartment

values('000003','医学院','鲁行');

insertintospeciality

values('e','000003','制药工程');

insertintoclass

values('e','05','李四');

insertintostudent

values('00000002','李饿','女','1992-03-2403:

34:

32','000003','e','05')

insertintostudent

values('00000003','李好','男','1993-07-2604:

13:

04','000003','e','05')

查询结果截图显示

selects_no,sname,sbirthday

fromstudent

wherespno='e'andclass_no='05';

(5)、查询在‘1990/01/10’以后出生的自动化学院(院系编号为‘002’)学生的学号、姓名、性别和出身年月日。

实现代码及查询结果截图:

查询分析器执行情况:

SQL语句及执行结果显示

selects.s_no,s.sname,s.sex,s.sbirthday

fromstudentass

wheres.dno='002'ands.sbirthday>'1990-01-10';

查询结果截图显示

 

(6)、查询全部学生的学号、姓名、性别和出身日期结果按照出生日期的升序排列。

实现代码及查询结果截图:

查询分析器执行情况:

SQL语句及执行结果显示

selects_no,sname,sex,sbirthday

fromstudent

orderbysbirthday

查询结果截图显示

2.2连接查询:

(1)、查询全部学生的学号、姓名、性别、所在院系名称和专业名称

实现代码及查询结果截图:

查询分析器执行情况:

SQL语句及执行结果显示

selects_no,sname,sex,dept_name,spname

fromstudent,department,speciality

wherestudent.dno=department.dno

andstudent.spno=speciality.spno

查询结果截图显示

 

(2)查询选修了课程3(上课编号)的学生的学号、姓名、专业名称和这门课的成绩

实现代码及查询结果截图:

查询分析器执行情况:

SQL语句及执行结果显示

selectstudent.s_no,sname,student.spno,score

fromstudent,student_course,teacher_course

wherestudent.s_no=student_course.s_no

andteacher_o='3'

andstudent.class_no=teacher_course.class_no

查询结果截图显示

 

(3)、查询学生不及格的情况列出不及格学生的学号、姓名和不及格的课程名称。

实现代码及查询结果截图:

查询分析器执行情况:

SQL语句及执行结果显示

查询结果截图显示

 

2.3嵌套查询:

(1)、查询没有选修了课程1的学生,列出学生的学号和姓名。

实现代码及查询结果截图:

查询分析器执行情况:

SQL语句及执行结果显示

查询结果截图显示

 

 

(2)、查询每门课都是80分以上的学生的学号与姓名。

实现代码及查询结果截图:

查询分析器执行情况:

SQL语句及执行结果显示

查询结果截图显示

 

 

五、实验中出现的问题及解决方案

六、思考题

1、连接查询分哪几类?

各有什么特点?

2、进行连接查询时应注意哪些问题?

附:

(1)创建student表

字段名

代码

类型

约束

学号

s_no

char(8)

主键

姓名

sname

char(8)

非空

性别

sex

char

(2)

出生日期

sbirthday

Smalldatetime

学生所在院系编号

dno

char(6)

外键

专业代码

spno

char(8)

外键

班级编码

class_no

char(4)

(2)创建Course表

字段名

代码

类型

约束

课程编号

cno

char(10)

主键

课程名称

cname

char(20)

非空

专业代码

spno

char(8)

外键

课程类型编号

ctno

tinyint

理论学时

lecture

tinyint

实验学时

experiment

tinyint

开课学期

semester

tinyint

课程学分

credit

tinyint

(3)创建student_course表

字段名

代码

类型

约束

学号

s_no

char(8)

主键,与student表中s_no外键关联,级联删除

上课编号

tcid

smallint

主键

学生成绩

score

tinyint

(4)创建teacher表

字段名

代码

类型

约束

教师编号

t_no

char(8)

主键

教师姓名

t_name

char(8)

非空

性别

t_sex

char

(2)

出生日期

t_birthday

smalldatetime

教师所在院系编号

dno

char(6)

外键

职称

tech_title

char(10)

(5)创建系部表(department)

字段名

代码

类型

约束

院系编号

dno

char(6)

主键

院系名称

dept_name

char(20)

非空

院系负责人

header

char(8)

(6)创建专业信息表(speciality)

字段名

代码

类型

约束

专业代码

spno

char(8)

主键

院系编号

dno

char(6)

外键,非空

专业名称

spname

char(20)

非空

(7)创建teacher_course表

字段名

代码

类型

约束

上课编号

tcid

smallint

主键

教师编号

t_no

char(8)

外键

专业代码

spno

char(8)

外键

班级编码

class_no

char(4)

课程编号

cno

char(10)

非空,外键

学期

semester

Char(6)

学年

schoolyear

Char(10)

(8)创建班级表(class)

字段名

代码

类型

约束

专业代码

spno

char(8)

主键,与speciality表中spno外键关联,

班级编码

class_no

char(4)

主键,

班负责人

header

char(8)

 

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2