SQL数据库实验指导书.docx

上传人:b****6 文档编号:3646930 上传时间:2022-11-24 格式:DOCX 页数:13 大小:20.97KB
下载 相关 举报
SQL数据库实验指导书.docx_第1页
第1页 / 共13页
SQL数据库实验指导书.docx_第2页
第2页 / 共13页
SQL数据库实验指导书.docx_第3页
第3页 / 共13页
SQL数据库实验指导书.docx_第4页
第4页 / 共13页
SQL数据库实验指导书.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

SQL数据库实验指导书.docx

《SQL数据库实验指导书.docx》由会员分享,可在线阅读,更多相关《SQL数据库实验指导书.docx(13页珍藏版)》请在冰豆网上搜索。

SQL数据库实验指导书.docx

SQL数据库实验指导书

 

《数据库开发与应用》实验指导书

 

沈阳理工大学应用技术学院

2009年12月

 

目录

实验一数据库和表的操作1

实验二数据的操作6

实验三存储过程的操作9

实验四触发器的使用11

实验五数据库综合设计13

实验一数据库和表的操作

实验目的:

1、了解SQLSERVER数据库的逻辑结构和物理结构;

2、掌握SQLSERVER数据库的文件组成;

3、掌握SQLSERVER数据库中文件组的概念;

4、了解表的结构和特点;

5、了解SQLSERVER的基本数据类型;

6、学会使用结构化查询语句创建和管理数据库和表;

实验内容:

1、使用sql语句创建最简单的数据库;

2、使用sql语句创建带条件的数据库,要指定数据文件和日志文件的名称、大小、最大限制和文件增长速度;

3、为数据库改名;

4、向数据库中填加、删除一个数据文件;

5、向数据库中填加一个日志文件;

6、修改数据库文件的属性:

包括文件大小,最大限制,增长方式等;

7、删除数据库;

8、在数据库bookborrow中建立3个基本表,实现对表的管理。

具体实验内容:

1、使用sql语句建立最简单的数据库sqlcourse;

2、使用sql语句建立数据库school。

包含两个数据库文件和一个日志文件,其中主数据文件的逻辑名为“school_data”,初始大小为10MB,最大大小为500MB,设置文件自动增长,增长方式为10%;辅助数据文件的逻辑名为“school_data2”,初始大小为2MB,最大大小为30MB,设置文件自动增长,增长方式为5MB。

日志文件的所有限制默认。

3、为数据库sqlcourse更名为yangguang。

4、使用sql语句在数据库school中添加和删除一个数据文件。

(1)逻辑名、物理名、初始大小、最大大小自己设计,增长按照MB方式自动增长。

(2)删除数据文件“school_data2”。

5、使用sql语句在数据库school中添加一个日志文件。

(1)逻辑名、物理名、初始大小、最大大小自己设计,增长按照百分计数方式自动增长。

6、使用sql语句在数据库school中建立教师表t,学生表s,课程表c,选课表sc和授课表tc。

表1-1t(教师)表结构

字段名

字段类型

字段宽度

说明

tno

varchar

8

教师号(非空)

tname

varchar

10

教师姓名(非空)

tsex

varchar

4

性别

tage

smallint

2

年龄

tprof

varchar

10

职称

tsal

smallint

2

工资

tcomm

smallint

2

岗位津贴

tdept

varchar

20

系名

表1-2s(学生)表结构

字段名

字段类型

字段宽度

说明

sno

varchar

8

学号(非空)

sname

varchar

10

学生姓名(非空)

ssex

varchar

4

性别

sage

smallint

2

年龄

sdept

varchar

20

系名

表1-3c(课程)表结构

字段名

字段类型

字段宽度

说明

cno

varchar

8

课程号(非空)

cname

varchar

20

课程名(非空)

ct

smallint

2

课时数

表1-4sc(选课)表结构

字段名

字段类型

字段宽度

说明

sno

varchar

8

学号(非空)

cno

varchar

8

课程号(非空)

score

smallint

2

成绩

表1-5tc(授课)表结构

字段名

字段类型

字段宽度

说明

tno

varchar

8

教师号(非空)

cno

varchar

8

课程号(非空)

7、使用INSERTINTO语句插入数据

t表

tno

tname

tsex

tage

tprof

tsal

tcomm

tdept

t1

李力

47

教授

1800

3000

计算机

t2

王平

28

讲师

850

1200

信息

t3

刘伟

30

讲师

1000

1200

计算机

t4

张雪

51

教授

1900

3000

自动化

t5

张兰

39

副教授

1500

3000

信息

s表

sno

sname

ssex

sage

sdept

s1

赵亦

17

计算机

s2

钱尔

18

信息

s3

孙姗

20

信息

s4

李思

21

自动化

s5

周武

19

计算机

s6

吴丽

20

自动化

sc表

sno

cno

score

s1

c2

85

s1

c5

100

s2

c5

60

s2

c6

80

s2

c7

s3

c2

70

s3

c4

85

s4

c2

85

s4

c3

83

s5

c2

89

c表

cno

cname

ct

c1

程序设计

60

c2

微机原理

80

c3

数字逻辑

60

c4

数据结构

80

c5

数据库

60

c6

编译原理

60

c7

操作系统

60

tc表:

tno

cno

t1

c1

t2

c5

t4

c2

t5

c5

t3

c1

t3

c5

t2

c7

t4

c3

t5

c7

8、分别建立5个基本表的主码,建立学生表与选课表,课程表与选课表之间的关系;

9、限制选课表的成绩列输入的值在0到100之间。

10、设置性别的取值或者是‘男’或者是‘女’。

11、设置课程表中课程时数的初始值为0。

实验报告书写要求:

1、字迹工整,过程清晰。

2、方法与原理分析写本次实验所涉及的理论知识点。

3、实现过程写出创建和修改数据库和基本表的SQL语句。

4、结果分析写出修改后执行的结果,同时对实验过程中遇到的问题作适当分析。

5、实验后一周完成实验报告书写。

 

实验二数据的操作

(查询,修改和删除)

实验目的:

1、掌握指定列或全部列查询;

2、掌握按条件查询;

3、掌握对查询结果排序;

4、掌握使用聚集函数的查询;

5、掌握对查询结果分组;

6、掌握涉及一个以上数据表的查询;

7、掌握嵌套查询的方法,从而增强SQL的查询能力;

8、掌握使用UNION操作符将来自不同查询但结构相同的数据集合组合起来。

实验内容:

1、完成数据表的创建过程。

2、对于单个数据表实现多种不同条件的查询。

3、对于多个表之间实现连接查询,主要包括2种外连接和带有连接谓词的内连接。

4、实现嵌套查询操作,同时练习嵌套查询和连接查询之间的互相转换。

同时掌握自身连接的查询。

5、实现集合查询的操作,掌握不同集合操作符的优先级。

具体实验内容:

1、创建数据库表:

(使用实验一的数据表及其数据)

教师表:

T;

学生表:

S;

课程表:

C;

选课表:

SC;

授课表:

TC

2、查询操作:

(结合实验一的实验一的数据完成各种不同的查询)

2.1单表查询

⑴查询S表中全体学生的详细记录;

⑵查询所有学生的姓名及其出生年份;

⑶查询考试成绩不及格的学生学号、姓名;(连接)

⑷查询年龄在20-23岁之间的学生姓名、系名、年龄;

⑸查询姓李的学生的姓名、学号和性别;

⑹查询名字中第2个字为“明”字的男学生的姓名和系名;

⑺查询信息系、计算机系学生的姓名、系名,结果按系名升序,姓名降序排序;

⑻查询所有有课程号C2成绩的学生的学号、课程号和成绩,并按成绩降序排序;

⑼查询计算机系学生总人数;

⑽查询选修了微机原理课程的学生人数、平均成绩、最高成绩;(连接)

11查询各个课程号及相应的选课人数;

12查询选修了2门以上课程的学生学号、姓名和平均成绩;(连接)。

2.2连接查询

⑴查询所有选课学生的学号、姓名、选课名称及成绩;

⑵查询每门课程的课程号、任课教师姓名及其选课人数;

⑶查询所有比“刘伟”工资高的教师姓名、工资和刘伟的工资;

⑷查询同时选修了“程序设计”和“微机原理”的学生姓名、课程名;

⑸查询所有学生的学号、姓名、选课名称及成绩(没有选课的同学的选课信息显示为空)。

2.3嵌套查询

⑴查询与“刘伟”教师职称相同的教师号、姓名和职称;

⑵使用ANY谓词查询讲授课程号为C5的教师姓名;

⑶使用IN谓词查询讲授课程号为C5的教师姓名;

⑷使用ALL谓词查询其他系中比计算机系所有教师工资都高的教师的姓名、工资和所在系别。

2.4集合查询

⑴查询计算机系的学生姓名及年龄不大于19岁的学生姓名。

实验报告书写要求:

1、字迹工整,过程清晰。

2、方法与原理分析写本次实验所涉及的理论知识点。

3、实现过程写出查询数据表的SQL语句。

4、结果分析写出查询后执行的结果,同时对实验过程中遇到的问题作适当分析。

5、实验后一周完成实验报告书写。

 

实验三存储过程的操作

实验目的:

1通过实验掌握存储过程的概念、功能。

2掌握用户自定义存储过程的创建方法,包括不带参数的,带输入值参数的,带返回值参数的。

3掌握存储过程和过程语句的结合使用。

4掌握存储过程的删除的方法。

5掌握存储过程的执行的方法,包括没有参数的直接使用,带输入参数的使用方法,带输出参数的声明参数并赋值的方法。

实验内容:

1、创建并执行存储过程

(1)用SQL语句创建并执行一存储过程Prc_Qsinf:

通过学生学号来查询学生的姓名、年龄、系名。

其中默认学号是“S2”。

(2)执行存储过程Prc_Qsinf。

查询并显示出默认学号(即S2)和学号为S4学生的姓名和年龄。

(3)用SQL语句创建一存储过程Pro_Qscore:

通过学生姓名和课程名查询该学生该课程的成绩。

(4)执行存储过程Pro_Qscore。

查询并显示学生“李思”的“程序设计”课程的成绩。

2、修改存储过程

(1)用SQL修改存储过程Prc_Qsinf。

修改要求:

把定义中的变量sno_in长度修改为2字节;

sage_out变量类型改为tinyint。

(2)用SQL修改存储过程Prc_Qsinf。

存储过程的定义改为:

根据学号查询姓名、性别、系名。

设默认学号为“S1”。

3、删除存储过程

(1)用SQL删除存储过程Pro_Qscore。

实验报告书写要求:

1、字迹工整,过程清晰。

2、方法与原理分析写本次实验所涉及的理论知识点。

3、实现过程写出创建和修改数据库和基本表的SQL语句。

4、结果分析写出修改后执行的结果,同时对实验过程中遇到的问题作适当分析。

5、实验后一周完成实验报告书写。

 

实验四触发器的使用

实验目的:

1、掌握高级查询的使用方法;

2、学习触发器定义的方法;

3、分别练习使用插入、修改、删除触发器;

4、重点掌握使用触发器实现数据表之间的关联。

5、掌握使用触发器实现级联更新和级联删除操作。

6、掌握判断不同触发器类型的方法。

实验内容:

1、创建数据表。

2、插入数据到数据表。

3、创建判断是否执行了对数据表有影响的触发器。

4、创建插入类型的触发器。

5、创建更新类型的触发器。

6、创建删除类型的触发器。

具体实验内容:

1、创建数据表products如下:

表5-1products

字段名

字段类型

字段宽度

说明

Productid

int

4

产品编号

Ordered

int

4

订单编号

quantity

int

4

数量

2、自行选择5条数据插入到表中。

3、实验题目:

(1)新建一个触发器tr1:

只要向该表中插入数据,就输出“成功录入”信息;

(2)创建一个插入、更新类型的触发器tr2:

实现只要表中的数据有改变,就用select语句显示查询结果;

(3)创建一个删除类型的触发器tr3:

建立一个与products表结构一样的表p1,当删除表products中的记录时,自动将删除掉的记录存放到p1表中。

(4)应用实验一的数据实现级联删除操作,创建触发器tr4:

删除学生表的一个学生的信息,同时删除该学生的选课信息。

(5)应用实验一的数据实现级联更新操作,创建触发器t5:

更新一门课程的课程号,同时更新选课表和授课表内的该课程的课程号。

实验报告书写要求:

1、字迹工整,过程清晰。

2、方法与原理分析写本次实验所涉及的理论知识点。

3、实现过程写出创建触发器的SQL语句。

4、结果分析写出触发器引发后执行的结果,同时对实验过程中遇到的问题作适当分析。

5、实验后一周完成实验报告书写。

 

实验五数据库综合设计

实验目的:

1、掌握SQL语言在开发工具中的使用;

2、通过完成从用户需求分析、数据库设计到上机编程、调试和应用等全过程,进一步掌握查询修改等SQL基本语法的相关内容。

3、本次实验为综合设计性实验,按照功能自行设计数据库内表,存储过程和触发器。

实验内容:

1、完成一个系统的设计,同时实现不同功能要求。

2、要求实现至少2个约束。

3、要求包括触发器,存储过程和视图的操作。

具体实验内容:

1、企业人事管理系统

功能要求:

人事管理系统应能实现用户的多级管理,并包含数据录入、数据校验、数据修改、数据浏览和各种模糊查询。

2、学校教材管理系统

功能要求:

本系统能对学校所有班级的教材进行征订,对教材的入库、出库进行管理,能进行各种条件的查询,还应具有教材库预警机制(教材库存不够用或教材征订过剩,都能给予提示)。

3、高校学生成绩管理系统

功能要求:

学生成绩管理使教学管理的一个重要环节,本系统能够进行学生成绩登记、成绩的更正、成绩的查询、成绩的汇总及排序,对已毕业学生成绩能存入历史库中,具有良好实用性。

 

4、图书管理系统

功能要求:

本系统能实现对图书入库、出库的管理。

用户可以通过终端查询到在库的图书,并且如果图书已借出,可以查询到是谁借出的,在什么时候借的。

5、客房管理系统

功能要求:

本系统能对一个宾馆的客房进行管理,用户可以预约、登记、注销客房。

对于已预约的客房,不可以再预约或登记,一旦客户入住某客房,可以在此系统中查询到该客户的信息。

6、酒店餐饮管理

功能要求:

用户可以通过本系统点餐,可以通过任何一个终端,查询出该菜是哪一桌客户的。

最后,客户可以通过终端查询出自己用餐的详单并结帐。

7、工资管理系统

功能要求:

财务可以通过该系统分项录入员工的工资,并且可以把工资与出勤情况一致起来,只要给出出勤表,系统可以自动生成员工的工资。

员工可以在客户端根据自己的用户名和密码查询到自己的工资。

实验报告书写要求:

1、字迹工整,过程清晰。

2、方法与原理分析写本次实验所涉及的理论知识点。

3、实现过程写出相应关键的SQL语句。

4、结果分析写出部分执行的结果,同时对实验过程中遇到的问题作适当分析。

5、实验后一周完成实验报告书写。

6、本实验内容请各位同学按照自己选择的题目,写出类似的需求内容到实验内容栏目。

具体实验过程请挑选重要的内容写出来,建议写出创建的存储过程和触发器。

 

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

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1