数据库应用实训.docx

上传人:b****8 文档编号:29318883 上传时间:2023-07-22 格式:DOCX 页数:21 大小:66.31KB
下载 相关 举报
数据库应用实训.docx_第1页
第1页 / 共21页
数据库应用实训.docx_第2页
第2页 / 共21页
数据库应用实训.docx_第3页
第3页 / 共21页
数据库应用实训.docx_第4页
第4页 / 共21页
数据库应用实训.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

数据库应用实训.docx

《数据库应用实训.docx》由会员分享,可在线阅读,更多相关《数据库应用实训.docx(21页珍藏版)》请在冰豆网上搜索。

数据库应用实训.docx

数据库应用实训

《数据库应用实训》任务书

一、实训目的

1.培养学生运用所学开发语言和大型数据库(SQLServer2005)的理论知识和技能,分析解决计算机的实际应用问题的能力;

2.培养学生调查研究,查阅技术文献,资料;

3. 通过实训,掌握数据库系统综合开发的方法与技能;

二、实训对象

信息管理与信息系统(本科)1-2班。

要求参加实训的学生具有以下几方面的知识与技能:

1、能够较熟练地使用SQLServer2005开发环境。

2、懂得基本的数据库设计知识。

3、掌握常用的SQL语句(创建,删除,查询等),以及简单的存储过程的使用。

三、实训内容

本次实训所包含的主要内容和学生本次实训要完成的主要任务:

1.用SQLServer2005实现一个管理信息系统的数据库设计

内容包括:

(1)简单的需求分析

(2)数据库的概念设计和逻辑设计(重点)

(3)数据库和数据表的创建

(4)数据查询

(5)数据库的备份

(6)数据的导入与导出

2.编写实训报告,写出实训完成的过程。

四、实训要求

通过本次实训,学生应达到以下几方面的要求:

1、素质要求

以积极认真的态度对待本次实训,遵章守纪,团结协作。

善于发现问题、分析问题,解决问题,努力培养自己的独立工作能力。

2、知识要求

熟练掌握数据库标准语言SQL中常用语句的功能、用法;可以通过在存储过程中设置流程控制语句,来完成较复杂的数据处理功能。

3、能力要求

学生应具有一定的项目分析能力、任务分解能力、组织实施能力。

学生应具有一定的查阅教材、各类相关资料及工具书的能力,进而养成自我学习的习惯。

五、实训进度表

本次实训课程为时一周,拟采用教师指导与学生上机实训同步进行的方式,具体进度安排如下:

时间

实训内容

备注

周一

1)明确课题任务与涉及的要求

2)完成指定复习内容(见实训具体步骤1)

周二

1) 确定所选课题(可从学校图书管理系统,人事管理系统,仓库管理系统中选取一个来实现),进行简单的需求分析,并开始写实训报告

2)进行概念结构设计,画出所有的E-R图

周三

1)进行逻辑结构设计(把概念结构中E-R图中的实体,关系转换为关系数据库中的关系模式和关系)

2) 环境设置,建立数据库,并创建逻辑结构中的所有关系

周四

1)实践数据导入与导出,在数据库中添加数据,完成数据库,并添加完整性约束

2)完善系统,尽量添加触发器,存储过程等所学内容

3)完成10个难度适中的查询题目,并给出答案

周五

完善实训报告,并提交作业

六、实训具体步骤

1实训开始首先复习下列指定内容:

实验一 SQLServer常用管理工具的使用

实验目的

理解服务的概念,掌握SQLServer服务的启动、暂停和停止。

熟悉SQLServer数据库结构,掌握企业管理器的基本操作。

理解查询分析器的作用,掌握查询分析器的常用用法。

实验二创建数据库

实验目的:

掌握使用企业管理器创建SQLServer数据库的方法。

掌握使用SQL语言创建SQLServer数据库的方法。

掌握附加和分离数据库的方法。

实验内容:

(本次实验所创建数据库存放位置都为“F:

\SQLServer”)

1.用企业管理器创建数据库

实验内容1:

使用SQLServer企业管理器创建一个数据库,具体要求如下:

数据库名称为Test1。

主要数据文件:

逻辑文件名为Test1Data1,物理文件名为Test1Data1.mdf,初始容量为1MB,最大容量为10MB,递增量为1MB。

次要数据文件:

逻辑文件名为Test1Data2,物理文件名为Test1Data2.ndf,初始容量为1MB,最大容量为10MB,递增量为1MB。

事务日志文件:

逻辑文件名为Test1Log1,物理文件名为Test1Log1.ldf,初始容量为1MB,大容量为5MB,递增量为512KB。

实验内容2:

创建用于员工考勤的数据库,数据库名为YGKQ,初始大小为10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。

数据库的逻辑文件名和物理文件名均采用默认值。

2.用SQL语言创建数据库

实验内容3:

使用查询分析器新建一个数据库,名称为“图书”,其主要数据文件大小为2M,最大文件大小为10M,每次增长2M;次要数据文件大小为1M;日志文件大小为1M;三个文件的文件名自定,上述没有说明的选项都采用默认值。

提示:

在查询分析器中输入如下SQL脚本:

CREATEDATABASE图书ON

(NAME=data1,

FILENAME=‘d:

\SQLServer\data1.mdf',

SIZE=2,

MAXSIZE=10,

FILEGROWTH=2),

(NAME=data2,

FILENAME=‘d:

\SQLServer\data2.ndf',

SIZE=1)

LOGON(NAME=log,

FILENAME=‘d:

\SQLServer\log.ldf',

SIZE=1)

实验内容4:

用T-SQL语句创建一个名为BOOK的数据库,它由5MB的主数据文件、2MB的次数据文件和1MB的日志文件组成。

并且主数据文件以2MB的增长速度增长,其最大容量为15MB;次数据文件以10%的增长速度增长,其最大容量为10MB;事务日志文件以1MB增长速度增长,其最大日志文件大小为10MB,存放位置都为“D:

\”,上述没有说明的选项都采用默认值。

提示:

在查询分析器中输入如下SQL脚本:

CREATEDATABASEBOOKOn

(name=book1,filename=‘d:

\book1.mdf’,size=5,maxsize=15,filegrowth=2),

(name=book2,filename‘d:

\book2.ndf’,size=5,maxsize=10,filegrowth=10%)

logon

(name=book_log,filename=’d:

\book_log.ldf’,size=1,maxsize=10,filegrowth=1)

4.数据库的分离与附加

实验内容5:

将“图书”数据库与服务器分离。

实验内容6:

将已分离的“图书”数据库附加到服务器上。

实验三数据库的管理

实验目的:

掌握使用企业管理器或存储过程查看SQL数据库属性的方法。

掌握附加和分离数据库的方法。

熟悉数据库的收缩。

(简单了解)

熟悉数据库的更名。

掌握数据库的删除。

掌握使用企业管理器或sp_dboption存储过程修改数据库选项的方法。

实验内容:

1.查看和修改数据库属性

可以使用企业管理器或SQL语言来查看或修改数据库的属性。

使用企业管理器的方法是右击数据库名称,在快捷菜单中选择“属性”,然后数据库属性对话框中就可以查看或修改数据库的属性。

也可以使用sp_helpdb、sp_spaceused、sp_helpfile和sp_helpfilegroup等存储过程查看和数据库有关的属性。

修改数据库属性可以使用ALTERDATABASE命令。

实验内容1:

使用sp_helpdb存储过程查看student数据库的信息,然后企业管理器将student数据库的事务日志文件的增长大小改为按1MB字节增长,再使用sp_helpdb存储过程查看student数据库的信息。

实验内容2:

使用ALTERDATABASE命令为student数据库添加一个新的数据文件,文件逻辑名为student_data3,初始大小为2MB,增长值为1MB,其他属性默认。

2.数据库的分离与附加

可以使用企业管理器或SQL语言对数据库进行分离和附加的操作。

分离数据库的存储过程是sp_detach_db,附加数据库的存储过程是sp_attach_db。

实验内容3:

使用企业管理器将student数据库分离,然后再使用sp_attach_db存储过程将student数据库附加进来。

3.数据库的收缩

数据库收缩可以缩小数据库的空闲空间。

可以使用企业管理器或SQL语言对数据库进行收缩工作。

收缩数据库使用的SQL语言是DBCCSHRINKDATABASE命令。

也可以使用ALTERDATABASE的SET子句或sp_dboption将数据库设为自动收缩。

实验内容4:

将student数据库设为自动收缩。

提示:

在查询分析器中输入如下SQL脚本:

CREATEDATABASEBOOKOn

(name=book1,filename=‘d:

\book1.mdf’,size=5,maxsize=15,filegrowth=2),

(name=book2,filename‘d:

\book2.ndf’,size=5,maxsize=10,filegrowth=10%)

logon

4.数据库的更名

更改数据库的名称应使用sp_renamedb存储过程。

实验内容5:

将student数据库改名为stu。

5.数据库选项的配置

可以使用ALTERDATABASE语句的SET子句、sp_dboption系统存储过程,或者在某些情况下使用SQLServer企业管理器设置数据库选项。

实验内容6:

使用企业管理器将stu数据库设为只读。

实验内容7:

使用sp_dboption存储过程取消stu数据库的只读设置。

6.数据库的删除

删除数据库可以使用企业管理器或DROPDATABASE命令。

实验内容8:

使用DROPDATABASE命令将stu数据库删除。

实验四表的操作

实验目的:

掌握使用企业管理器和T-SQL语句创建表。

掌握使用企业管理器和T-SQL语句修改表的结构。

掌握使用企业管理器和T-SQL语句实现对数据的操作。

实验内容:

1.使用企业管理器按下表结构创建表

表名:

Course

属性名称

属性描述

数据类型

字节数

空否

备注

CourseID

课程号

int

4

主键,标识列

CourseName

课程名称

varchar

20

Category

课程类别

char

8

Period

学时数

smallint

2

Credit

学分

tinyint

1

2.使用T-SQL语句按下表结构创建表

表名:

Student

属性名称

属性描述

数据类型

字节数

空否

备注

StudentNum

学号

char

9

主键

StudentName

姓名

varchar

8

Sex

性别

bit

1

Birthday

出生日期

smalldatetime

4

ClassID

班级号

int

4

3.使用企业管理器修改表的结构

使用企业管理器将第1题所建立的Course表中的Category字段修改为varchar(20),为Period和Credit字段默认值为0。

提示:

在查询分析器中输入如下SQL脚本:

CREATEDATABASEBOOKOn

(name=book1,filename=‘d:

\book1.mdf’,size=5,maxsize=15,filegrowth=2),

(name=book2,filename‘d:

\book2.ndf’,size=5,maxsize=10,filegrowth=10%)

logon

4.使用T-SQL语句修改表的结构

使用T-SQL语句为Student表添加Nation(民族)字段和Stature(身高)字段,字段数据类型自定。

5.使用企业管理器实现对数据的操作

使用企业管理器按下表向Course添加数据。

课程号

课程名称

课程类别

学时数

学分

1

哲学

公共

36

2

2

实用英语

(1)

公共

72

3

3

实用英语

(2)

公共

72

3

4

计算机应用基础

公共

102

5

5

C语言程序设计

专业基础

102

5

6

关系数据库技术基础

专业基础

102

5

6.使用T-SQL语句实现对数据的操作

(1)使用INSERT语句向Course表中添加记录:

(计算机网络,专业基础,72,4)

(2)使用UPDATE语句将Course表中的“计算机应用基础”课的学时数修改为106。

(3)使用DELETE语句将Course表中的公共课全部删除。

实验五表的完整性

实验目的:

理解数据完整性的概念和SQLServer实现数据完整性的机制。

掌握使用企业管理器和T-SQL语句定义数据完整性,重点掌握主键、外键、检查、唯一和默认值等约束的定义和使用。

实验内容:

1.使用T-SQL语句按下表结构创建表(在创建表时定义约束)

表名:

Grade

属性名称

属性描述

数据类型

字节数

空否

约束

备注

StudentNum

学号

char

9

主键

CourseID

课程号

int

4

主键

DailyGrade

平时成绩

decimal

5,1

不小于0且不大于20

PracticeGrade

实践成绩

decimal

5,1

不小于0且不大于30

TestGrade

期末成绩

decimal

5,1

不小于0且不大于50

Grade

总评

由平时成绩(20%)、实践成绩(30%)和期末成绩(50%)计算而来

2.使用T-SQL语句修改表的结构

(1)为班级表ClassInfo添加入学时间EnrollDate字段,并定义入学时间不小于2001年9月1日。

(2)为班级表ClassInfo定义主键约束,定义班级号ClassID为主键。

3.使用企业管理器定义约束

(1)为学生表Student定义外键约束,使ClassID参照班级表ClassInfo中的ClassID,并为约束设置级联更新。

(2)为班级表ClassInfo的ClassName定义唯一约束。

4.默认值对象的创建与使用

(1)使用T-SQL语句创建名为DF_GRADE的默认值对象,值为0。

(2)使用企业管理器将DF_GRADE绑定到成绩表Grade中的DailyGrade、PracticeGrade和TestGrade字段上。

(3)使用sp_unbindefault存储过程将DF_GRADE从DailyGrade、PracticeGrade和TestGrade字段上解除。

(4)删除DF_GRADE默认值对象。

实验六简单查询

实验目的:

熟悉SELECT语句的基本语法,掌握各子句的基本用法。

能使用SELECT语句进行简单查询。

实验内容:

1、从教师数据表Teacher查询出所有教师的教师编号,姓名,性别和出生日期,并使用中文列标题。

2、查询学生表Student的姓名StudentName中所有姓‘王’的学生的基本信息。

3、查询学生表Student的姓‘赵’、‘钱’、‘孙’、‘李’的学生的基本信息。

4、查询学号StudentNum是‘0601002’或‘0601003’或‘0601005’或‘0601027’的学生的基本信息。

5、从成绩表Grade中查询所有成绩不及格学生的学号和对应课程号。

6、查询出学习20号课程的成绩前10名同学的学号和总评。

实验七高级查询

实验目的:

1.掌握多表查询、分组查询、联合查询和嵌套查询的使用。

2.掌握使用企业管理器进行查询的方法。

实验内容:

1、查询成绩表Grade中每位学生的学号StudentNum和各科的总成绩,并按总成绩降序排列。

2、查询专业为‘计算机应用’的学生的学号、姓名和专业代码(用两种方法实现)。

3、查找课程表中没有学生选修的课程的课程号和课程名称(用两种方法实现)。

4、查询课程名称中含有‘数据’的课程的课程号、课程名称以及学习该课程的学生的学号和成绩。

5、查询成绩在60~80之间,或者课程号为‘03’的学生的学号、姓名、性别和班级。

实验八视图的使用

实验目的:

理解视图的基本概念,掌握视图的创建、修改和删除。

掌握对视图进行查询和更新。

实验内容:

1、使用企业管理器创建一个名为“view_1”的视图,内容是显示学生表Student中计用061班的学生的学号、姓名、性别和专业名称。

2、使用查询分析器创建一个名为“view_2”的视图,内容是显示学生表中没有选修课程的学生的学号、姓名和班级。

3、使用查询分析器修改名为“view_1”的视图,内容修改为显示学生表中男生的学号、姓名、性别和班级,并且以后所有对该视图的更新操作都必须符合所设定的条件。

4、查询视图“view_1”中班级为‘通信051’的所有信息。

5、向视图“view_1”中的所有字段插入一条记录。

实验九索引

实验目的:

理解索引的概念,掌握索引的创建。

理解索引的优缺点,掌握索引的管理和维护。

实验内容:

使用企业管理器为学生表Student创建一个以StudentNum为索引关键字的惟一聚簇索引。

将上一步所建立的索引名称修改为new_index。

将前述所建立的new_index索引删除。

使用T-SQL语句为教师表Teacher创建一个名为Teacher_Index的惟一非聚簇索引,索引关键字为教师编号,升序,填充因子为80%。

使用T-SQL语句为学生表Student创建一个名为Student_Index的惟一非聚簇复合索引,索引关键字为学号,升序,填充因子为50%。

使用T-SQL语句将教师表中的Teacher_Index删除。

实验十存储过程

实验目的:

理解存储过程的概念,掌握各种存储过程的创建方法。

掌握查看、修改和删除存储过程的方法。

掌握执行存储过程的方法。

实验内容:

1、创建一个名为“proc_1”的存储过程,用于查看学生表的所有信息。

然后调用该存储过程。

2、创建一个名为“proc_2”的存储过程,用于向学生表的所有字段添加一条记录,记录内容由调用时决定。

然后调用该存储过程。

3、创建一个名为“proc_3”的存储过程,用于删除学生表中指定学号的记录,具体学号由调用时决定。

然后调用该存储过程。

4、修改存储过程“proc_3”,用于查询不小于指定成绩的学生的基本信息,具体成绩由调用时决定。

5、创建一个名为“proc_4”的存储过程,用于求一个3位整数的反序数。

例如123的反序数为321。

实验十一触发器

实验目的:

理解触发器的概念与类型。

掌握创建、修改和删除触发器的方法。

掌握使用触发器维护数据完整性的方法。

实验内容:

1、创建一个名为“trig_1”的触发器,当向学生表添加记录时,该触发器自动显示学生表的所有信息。

2、创建一个名为“trig_2”的触发器,当试图向学生表添加、修改或删除记录时,该触发器自动显示如下信息:

“对不起,你无权进行更新操作!

”。

3、修改“trig_2”的触发器,当向学生表修改记录时,该触发器自动显示修改前和修改后的记录。

4、创建一个名为“trig_3”的触发器,当向学生表删除记录时,该触发器自动删除成绩表中与之相关的所有记录。

5、创建一个名为“trig_4”的触发器,当向成绩表添加记录时,该触发器自动显示与该记录相关的学生的学号、姓名和班级。

(本题要求创建之前先判断该触发器是否存在)

实验十二数据库的备份与恢复(此部分了解即可)

实验目的:

理解备份的基本概念,掌握各种备份数据库的方法。

掌握如何从备份中恢复数据库。

实验内容:

1、使用企业管理器创建一个名为“stubak”的备份设备(文件路径及文件名自定),然后把“学生信息”数据库完全备份到该备份设备中。

备份完毕后使用备份对该数据库进行恢复。

2、使用企业管理器在以上数据库完全备份的基础上对该数据库进行差异备份,并且追加到上述备份设备中。

然后使用备份对该数据库进行恢复。

3、使用T-SQL语言创建一个名为“pubsbak”的备份设备,该设备在硬盘中所对应的完整文件名为“D:

\SQL\pubs.bak”。

4、使用T-SQL语言把“NorthWind”数据库备份到“D:

\SQL\north.bak”文件中。

5、使用T-SQL语言把上题的备份恢复到“NorthWind”数据库。

6、把xueji数据库中的student和course转换到Excel数据库中。

2按照数据库设计的步骤进行数据库的设计和实训报告的撰写:

(实例如下:

1需求描述

以前超市大多数管理员主要使用传统的手工记账工具,经常要翻阅各种大量的台账,运用计算器等辅助工具进行计算、统计、制作报表。

采用这种工作方式工作量大、效率低、易出错、准确性差、及时性差,而且有很多报表需要存档,查找繁琐。

同时,这种方式提供的信息量不够大,且比较单一,不能满足现代管理工作对大量数据和信息进行分析的需求。

本系统在上述背景下,建立一个针对超市管理的小型网络平台,本系统具有速度快、精度高、存储信息量大的特点,能够提高管理人员的工作效率,降低成本和管理费用,使管理人员从大量的繁琐的手工劳动中解脱出来。

还可以对数据和信息进行规范化处理,从而实现了信息资源的有效利用和学校内部数据信息的共享,实现网络化管理和电子管理。

2数据库概念设计

分析前面的系统要求,需要一个表来储存商品信息,使系统能够接受超市进货,销售时输入的各项数据,以实现数据录入、查询或统计商品数量信息等功能。

商品信息表是本系统的第一个实体。

为了实现查询和统计商品的销售情况和进货情况,必须有一个表来记录以上信息。

进货单为第二个实体,销售明细为第三个实体。

进货单为第四个实体。

3实体属性列表如下:

实体

属性

进货单

进货ID

货商ID

商品ID

商品名

进货单价

进货数量

商品信息

商品号

商品名

类别

计价单位

零售单价

库存量

最低库存

最高库存

货商信息

联系人

商品名

货商ID

地址

销售明细

单价

商品编号

销售数量

折扣

金额

4数据库逻辑结构设计

商品(商品ID,商品名,类别,计价单位,零售单价,最低库存,最高库存,库存量)

货商(括货商ID,货商名,联系人,地址)

进货(进货ID,货商ID,商品ID,商品名,进货单价,进货数量)

销售明细(单价,商品编号,销售数量,折扣,金额)

5商品信息表格

表中列名

数据类型

可否为空

说明

commodityID

char

notnull

商品ID(主键)

c_name

char

notnull

商品名

category_name

char

notnull

类别

unit

char

null

计价单位

saleprice

numeric

notnull

零售单价

mimstor

int

null

最低库存

maxstor

int

null

最高库存

storageAmount

int

n

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

当前位置:首页 > 表格模板 > 书信模板

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

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