北邮大三数据库实验六数据查询分析实验

北邮大三数据库实验六数据查询分析实验
北邮大三数据库实验六数据查询分析实验

北邮大三数据库实验六数据查询分析实验

————————————————————————————————作者:————————————————————————————————日期:

?

实验六数据查询分析实验

实验目的

通过对不同情况下查询语句的执行分析,巩固和加深对查询和查询优化相关理论知识的理解,提高优化数据库系统的实践能力,熟悉了解Sybase中查询分析器的使用,并进一步提高编写复杂查询的SQL程序的能力。

实验内容

1.索引对查询的影响

(1)对结果集只有一个元组的查询分三种情况进行执行(必如查询一个具体学生的信息): ?不建立索引,(学号上)建立非聚集索引,(学号上)建立聚集索引。

建立聚集索引:

createclustered indexstudent

on student(student_id)

go

建立非聚集索引:

create nonclusteredindexstudent_index

on student(student_id)

go

用查询分析器的执行步骤和结果对执行进行分析比较。

select*from student

where student_id='30201'

不建立索引

建立聚集索引

建立非聚集索引

(2)对结果集中有多个元组的查询(例如查看某门成绩的成绩表)分类似(1)的三种情况进行执行比较。

select*from student

wherestudent_id>'30401'

不建立索引:

建立聚集索引:

建立非聚集索引:

(3)对查询条件为一个连续的范围的查询(例如查看学号在某个范围内的学生的选课情况)分类似(1)的三种情况进行执行比较,注意系统处理的选择。

select*fromstudent

where student_idbetween'31201'and'31415'

不建立索引:

建立聚集索引:

建立非聚集索引:

(4)索引代价。在有索引和无索引的情况下插入数据(例如在选课情况表SC 上插入数据),比较插入的执行效率。

insert intostudentvalues

('31710','张攀','男','1993-1-1 00:00:00','计算机','3146')

delete from student where student_id='31710'

无索引:

建立聚集索引:

建立非聚集索引:

2、对相同查询功能不同查询语句的执行比较分析(1)groupby

select avg(score)

fromsc

group bycourse_id

having course_id='C01'

selectavg(score)

from sc

where course_id='C01'

比较其查询效率可知,没有group by的查询时间比较短,查询效率较高

(2)

select student_id,student_name,birthday

from student s1

where birthday=

(select max(birthday)

from student s2

where s1.department= s2.department)

另一个:

select department,max(birthday)as maxAge into tmp from student

groupby department;

select student_id,student_name,birthday

fromstudent,tmp

where student.birthday =tmp.maxAgeand tmp.department=student.department

drop table tmp

查询结果来看,重写的执行时间要快一些,但相差不多,如果数据库比较大的话,执行效果也许更明显

(3)对下面两个查询进行比较

select student_name,birthday

fromstudent

wheredepartment!='电信'and birthday>all

(select birthday

from student

where department ='电信')

另:

select student_name,birthday

from student

wheredepartment!='电信'and birthday>

(selectmax(birthday)

from student

where department='电信')

3、查询优化

除了建立适当索引,对SQL 语句重写外,还有其他手段来进行查询调优,例如调整缓冲区大小,事先建立视图等。设计实现下列查询,使之运行效率最高。

写出你的查询形式,以及调优过程;并说明最优情况下的运行时间。

(1)查找选修了每一门课的学生。

方法一:

with student1(num,account)as

(

select distinct student_id,count(course_id)

from sc

group by student_id

)

select student_name

from student1,student

where student1.account>=5and student1.num=student.stude nt_id

方法二:

select student_name

from student

where not exists

select*

?from course

where notexists

?(

?select*

?fromsc

wheresc.student_id=student.student_idand

course.course_id=sc.course_id )

)

尝试了两种方法,相比较而言,第二种方法的执行速度更快。

(2)查找至少选修了课程数据库原理和操作系统的学生的学号。

方法一:

(select student_id

fromstudentview

where course_name='操作系统')

intersect

(select student_id

from studentview

wherecourse_name='数据库原理')

方法二:

(selectstudent_id

fromsc,course

where course.course_name='操作系统'and sc.course_id=cours e.course_id)

intersect

(select student_id

from sc,course

where course.course_name='数据库原理'and sc.course_id=course.course_id)

相比较而言不使用视图的方法查询速度较快

实验总结:

1、本次实验遇到的第一个问题就是如何建立索引的问题,在之前实验的基础上

开始做,发现设置了主键之后,数据库会默认以主键为搜索码建立聚集索引,而且无法删除索引也不好更改,所以只好重新建表格进行实验,自己来设置聚集索引或非聚集索引

2、实验遇到的第二个问题是在进行第二步实验的时候,原表格中没有age这一

属性,只有birthday这一属性,所以把age全部改为birthday进行实验。

3、实验的第三部分有点难度,想到了一种方法之后就很难再用另一种方法把它

表示出来,参考了网上的一些资料,集思广益完成了查询优化的设计

天津理工大学计算机专业数据库实验二

实验报告 学院(系)名称:计算机与通信工程学院 姓名范学号2009 专业计算机科学与技术 班级中加4班实验项目数据库控制与编程 课程名称数据库系统概论课程代码 实验时间2011年11月29日实验地点主校区7—219 批改意见 成绩 教师签 字: 一.实验目的 以一种开发环境为例,使学生初步掌握通过编程的方式对数据库进行操作,为进行数据库课程设计做准备。 二.实验工具软硬件环境 编写访问数据库的应用程序来对数据库进行各种数据操作,编程工具由导师指定,学生可以使用指导老师指定的工具,也可自己选择编程工具。 软件环境:Windows 2000MS SQL Server 硬件环境:P4 2.4GHz 256内存 三.实验内容和要求 所有的SQL操作均在自己建立的TEMP数据库里进行,根据以下要求认真填写实验报告,并且提交源程序,保证可正确编译运行。使用SQL对数据进行完整性控制,用实验验证:当操作违反了完整性约束条件的时候,系统是如何处理的。熟悉存储过程的建立及使用,熟悉带输入参数和输出参数的存储过程。 I.使用SQL对数据进行完整性控制,用实验验证:当操作违反了完整性约束条件的时候,系统是如何处理的。 II.熟悉存储过程的建立及使用,熟悉带输入参数和输出参数的存储过程。 a)查询学生表中的所有学生,并实现调用。 b)修改学号为@sno学生的姓名,性别,年龄,系别,并实现调用。 c)向学生表中插入学生,并实现调用。 d)查询姓名为@sname选修的数据库课程的成绩,并实现调用。 e)查询选修了课程名为@cname并且成绩高于该门课程平均分的学生学号和成绩,并实现调用。III.利用指定的编程语言完成一个简单程序,要求具有对数据的增加、修改和删除操作;基于一个给定的java应用程序,熟悉掌握建立ODBC和利用ODBC来凝结数据库的编程方法,建立一个应用程序,具有向学生、课程、选课表增加修改删除记录的功能,选取其中一个功能用存储过程实现。需要接取程序运行界面。 四. 实验步骤

小型数据库实验设计报告

MK超市数据库设计实验报告 课程名称数据库系统原理成绩评定 实验项目名称数据库设计指导教师朱蔚恒 实验项目编号实验四实验项目类型设计性 学生姓名,学号郭美岑2012050754 梁蕴嘉2012050725 学院公共管理应急管理学院系应急管理专业应急管理

一背景 最初的时候,超市管理由人力完成,但是超市的规模越来越大的时候,再以人力管理可能会造成数据缺失冗余等各种各样的问题,而且人力工作效率低。因此用数据库进行管理可以把数据集中、统一、规划,实现科技管理。本数据库主要作用是在一个小超市中,进行对员工档案。库存商品的管理以及销售管理。这个数据库提供的是信息咨询信息检索,信息储存的多项功能。可以实现多项功能。 二实验目的 1学习数据库的我们不仅是要了解数据库的基本知识和简单操作,而且要能掌握数据库设计的方法和步骤,而且能自己动手设计出一个能够付诸于实际的数据库,能够为企业或者是小团体带来方便。同时数据库设计也能考察我们对数据库的实际应用能力。 三实验步骤 1. 需求分析 2. 概念模型设计(E-R图) 3. 逻辑结构设计 4. 物理结构分析 5. 将SQL语言输入数据库 6. 数据库的实施,包括加载数据库和调试运行程序 步骤一: 需求分析: 主要包括员工档案管理、库存商品管理、销售设计程序,厂商信息员工档案管理:包括员工的基本个人信息(编号姓名性别年龄电话) 库存商品信息:包括进货和剩余货物的详细信息,易于查找库存量 销售设计程序:包括每次售出商品的详细信息 厂商信息:能够查找到每个货物的厂家。查询商品的基本信息(编号名称地址电话号联系人) 商品信息:包括商品编号,金额,数量等等 具体的功能有:1.输入信息的功能 (1)输入商品的信息:包括编号,名称,数量,进货价,和卖出价格 (2)需要输入员工的信息:包括姓名,性别,年龄,电话号码等 (3)需要输入入库记录信息:包括商品编号,商品名称,商品类别等 2.具有信息储存的功能 3.具有信息浏览的功能 4.具有信息查询的功能 6.具有系统维护功能 步骤二:

实验4数据库的简单查询和连接查询实验

实验4 数据库的简单查询和连接查询实验 1、实验目的 本实验的目的是使学生掌握SQL Server查询分析器的使用方法,加深对SQL和SQL语言的查询语句的理解。熟练掌握简单表的数据查询、数据排序和数据连接查询的操作方法。 2、实验时数2学时 3、实验内容 该实验在上一个实验的基础上进行 简单查询操作 1、求数学系(ma)学生的学号和姓名 select Sno,Sname from Student where Sdept='ma' 2、求选修了课程的学生学号 select Sno srom SC 3、求选修课程号为‘1’的学生号和成绩,并要求对查询结果按成绩的降序排列,如果成绩相同按学 号的升序排列。 select Sno,Grade from SC where Cno='1' order by Grade DESC ,Sno ASC 4、求选修课程号为‘1’且成绩在80~90之间的学生学号和成绩,并成绩乘以输出。 select Sno ,Grade* from SC where Grade>=80 and Grade<=90 5、求数学系(ma)或计算机系(cs)姓张的学生的信息。 select * from Student where Sdept in('ma' ,'cs' ) and Sname='张*' 6、求缺少了成绩的学生的学号和课程号 select Sno ,Cno from SC where Grade=0 or Grade=NULL 连接查询操作 7、查询每个学生的情况以及他所选修的课程 select * from Student ,Course 8、求学生的学号、姓名、选修的课程及成绩 select ,Sname,Cname,Grade from Student,SC,Course where = and = 9、求选修课程号为‘1’且成绩在90以上的学生学号、姓名和成绩

北邮数据库实验四数据库模式的设计

北邮数据库实验四数据 库模式的设计 Revised by Chen Zhen in 2021

北京邮电大学 实验报告 课程名称数据库 实验名称数据库模式的设计班级 姓名 学号 指导老师 成绩_________ 实验

.1.实验目的 1.了解E-R图的基本概念和根据数据需求描述抽象出E-R图并将其转换为数据库逻辑模式进而实现数据库中的表和视图。 2.通过进行数据库表的建立操作,熟悉并掌握Power designer数据库表的建立方法,理解关系数据库表的结构,巩固SQL标准中关于数据库表的建立语句。 3.通过对Power designer中建立、维护视图的实验,熟悉Power designe中对视图的操作方法和途径,理解和掌握视图的概念。 .2.实验内容 1 针对以下需求信息,尽可能全面地给出各个实体的属性和实体之间的系。 在线考试系统需求信息如下: 在线考试系统是关于一门课程的授课教师安排自己的学生在线参加各种考试的应 用,如果阶段性考试,期中考试和期末考试等。在线考试系统要求有用户的登录和登出。在线考试系统主要包括用户管理、试题管理、试卷管理和考试管理功能。需要实现教师输入试题,从试题生成试卷;学生参加考试获取试卷,提交答案和给出考试成绩等主要逻辑功能。 系统的用户包括教师、学生角色,一个用户有且只有一种角色。 鉴于在线考试的客观条件限制,试题完全采用单项选择形式。试题有所属知识点、内容、分值、备选答案和唯一正确答案等属性组成。课程的知识点是确定的,可以扩展,一道试题只能考察一个知识点。

教师录入各种试题构成题库,并根据考察的知识点不同生成试卷,相同知识点的试题只能在一张试卷中出现一次,试卷由试卷标题和一定数量(即知识点的数量)的试题组成。试卷生成后,教师指定某次考试使用的试卷,学生参加考试使用统一的试卷,考试信息还包含考试标题、任教老师、考试时间。 学生登录后,可以参加考试并在提交答案后立刻得到自己的考试成绩,也可以查看自己的考试历史记录。教师登录后可以查看学生的成绩。 ?2将E-R图输入Power Designer形成概念模型 ? 3 使用Power Designe将输入的E-R图转换成数据库物理模型 ? 4 使用Power Designe将输入的数据库物理模型转化为生成数据库中的表和视图的脚 本 ? 5 执行SQl脚本,生成表和视图 ? 6 成功后,查看生成的表和视图的情况 .3.实验环境 普通PC、Windows系列操作系统、IBM DB2 数据库管理系统 .4.实验步骤、结果与分析 1)五个实体: 用户: 用户ID( UserID )、用户名(UserName)、角色(Role)、密码(Password). 试题库(ItemBank): 题目代码(ItemID)、题目内容(Icontent)、分数(Iscore)、选项(Ioption)、正确答案(Ianswer)、知识点代码(PointID)(froeign). 知识点(KonwledgePoint): 知识点代码(PointID)、知识点内容(Pcontent)、知识点学科(Psubject). 试卷(Paper):

实验一ACCESS数据库及表的操作

可编辑可修改 实验一数据库及表的操作 实验类型:验证性实验课时:_6_学时指导教师: _______________ 时间:2013年月日课次:第___________________ 节教学周次:第________ 周 实验分室:_______________ 实验台号:__________ 实验员:_________________ 一、实验目的 1.掌握数据库的创建及其它简单操作 2.熟练掌握数据表建立、数据表维护、数据表的操作 二、实验内容与要求 1.数据库的创建、打开、关闭 2.数据表的创建:建立表结构、设置字段属性、建立表之间关系、数据的输入 3.数据表维护:打开表、关闭表、调整表外观、修改表结构、编辑表内容 4?数据表的操作:查找替换数据、排序记录、筛选记录 三、实验步骤 案例一:创建数据库 1.创建空数据库 要求:建立“教学管理.accdb ”数据库,并将建好的数据库文件保存在“实验一”文件夹中。 操作步骤:

IS 1 丿小? e 叮亍 Micrtilitil ftfdwvi 口 可审业 a 站 j-t 4审时 OffiCfLC WF gm ■ *陆 (2)单击険'I 按钮,在打开的“新建数据库”对话框中,选择数据库的保存位置,在“ 件夹中,单击“确定”按钮,如图 1-2所示。 (3)这时返回到access 启动界面,显示将要创建的数据库的名称和保存位置,如果用户未提供文件 扩展名,access 将自动添加上。 (4 )在右侧窗格下面,单击“创建”命令按钮,如图 1-1所示。 (5)这时开始创建空白数据库,自动创建了一个名称为表 1的数据表,并以数据表视图方式打开这 个表1,如图1-3所示。 J 曰归 图1-1 创建教学管理数据库 (1 )在Access 2010启动窗口中,在中间窗格的上方,单击“空数据库” ,在右侧窗格的文件名文本 框中,给出一个默认的文件名“” 。把它修改为“教学管理”如图 1-1所示。 实验一”文

实验三 数据库设计

实验三数据库设计 一、实验目的: (1)巩固和加深对数据库原理基本知识的理解,提高综合运用课程知识的能力。 (2)掌握数据库应用系统设计的基本方法和步骤,培养进行数据库设计的能力。 二、实验步骤 数据库设计: (1)需求分析 (2)概念结构设计: 通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型E-R模型: 定义实体,属性,确定联系类型:如: (3)逻辑结构设计: 将概念结构转换为某个DBMS所支持的数据模型,是数据库基本模型,主要用来 定义数据库结构的一些数据结构如表,约束。 1.关系模型: 将E-R图转换为关系模型:将实体、实体的属性和实体之间的联系转换为关系模式。 一个实体型转换为一个关系模式。 ?关系的属性:实体型的属性 ?关系的码:实体型的码 实体型间的联系有以下不同情况: 1.一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模 式合并。 ?转换为一个独立的关系模式 ?关系的属性:与该联系相连的各实体的码以及联系本身的属性 ?关系的候选码:每个实体的码均是该关系的候选码 ?与某一端实体对应的关系模式合并 ?合并后关系的属性:加入对应关系的码和联系本身的属性 ?合并后关系的码:不变

2.一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合 并。 ?转换为一个独立的关系模式 ?关系的属性:与该联系相连的各实体的码以及联系本身的属性 ?关系的码:n端实体的码 ?与n端对应的关系模式合并 ?合并后关系的属性:在n端关系中加入1端关系的码和联系本身的 属性 ?合并后关系的码:不变 3. 一个m:n联系转换为一个关系模式。 ?关系的属性:与该联系相连的各实体的码以及联系本身的属性 ?关系的码:两端实体的码 2.设计用户子模式: 定义用户外模式时应该注重考虑用户的习惯与方便 包括三个方面: (1) 使用更符合用户习惯的别名 (2) 针对不同级别的用户定义不同的View ,以满足系统对安全性的要求。 (3) 简化用户对系统的使用 (4)物理结构设计: 为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构和存取方法),如索引、聚簇的定义 (5)数据库实施: 运用DBMS提供的数据库语言(如SQL)及宿主语言,根据逻辑设计和物理设计的 结果,建立数据库 (6)数据库运行与维护 三、实验内容:图书借阅管理数据库的设计 1.本数据库简化的需求情况如下: (1)所有借阅人都可以随时查询可借阅图书的情况,如图书编号,图书名称,出版日期,图书出版社,图书存放位置,图书数量等,以便于借阅。 (2)借阅人查询图书情况后可以借阅所需图书,一次可以借阅多本图书,每本图书一次只借阅一本,若有图书超期,需缴纳罚金才能进行借阅。 (3)图书室需要办理借阅证方可借阅图书,需要记录如下信息:借阅人姓名,所在单位,借阅图书的上限数(不同级别的借阅人,借阅图书上限数不同),图书室为每一位借阅人提供唯一的图书借阅证编号。 (4)每位借阅人一次可以借阅多本图书,但不能超过其借阅上限数,借阅图书期限为两个月。超过期限需要缴纳罚金后(每天二分×超期天数)方可借阅。 (5)借阅图书时需登记相应借书日期及还书日期。 (6)图书室同时提供出版社(出版社名称,邮编,地址,电话,E-mail)及作者(作者姓名,性别,出生日期,籍贯,备注)相关信息便于借阅人查询。一本书籍只能在一个出版社出版,由于图书可以再次出版,所以每次出版的图书都有不同的出版日期。 (7)借阅人可以查看所有信息,却不能更新所有信息。 (8)图书借阅管理员可以查看及更新借阅信息,不能进行其他访问操作。

2-实验二MySQL数据库操作实验

实验二MySQL数据库操作实验 实验目的: 1、掌握MySQL数据库的安装方法 2、掌握MySQL数据库的使用 3、熟悉数据库管理工具的使用 实验要求: 1、利用MySQL命令创建数据库和相应的数据库表,并能向数据库表中插入数据记录和相应的数据库操作。 2、利用Navicat for MySQL建数据库和相应的数据库表,并能向数据库表中插入数据记录和相应的数据库操作。 3、保存和导入数据库 4、编程查询显示数据库表中的所有记录,可以选择以下添加的任意一个数据库表的记录。 实验内容: 1、安装MySQL数据库 安装MySQL可以参照文档“MySQL 5 安装.doc”,安装MySQL并进行配置,安装成功后,即可操作管理数据库。 方法一: 从开始菜单?MySQL?MySQL Server5.0?MySQL Command Line Client,打开控制台界面,提示输入密码,密码输入成功后,登录MySQL数据库,如下图2.1所示。

图2.1 登录MySQL 服务器 方法二:将MySQL的安装路径下的bin目录添加到环境变量path中,打开控制台命令,输入mysql –uroot –p,在提示符下输入密码,登录MySQL 服务器,如下图2.2所示。 图2.2 登录MySQL服务器 2、安装Navicat for MySQL Navicat for MySQL 是一款强大的MySQL数据库管理和开发工具,Navicat 使用很好的GUI,可以使用户采用一种安全和更容易的方式创建、组织、存取和共享信息。 安装Navicat_for_MySQL_10.1.7,安装向导启动界面如下图2.3所示。

实验3 SQL基本操作

实验3 SQL概述 一、实验目的 1.掌握使用企业管理器创建数据库、定义表结构、修改表、删除表的操作 2.创建视图,修改、删除视图。 二、实验内容 1.使用企业管理器创建数据库CPXS; 2.修改数据库、删除数据库; 3.在数据库CPXS中创建表; 4.创建查询产品库存量和销售时间的视图; 5.删除视图,修改视图。 三、实验步骤 1.使用企业管理器创建数据库 (1)进入企业管理器主界面,右击“数据库”文件夹,在弹出的快捷菜单中选择“新建数据库”命令。 (2)弹出“数据库属性”对话框,其中有“常规”、“数据文件”、“事务日志”3个选项卡。 (3)在“常规”选项卡中的“名称”对话框中输入要建立的数据库名称,这里只能输入字母不能输入汉字,如要建立产品销售数据库,可以输入“CPXS”。如图1所示。

图1 输入数据库名称cpxs (4)选择“数据文件”选项卡,对数据文件的逻辑名称、存储位置、容量大小、所属文件组名称和文件属性进行设置。例如,设置数据库的数据文件的逻辑名为cpxs_data,开始大小为1MB,所属文件组为Primary,文件按15%的比例自动增长,文件最大增长到15MB。

图2 设置cpxs属性 (5)选择“事务日志”选项卡,对事务日志文件的物理存储进行设置,可以输入事务日志文件的名称、存储位置、初始大小和文件属性等信息。如设置cpxs数据库的事务日志文件名是cpxs_Log,初始大小为 1MB,文件按5%的比例自动增长,文件最大增长到5MB。 (6)单击“确定”按钮,完成数据库的创建后,会在“数据库”文件夹内出现新建的cpxs的数据库。 2.修改数据库 (1)在企业管理器中右击cpxs,从弹出的快捷菜单中选择“属性”命令。 (2)弹出该数据库的属性对话框,在其中可以对常规、数据文件、事务日志、文件组、选项和权限6个选项进行设置,单击“确定”按钮,即可完成对选定数据库的修改。 3.删除数据库

实验二 数据库操作

实验二SQL Server 2005 数据库的创建修改与管理 一、实验目的与要求 1.实验目的: 掌握使用SSMS创建、修改、删除、压缩数据库的方法。 2.实验要求: 了解SQL Server 2005 数据库的逻辑结构和物理结构及其结构特点,掌握使用SSMS创建、 修改、删除,压缩数据库的方法,明确能够创建数据库的用户必须是系统管理员,或是被授 权使用CREATE DA TABASE语句的用户,创建数据库必须要确定数据库名、所有者(即创建 数据库的用户)、数据库大小(最初的大小、最大的大小、是否允许增长的方式)和存储数据 的文件。 二、实验内容 1、创建数据库 用ssms:右击数据库/ 新建数据库或选定数据库→单击操作菜单→新建数据库 例:创建一个数据库uvw 命令方式创建:例:创建一个数据库aaa,其余默认,查看aaa信息 create database aaa exec sp_helpdb aaa 使用create database语句创建: create database 库名 on primary ( name=’数据库名’,filename=’数据库文件全称’,size=大小,maxsize=最大尺 寸,filegrowth=增长率) log on (name=日志名,filename=’日志文件全名称’, size=大小,maxsize=最大尺 寸,filegrowth=增长率) 例:创建一个名为dan的学生库,主数据库文件dan_data.mdf,初始大小4mb,事务日志文件 dan_log.ldf,初始容量为4mb,文件存于C盘根目录,分别用菜单与命令方式实现。 例:菜单方式创建(T-SQL语言选作):创建一个gz数据库,该数据库的主文件逻辑名称为gz_data,物理文件名为gz.mdf,初始大小为5mb,最大尺寸为3mb,增长速度为10%;数据库的日志文件逻辑名称为gz_log,物理文件名为gz.ldf,初始大小为3mb,最大尺寸为5mb,增长速度为2MB,文件存放在d:\。 2、修改数据库 例:将数据库dan的数据文件和日志文件分别扩展2个文件 例:修改数据文件dan_data1的空间大小为5mb

实验报告 数据库的基本查询'

一、实验目的: 通过该实验掌握应用SQL 查询数据库的基本方法,包括单表、多表查询。 二、实验原理 数据库查询是数据库的核心操作。SQL语言提供了SELECT语句进行数据库的查询。 SELECT[ALL|DISTINCT] <目标列表达式〉[,<目标列表达式〉]... FROM<表名或视图名〉[,<表名或视图名〉]... [WHERE<条件表达式>] [GROUP BY<列名1〉[HA VING<条件表达式>]] [ORDERBY<列名2〉[ASC|DESC]] 三、实验内容和方法 实验用的数据库:用实验二建立的数据库:School 1. 投影查询 (1) 查询SC表的sno的不重复记录。 使用SQL语句:“select distinct Sno from SC”,得出结果如下图所示: (2) 改变查询结果的标题名:sno为学号,sname为姓名,ssex 为性别,sdept 为系名。 使用SQL语句:“select Sno 学号,Sname 姓名,Ssex 性别,Sdept 系名from Student”,得出结果如下图所示:

(3) 查询STUDENT表的前3条记录(top 3)。 使用SQL语句:“select top 3 * from Student”,得出结果如下图所示: 3. 选择查询 (1) 查询成绩在60-80之间的姓名、系名和成绩。 使用SQL语句:“select Sname,Sdept,Grade from Student,SC where Grade>60 and Grade<80 and Student.Sno=SC.Sno”,结果如下图所示: 若使用SQL语句:“select Sname,Sdept,Grade from Student,SC where Grade between 60 and 80 and Student.Sno=SC.Sno”,则结果如下图所示: (2) 查询信息系和计算机系的姓名和成绩。 使用SQL语句:“select Sname,Grade from Student,SC where Sdept='IS' and Student.Sno=SC.Sno or Sdept='CS' and Student.Sno=SC.Sno”,结果如下图所示:

数据库系统原理课程基本实验设置

目录 每个实验包括: 实验内容 实验要求 实验环境(可选) 实验背景知识(可选) 实验步骤及结果分析 实验总结

第一章概述 数据库课程的学习需要理论和实践的紧密结合,数据库实验是数据库学习的重要的环节。我们将针对数据库学习的实验环节进行实验设置和指导,包括数据库实验需要的知识、环境和内容的设置。 数据库课程的目标是: 理解和掌握数据库的理论知识。学生理解数据库系统的基本概念,掌握数据库系统的基本理论,包括数据库的特点、结构、关系数据模型、数据存储、数据查询及优化、关系数据库设计、事务管理等内容。 了解和熟悉数据库的使用和基本操作,掌握数据访问方法。在学生掌握基本的数据库概念和理论的基础上,培养学生的实践能力,学生能掌握基本的数据库的操作。 全面理解数据库系统,能进行数据库的设计,最终能完成一个完整的数据库应用系统的设计和实现。 数据库实验是为上面的目标服务,其内容的设置要和数据库的理论学习结合起来。根据课程进展和学生掌握的数据库系统知识的提高,数据库的实验分为两个大的部分。一个是和课程紧密相关的,和课程同步的实验,一是在数据库设计理论结束或在课程理论教学完成后进行的数据库系统的设计实验。 这里的实验指导将是针对和数据库的理论学习同步的课程实验。 课程实验目的:通过实验加深学生对数据库相关基本理论和概念的认识和理解,通过对SQL SERVER的操作和使用,了解一种具体的数据库管理系统,熟悉数据库的操作,提高学生数据库实践能力。 课程实验环境: 在实验中,我们选择Kingbase数据库作为基本的实验环境,操作系统可以是Windows2000/XP, 在课程实验中需要用到KingBase的管理工具企业管理器,并用ISQL语言完成实验操作。 实验方式和要求: 课程实验要求每一个学生独立完成; 学生需要理解每一次实验内容,先掌握和了解相关的理论知识,然后制定实验步骤,完成实验内容; 课程实验虽然分次完成,但其在内容上是连贯的,前一次实验的数据可能为后面的实验所用,因此每一次实验结果需要保留; 实验完后,要完成实验报告,写清楚实验内容、实验步骤和实验结果。 实验内容设置: 课程基本实验根据理论学习的内容,包括如下8组实验: 实验一数据库安装、数据库创建与维护实验; 实验二数据库表/视图的创建与维护实验; 实验三数据查询实验; 实验四数据库接口实验; 实验五数据库完整性与安全性实验; 实验六数据查询分析实验; 实验七数据库事务的创建与运行实验; 实验八数据库的备份与恢复实验;

实验四 小型数据库规划设计

实验四小型数据库规划设计 一、实验目的 熟悉数据库的设计的基本方法和步骤,明白数据库设计各阶段的任务,加深对数据 库系统概念和特点的理解。 二、实验内容和要求 根据你熟悉的实际情况,选一个小型的数据库应用项目,进行系统分析和数据库设计。 三、实验主要仪器设备和材料 1.计算机及操作系统:PC机,Windows 2000/xp; 2.数据库管理系统:SQL server 2000/2005; 四、实验方法、步骤及结构测试 1、写出简要的需求分析报告; 本系统是针对高等院校的学生学籍管理,因此学籍管理系统的用户包括系统管理员、教师和学生。主要涉及系部信息、班级信息、任课教师信息、学生信息、课程信息以及选课记录和成绩等多种数据信息。实现的具体功能如下: 基本信息管理——系统管理员负责对各种基本信息的录入、修改、删除等操作。 学生成绩管理——系统管理员负责对学生成绩的录入、修改、删除等操作,学生 可以查询各科成绩。 信息查询统计——学生可以查询基本信息和各科的考试成绩,老师可以查询基本 信息和授课信息,系统管理员负责把老师提交的学生成绩进行管理,计算总成绩和平均成绩,统计不及格学生信息和获得奖学金学生的信息,最后再输出所有的信息。 系统用户管理——系统管理员负责用不同的权限来限制不同用户对系统的使用。 以上是用户对系统的基本的功能要求,此外用户还要求系统的效率要高,查询速度要快,比较小的冗余,易维护,具有较高的数据安全性。 2、进行简要的系统功能设计; .1 系信息管理。院系信息管理包括院系信息数据的录入、修改与删 除等功能。 .2 级信息管理。班级信息管理包括班级信息的录入、修改与删除等 功能。 .3 师信息管理。教师信息管理包括任课教师信息的录入、修改与删 除等功能。 .4 生信息管理。学生信息管理包括学生信息的录入、修改与删除等 功能。 5 程信息管理。课程信息管理包括课程信息的录入、修改与删除等 功能。 .6 籍变更信息管理。学籍变更信息管理包括学籍变更信息的录入、修改与删除 等功能。 .7 生奖惩信息管理。学生奖惩信息管理包括学生奖惩信息的录入、修改与删除 等功能。

数据库原理实验报告(2)资料

南京晓庄学院 《数据库原理与应用》课程实验报告 实验二数据库的创建、管理、备份及还原实验 所在院(系):信息工程学院 班级: 13软件工程转本1班 学号:13131151 姓名:薛伟

1.实验目的 (1)掌握分别使用SQL Server Management Studio图形界面和Transact-SQL语句创建和修改 数据库的基本方法; (2)学习使用SQL Server查询分析窗口接收Transact-SQL语句和进行结果分析。 (3)了解SQL Server的数据库备份和恢复机制,掌握SQL Server中数据库备份与还原的方 法。 2.实验要求 (1)使用SQL Server Management Studio创建“教学管理”数据库。 (2)使用SQL Server Management Studio修改和删除“教学管理”数据库。 (3)使用Transact-SQL语句创建“教学管理”数据库。 (4)使用Transact-SQL语句修改和删除“教学管理”数据库。 (5)使用SQL Server Management Studio创建“备份设备”;使用SQL Server Management Studio对数据库“教学管理”进行备份和还原。 (6)SQL Server 2005数据库文件的分离与附加。 (7)按要求完成实验报告 3.实验步骤、结果和总结实验步骤/结果 (1) 总结使用SQL Server Management Studio创建、修改和册除“TM”(教学管理)数据库的过程。 利用Microsoft SQL Server Management Studio创建数据库的示例方法如下: 一、打开安装好的Microsoft SQL Server Management Studio,在对象资源管理器里找到【数 据库】--右键【新建数据库】,到下图界面: 1、在数据库名称处输入要创建数据库的名称。 2、表格中的两个路径分别为: 2.1 上为数据库存放物理地址。 2.2 下为数据库日志存放物理地址。 3、初始大小图片中显示的为默认的值,可以根据自己的需求进行修改大小,要修改大小【点击大小值表格】会出现编辑状态文本框。

实验四-数据库设计

实验四数据库设计与实现 一、实验目的 综合运用各章的知识,完成小型数据库系统底层的全面设计,初步掌握数据库系统开发的基本方法。 以一个具体的应用为背景,完成数据库系统的设计,添加一定的数据到设计出的表中,使用添加、修改、删除和查询语句等,能将所学运用到设计中,并设计系统界面。 二、实验内容 1、需求分析,给出数据库应用系统的功能结构图、业务流程图、数据流程图、数据字典; 2、概念模型设计:画出E-R图 3、逻辑模型设计:将ER图转换为关系,建立数据库表,设置实体完整性、域完整性和参照完整性。 3、物理模型设计 4、数据库运行:功能模块开发,能够实现数据库连接、查询、增加、修改、删除等功能。 实验步骤(略) 设计题目推荐(不局限于此) (1)成绩查询系统 (2)图书借阅系统 (3)BBS系统 (4)宿舍管理系统 (5)电子商务系统 (6)新生注册系统 (7)学生管理系统 (8)档案管理系统

通过ODBC访问数据库 实验步骤: 要通过ODBC访问数据库,前提是必须配置好DSN。在Windows NT/2000中,DSN允许用户以适当的权限通过网络连接制定的数据库。可以分为三种类型: ①用户DSN(User DSN):只能以指定的用户安全身份证明(用户名和密码)连接指定的数据库。 ②系统DSN(System DSN):所有用户都能够连接指定的数据库。 ③文件DSN(File DSN):将连接的情况存储在一个文件中,只有对该文件由访问权限的用户才能够连接指定的数据库。 用户DSN和系统DSN信息存放在Windows的注册表中。在网络上,若为了让所有用户通过ODBC 访问数据库,则需要创建系统DSN。 下面以学生信息数据库Student为例,介绍建立ODBC数据源的步骤: Step1:单击开始|设置|控制面板(或双击桌面上“我的电脑”图标,并双击随之出现的“控制面板”图标),出现“控制面板”对话框。 Step2:双击“管理工具”图标,出现“管理工具”对话框。 Step3:双击“数据源(ODBC)”图标,出现“ODBC数据源管理器”对话框。选择“系统DSN”选项卡,进入设置系统DSN的操作界面。在该窗口的“系统数据源”列表框中显示该系统中已安装的ODBC数据源的有关信息。当要建立的数据源不存在时,就可以单击“添加”按钮添加需要的数据源;也可以用鼠标选中一个数据源后按“配置”按钮,对已存在的数据源进行重新配置。 Step4: 单击“添加”按钮,将出现“创建新数据源”对话框。 Step5:选择列表框中的SQL Server项,然后单击完成按钮,出现“建立新的数据源到SQL Server”对话框。在“名称”一栏中为数据源设置一个名称(DSN);“说明”一栏中可以对数据源进行说明,也可省略;在“服务器”下拉列表框中选择或者键入SQL Server数据库服务器的名称。注意:必须确保在本地或与之相连的网络中存在着可以连接的SQL Server服务器,才能建立SQL Server数据源,否则,在其后的连接中将出现错误。

实验三数据库简单操作

重庆理工大学数据库精品课程教辅材料 实验报告册 课程:数据库系统概论 班级: 学号: 姓名: 重庆理工大学 计算机科学与工程学院 2016年3月

实验三 一实验目的 利用查询分析器用SQL语言定义基本表、索引并进行相关操作。 二实验软件平台 SqlServer 三实验内容 (一)利用查询分析器在表中插入数据 打开在实验一中建立的“学生课程”数据库,利用SQL语句在“SCDB”数据库中的student、course、sc表中插入数据; student表的内容: SNO SNAME SSEX SAGE SDEPT 95001李勇男20CS 95002刘晨女19IS 95003王敏女18MA 95004 张立男19 IS 95005 陈锋男21 CS course表的内容 CNO CNAME CPNO CREDIT 1数据库54 2数学NULL 2 3信息系统14 4操作系统 6 3 5数据结构7 4 6 数据处理NULL 2 7 PASCAL语言 6 4 sc表的内容 SNO CNO GRADE 95001192 95001265 95001388 95002290 95002380 95003 3 93

95003 4 85 95003 5 95 (二)修改表中的数据 在插入数据后的三张表student、course、sc中进行相关的更新操作: 1、将student表中‘李勇’的名字改为‘李明’; 2、将student表中‘王敏’的年龄改为20岁; 3、将所有学生的年龄增加1岁; 4、修改学生的学号‘95002’为‘95007’,注意会有什么情况发生?为什么? update s set sno='95007' where sno='95002' 与约束条件冲突,因为sno是主键,在sc表中被关联。改动主键会报错。 5、把选修了“2”号课程,且成绩低于70分的成绩提高5%; update sc2 set grade=grade*(1+0.05) where grade<70 and cno= 2 6、将“CS”系全体学生的成绩置零; update sc2 set grade= 0 where'cs'= (select sdept from s where s.sno=sc2.sno) (三)删除表中的数据 1、把选修了“2”号课程,且成绩低于70分的学生的选课记录删除掉; delete from sc2 where cno='2'and grade< 70 2、删除学号为“95003”的学生信息,注意会有什么情况发生?为什么? delete from s where sno='95003' 无法完成删除。因为snow是主键。 3、删除"IS"系选修了"2"号课程的选课记录; delete from sc2 where cno='2'and 'IS'=(select sdept from s where s.sno=sc2.sno)

实验选课系统数据库设计

《数据库原理与应用》课程设计 题目:实验选课系统数据库设计系别: 专业(含班级): 学号: 姓名: 指导教师:职称 填表日期:年月日

一、选题依据和意义 实验选课系统作为教学过程中一个不可或缺的环节,是为了更好地管理实验选课信息而建立的。该系统可以让选课信息更加规范化、系统化、程序化,避免选课系统的随意性,提高信息处理的速度和准确性,能够及时、准确、高效的查询或修改实验选课信息。加上局域网的开放,更为学生选课带来很大的便捷,学生可通过校园网进行选课,增加选课的灵活性,提高了学校选课工作的效率,教务处的教师可以依据选课系统对选课信息进行合理的管理,为广大师生及相关工作人员节省了时间。 二、需求分析 1.需求调查与分析 随着信息技术的发展、局域网的应用和数据的逐渐增多,近年来,人们逐渐用网络信息管理系统代替人工对管理的信息。高校也逐渐用选课系统代替人工的选课已增加选课的系统化、规范化、灵活性,提高选课的效率和对选课信息的管理效率。 2.业务流程图: 从教师开课开始,经过教务处的审核之后,教务处结合实验室的相关信息整理出有效的课程提供给学生们进行选择。 图1:实验选课系统业务流程图 三、概念结构设计 概念结构设计的含义:将需求分析得到的用户需求抽象为信息结构即概念模型的过程。它是整个数据库设计的关键。 本设计由上面的实验选课系统业务流程图抽象(分类、聚集、概括)可得到实验选课系统的概念模型,用如下E-R图表示:

图2:实验选课系统E-R图 四、逻辑结构设计: 根据实验选课系统E-R图和以下转换规则可得选课系统的关系模式。 转换规则: 1、一个实体型转换为一个关系模式 2、实体型间的联系有以下几种: (1)1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并; (2)1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并; (3)m:n(3个或3个以上)联系转换为一个关系模式。与该联系相连的各实体的码及联系本身的属性均转换为关系的属性; (4)具有相同码的关系模式可合并。 1.实验选课系统关系模式: 如图2所示,按照上面的转换规则,可得实验选课系统的关系模式如下: (1)教师(教师号,姓名,密码,性别,年龄,系别,职称,电话); (2)课程(课程号,课程名,学时,学分,实验室编号); (3)学生(学号,姓名,密码,性别,年龄,系别,班级); (4)实验室(实验室编号,实验室名称,地点,电话); (5)开课(教师号,课程号,时间); (教师号,课程号)分开为外键 (6)选修(学号,课程号,成绩);(学号,课程号)分开为外键

北邮大三下数据库实验报告3

北京邮电大学 实验报告 课程名称数据库系统原理 实验内容实验(三) 实验名称数据查询实验 班级2013211***姓名*** 指导老师卢向群成绩_________ 2016年4月20日

实验三数据查询实验 实验目的 通过对实验二中建立的数据库关系表和视图的各种查询的操作,加深对SQL语言和Transact SQL查询语言的了解,掌握相关查询语句的语法和使用方法。 实验内容 数据库关系表查询: (1)简单的查询操作,包括单表的查询、选择条件、结果排序等的练习; (2)多表的连接查询,包括等值连接、自然连接等; (3)复杂的查询操作,包括使用分组函数等库函数的查询操作; (4)练习带有IN、比较符的嵌套查询。 具体内容包括: 1.简单查询: (1)查询班号为g99401班的学生的学号和姓名; 表中没有该班级的学生,故查询结果为空。 (2) 查询“数据库开发技术”课程的学分; (3) 查询选修了课程编号为“dep04_s003”的学生的学号和成绩,并将成绩按降序输出;

(4) 查询学号为“g9940205”的学生选修的课程编号和成绩; (5) 查询选修了课程编号为“dep04_s001”且成绩高于85分的学生的学号和成绩。 2.在多表连接的查询实验中,在SQL SERVER提供的交互式语言环境下用Transact

SQL语句完成以下查询操作: (1)查询选修了课程编号为“dep04_s002”且成绩高于85分的学生的学号、姓名和成绩; 该题与上一题的差别在于学生姓名,这一属性与成绩不在同一张表中,故需要对两张表做自然连接。 (2)查询所有学生的学号、姓名、选修的课程名称和成绩; 需要用到三张表,把三张表做自然连接,语句如下: 查询结果如下: (3)查询计算机科学系林红同学选修的课程名称、学分和成绩。(考试成绩>=60有学分,

2-实验二MySQL数据库操作实验

实验二 MySQL数据库操作实验 实验目的: 1、掌握MySQL数据库的安装方法 2、掌握MySQL数据库的使用 3、熟悉数据库管理工具的使用 实验要求: 1、利用MySQL命令创建数据库和相应的数据库表,并能向数据库表中插入数据 记录和相应的数据库操作。 2、利用Navicat for MySQL建数据库和相应的数据库表,并能向数据库表中插 入数据记录和相应的数据库操作。 3、保存和导入数据库 4、编程查询显示数据库表中的所有记录,可以选择以下添加的任意一个数据库 表的记录。 实验容: 1、安装MySQL数据库 安装MySQL可以参照文档“MySQL 5 安装.doc”,安装MySQL并进行配置,安装成功后,即可操作管理数据库。 方法一: 从开始菜单→MySQL→MySQL Server5.0→MySQL Command Line Client,打开控制台界面,提示输入密码,密码输入成功后,登录MySQL数据库,如下图2.1所示。

图2.1 登录MySQL 服务器 方法二:将MySQL的安装路径下的bin目录添加到环境变量path中,打开控制台命令,输入mysql –uroot –p,在提示符下输入密码,登录MySQL服务器,如下图2.2所示。 图2.2 登录MySQL服务器 2、安装Navicat for MySQL Navicat for MySQL 是一款强大的MySQL数据库管理和开发工具,Navicat 使用很好的GUI,可以使用户采用一种安全和更容易的方式创建、组织、存取和共享信息。 安装Navicat_for_MySQL_10.1.7,安装向导启动界面如下图2.3所示。

数据库实验二

数据库实验二 集团文件版本号:(M928-T898-M248-WU2669-I2896-DQ586-M1988)

实验报告册 2014 / 2015 学年第2 学期 系别计算机科学与技术系 实验课程数据库原理 专业计算机科学与技术 班级 姓名 学号 指导教师 实验二——SQL语句 一、实验目的 1.熟悉SQL的数据查询语言,能使用SQL进行单表查询、连接查询、嵌套查询、集 合查询和统计查询,能理解空值的处理;

2.熟悉数据库的数据更新操作,能使用SQL语句对数据库进行数据的插入、更新、 删除操作; 3.熟悉SQL支持的有关视图的操作,能创建、查询及取消视图; 4.了解NULL在数据库中的特殊含义,掌握使用SQL进行与空值相关的操作; 二、实验预习内容 在认真阅读教材及实验指导书【实验1.2 数据查询】、【实验1.3 数据更新】、【实验1.4 视图】和【实验1.6 空值和空集的处理】的基础上,上机前请预习以下内容,并在空白处填写相应的步骤或命令。 1.使用SCHOOL数据库,在SQL SERVER 2000 的查询分析器中使用SQL语言完成以 下操作。请在空白处填写相应的SQL命令。 1)查询年级为2001的所有学生的名称,按编号顺序排列; 2)查询所有课程名称中含有data的课程编号; 3)统计所有老师的平均工资; 4)查询至少选了3门课的学生编号; 5) 6)查询没有学生选的课程编号; 7)查询既选了C++又选了Java课程的学生编号; 8)查询选了C++但没选Java课程的学生编号; 9)向STUDENTS表中插入“LiMing”的个人信息); 10)将“LiMing”的年级改为2002; 11)删除所有选了Java课程的学生选课记录; 12)求出每门课的课程号、选课人数,结果存入数据库表T1中。

相关文档
最新文档