数据库实验七实验报告
数据库实验报告

一、实验目的:1、根据给定的题目,把现实世界中的具体事物抽象为某一概念级的模型,即建立整个问题的概念模型,建立起数据库设计人员与用户之间的交流,为数据模型的建立奠定基础。
2、学会认识和分析现实世界,根据对用户需求,描述用户的数据要求:(1)、练习如何从中抽取实体;(2)、练习如何建立各实体之间的联系;(3)、从各实体和实体间的联系,抽取出数据处理的过程。
二、实验内容及要求1、问题描述:某大学需要使用计算机管理学生信息、成绩信息等,要求如下:(1)、学生信息管理,包含学生的基本信息,如学号、姓名、性别、出生日期等;还要包含学生的简历、社会关系等;(2)、课程管理,包含整个学校开设的所有课程;(3)、教学计划管理,包含设定各系各专业在哪学期开设什么样的课程,学分是多少;(4)、学生选课管理,包含学生在某学期选择什么样的课程;(5)、学生成绩管理,包含学生各课程的成绩、是否补考、补考成绩;(6)、学生奖惩管理,管理学生在校期间所获得的奖励和惩罚记录。
2、根据以上要求,为该大学的计算机管理系统建立数据库的概念模型三、实验设备及软件本次试验采用Power-designor6.0作为数据库的设计工具,VC++。
四、设计方案(1)、题目:概念模型的建立(2)、设计的主要思路我们知道概念模型是对信息世界建模,通常我们采用E—R图来描述现实世界的概念模型。
E—R图提供了表示实体型、属性和联系的方法。
在数据库概念设计阶段中,设计人员从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模式。
然后再把概念模式转换成逻辑模式。
将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定DBMS 的限制。
建立E—R模型:实体和属性的定义:学生信息管理系统中主要有以下的15个实体,用实体(属性)表示为:学生(学号(主码)、学生姓名、学生性别、学生出生日期);专业(专业代码(主码)、专业名称);成绩(成绩);课程(课程代码(主码),课程名称,学分);学院(学院编码(主码),学院名称);学校(学校代码(主码),学校名称);教师(教师号(主码),教师姓名,教师性别);政治面貌(政治面貌代号(主码),政治面貌名称);缴费情况(序号(主码),缴费内容);籍贯(籍贯代码(主码),籍贯名称);国籍(国家代码(主码)、国家名称);民族(民族代码(主码)、民族名称);简历(简历序号,起始日期,截止日期,简历内容);社会关系(关系序号,关系姓名,关系性别,关系工作单位,关系联系电话);与本人关系(与本人关系代码(主码),与本人关系);E-R模型的“联系”用于刻画实体之间的关联。
数据库实验报告总结

数据库实验报告总结数据库实验报告总结引言:数据库是现代信息系统的重要组成部分,它承载着大量的数据,并提供高效的数据管理和查询功能。
在数据库实验中,我们通过设计和实现一个简单的数据库系统,深入了解了数据库的基本原理和操作。
本文将对数据库实验进行总结,包括实验目的、实验过程和实验结果等方面。
一、实验目的数据库实验的主要目的是让我们掌握数据库的基本概念、原理和操作方法,培养我们的数据库设计和管理能力。
具体来说,实验目的包括以下几点:1. 理解数据库的概念和基本原理;2. 掌握数据库的设计和规范化方法;3. 学习使用SQL语言进行数据库的操作和查询;4. 熟悉数据库管理系统的使用和配置。
二、实验过程在实验中,我们首先进行了数据库的设计和规范化。
通过分析需求,我们确定了数据库的实体和关系,并进行了关系模式的设计。
然后,我们使用数据库管理系统(DBMS)创建了数据库,并根据设计的关系模式创建了表格。
接下来,我们学习了SQL语言的基本语法和操作,包括创建表格、插入数据、更新数据和查询数据等。
通过实际操作,我们深入理解了SQL语言的使用方法,并能够熟练地编写SQL语句进行数据库操作和查询。
三、实验结果在实验过程中,我们成功地设计和实现了一个简单的数据库系统,并进行了一系列的数据库操作和查询。
通过实验,我们获得了以下实验结果:1. 成功创建了数据库和表格,并插入了测试数据;2. 能够使用SQL语句进行数据的增删改查操作;3. 实现了基本的数据库查询功能,包括条件查询、排序查询和连接查询等;4. 学会了使用数据库管理系统进行数据库的备份和恢复。
四、实验心得通过数据库实验,我收获了很多。
首先,我深入理解了数据库的概念和原理,明确了数据库在信息系统中的重要性。
其次,我掌握了数据库的设计和规范化方法,能够根据需求进行数据库的设计和创建。
此外,我学会了使用SQL语言进行数据库的操作和查询,能够编写复杂的SQL语句实现各种功能。
《数据库实验》实验报告

《数据库实验》实验报告一、实验目的本实验旨在通过设计与实现一个简单的学生信息管理系统,来加深对数据库基本概念和SQL语言的理解,并掌握数据库的创建、表的设计、数据的增删改查等基本操作。
二、实验环境本次实验的开发环境为以下软件与工具:1. 数据库管理系统:MySQL2. 编程语言:Java3. 开发工具:Eclipse IDE4. Web服务器:Apache Tomcat三、实验内容及步骤1. 数据库的创建与连接首先,在MySQL中创建一个名为"student_system"的数据库,并通过JDBC连接该数据库。
在Java代码中,使用JDBC的API进行数据库连接操作,包括加载驱动、建立连接等步骤。
2. 数据表的设计与创建在student_system数据库中创建一个名为"student"的数据表,该表用于存储学生的基本信息。
表中应包含学号(id)、姓名(name)、性别(gender)和专业(major)等字段,并设置合适的数据类型和约束。
3. 数据的插入与修改通过SQL语句,在student表中插入若干条学生信息,包括学号、姓名、性别和专业。
同时,通过SQL的UPDATE语句,修改某些学生的信息。
4. 数据的查询编写SQL语句,实现对学生信息的查询。
可以根据学号或姓名等关键字进行查询,并返回符合条件的学生信息。
5. 数据的删除根据指定的学号或姓名,编写SQL语句实现对学生信息的删除操作。
删除后,该学生的信息将不再存在于数据库中。
四、实验结果经过以上实验步骤的设计与实现,在学生信息管理系统中,成功地创建了student表,并成功插入了若干学生信息。
通过SQL语句的查询和修改操作,可以准确地获取和修改学生的信息。
此外,删除操作也能够成功地从数据库中删除指定学生的信息。
五、实验总结通过本次实验,我进一步掌握了数据库的基本操作与SQL语言的应用。
在实验过程中,我理解到数据库的设计与搭建是一个关键步骤,合理的表结构和约束条件对于数据的管理和有效性有着重要的影响。
数据库实验报告(7个实验完整附截图)

福建农林大学计算机与信息学院实验报告课程名称:数据库原理及应用姓名:系:计算机科学与技术专业:计算机科学与技术年级:2012 级学号:指导教师:***2014 年5月18 日实验项目列表实验一:数据库的定义实验一、实验目的:1、理解MySQL Server 6.0 服务器的安装过程和方法;2、要求学生熟练掌握和使用SQL、T-SQL、SQL Server Enterpriser Manager Server 创建数据库、表、索引和修改表结构,并学会使用SQL Server Query Analyzer,接收T-SQL 语句和进行结果分析。
二、实验环境:硬件:PC机软件:Windows操作系统、MySQL Server 6.0 和Navicat for MySQL 9.0三、实验内容和原理:1、安装MySQL以及相应的GUI工具2、用SQL命令,建立学生-课程数据库基本表:学生Student(学号Sno,姓名Sname,年龄Sage,性别Ssex,所在系Sdept);课程Course(课程号Cno,课程名Cname,先行课Cpno,学分Ccredit);选课SC(学号Sno,课程号Cno,成绩Grade);要求:1) 用SQL命令建库、建表和建立表间联系。
2) 选择合适的数据类型。
3) 定义必要的索引、列级约束和表级约束.四、实验步骤:1、运行Navicat for MySQL,然后进行数据库连接,进入到GUI界面;2、利用图形界面建立基础表:student 表的信息:course表的信息:sc表的信息:字段名类型长度约束条件Sno varchar9非空、主键、与student表中Sno外键关联,级联删除Cno varchar 4Grade smallint6非空、主键、与course表中Cno外键关联(1)连接数据库,在 localhost 中点击鼠标右键(如图1所示),点击“新建数据库”,在弹出的窗口中输入数据库名称(如图2所示),然后单击“确定”,就完成了数据库的建立。
数据库应用基础实验报告7

数据库应用基础实验报告
实验七存储过程创建与应用
班级 2009123 学号 2009 姓名
一、实验目的
使学生理解存储过程的概念, 掌握创建存储过程的使用、执行存储过程和查看、修改、删除存储过程的方法。
二、实验内容
(1)利用SQL Server ManagementStudio创建存储过程book_db, 要求实现如下功能: 在“图书信息系统”数据库中查询书名中包含“数据库”3个字的图书的图书编号和名称;调用存储过程book_db;
(2)利用SQL命令窗口创建名为proc_exp的带参存储过程, 要求实现: 从图书表中返回指定图书编号的图书的所有信息。
调用存储过程proc_exp, 输入图书编号, 显示图书的所有信息。
(3)修改存储过程proc_exp, 为按照图书的书名精确匹配查找图书信息。
(4)删除刚刚创建的book_db和proc_exp两个存储过程。
三、问题讨论
1. 相比在本地存储SQL程序, 使用存储过程有什么优点?
答:1, 允许标准组件式编程;2, 能够实现较快的执行速度;3, 减少网络流量;4, 可以作为一种安全机制来充分利用。
2. 触发器的作用是什么?
答: 触发器的作用是实现由主键和外键所不能保证的复杂的参照完整性和数据一致性。
数据库实验

实验一:建立数据库及基本表实验报告一、实验目的1、了解SQL Server数据库的逻辑结构和物理结构;2、了解SQL Server的基本数据类型;3、学会在企业管理器中创建数据库和表;4、使用SQL查询分析器用CREATE、DROP、ALTER语句创建和删除数据库,创建、删除、更新基本表。
二、实验内容1、创建数据库和查看数据库属性。
2、创建表。
3、查看和修改表结构。
4、熟悉企业管理器和查询分析器工具的使用方法三、实验步骤1、在企业管理器中创建数据库和数据表。
(1)使用企业管理器建立销售数据库,数据库名为sales,初始大小为10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。
数据库的逻辑文件名和物理文件名均采用默认值。
详细步骤:1启动sql server企业管理器,展开服务器,单击“数据库”,选择“操作”菜单中的“新建数据库”。
2单击数据库属性窗口的“常规”选项卡,在“名称”文本框中输入数据库的名称“sales”。
3单击“数据文件”选项卡,此处可以修改数据文件存储的路径。
(将路径修改为:“E:\”)。
4将文件初始大小改为10MB,最大改为50MB,选中“文件自动增长”,增长方式是按5%比例增长。
5单击“事务日志”,修改路径,修改初始大小为2MB,最大改为5MB,选中“文件自动增长”,按1MB增长。
6单击“确定”,完成数据库的创建。
(2)在企业管理器中查看图书管理数据库的属性,并进行修改,使之符合要求。
(3)通过企业管理器,在建好了销售数据库sales中建立职工(employee)、物资(goods)和销售(sell)3个表,其结构为:职工(编号,姓名,性别,部门,电话,地址);物资(商品编号,商品名称,生产厂家,进货价,零售价,数量,进货时间);销售(销售编号,商品编号,数量,售出时间,售货员工编号);创建上述三个表的步骤:1展开服务器,数据库,展开建立数据库所在的数据库。
数据库技术实验实训报告

一、实验实训目的1. 理解数据库技术的概念、原理和方法。
2. 掌握数据库设计、创建、管理和维护的基本技能。
3. 熟悉数据库查询语言SQL的使用。
4. 学会使用数据库开发工具进行数据库应用系统的开发。
二、实验实训内容1. 数据库设计- 实验内容:设计一个简单的学生信息数据库,包括学生表、课程表、成绩表等。
- 实验步骤:1) 使用E-R图工具绘制数据库概念结构图。
2) 将E-R图转换为关系模式,确定实体、属性和关系。
3) 使用数据库设计工具(如PowerDesigner)创建数据库结构。
4) 在数据库中创建表,并设置主键、外键等约束。
2. 数据库创建与维护- 实验内容:创建一个学生信息数据库,并对其进行基本维护操作。
- 实验步骤:1) 使用SQL语句创建学生信息数据库。
2) 使用SQL语句创建学生表、课程表、成绩表等。
3) 使用SQL语句插入、删除、修改和查询数据。
4) 使用SQL语句进行数据库备份和恢复。
3. 数据库查询- 实验内容:使用SQL查询语言对学生信息数据库进行查询操作。
- 实验步骤:1) 使用SELECT语句进行简单查询,如查询学生姓名和年龄。
2) 使用WHERE子句进行条件查询,如查询成绩在80分以上的学生。
3) 使用JOIN语句进行多表查询,如查询学生的姓名、课程名称和成绩。
4) 使用ORDER BY子句进行排序,如按成绩降序查询学生。
4. 数据库编程- 实验内容:使用Transact-SQL编程语言编写存储过程和触发器。
- 实验步骤:1) 创建一个存储过程,实现学生信息的插入、删除和修改。
2) 创建一个触发器,当学生信息表中的数据发生变化时,自动更新其他相关表的数据。
5. 数据库应用系统开发- 实验内容:使用数据库开发工具(如Visual Studio)开发一个简单的学生信息管理系统。
- 实验步骤:1) 使用数据库连接控件连接到数据库。
2) 使用数据绑定控件显示数据库中的数据。
3) 使用事件驱动编程实现数据的新增、修改、删除和查询等功能。
数据库实验报告

数据库实验报告《数据库系统概论》实验指导书2012-8-30⽬录实验⼀数据库服务器的连接及数据库的建⽴ (1)实验⼆简单SQL查询及数据库多表查询 (12)实验三视图、索引、存储过程和触发器的使⽤ .. 22实验四 E-R模型与关系模型的转换 (30)实验五维护数据的完整性(选做)错误!未定义书签。
实验六事务管理(课后选做)错误!未定义书签。
实验七数据库的备份与恢复(课后选做)错误!未定义书签。
实验⼀数据库服务器的连接及数据库的建⽴⼀、实验⽬的:了解连接数据库服务器的⾝份验证模式,熟悉样例数据库。
掌握DBMS中利⽤界⾯进⾏建库建表操作。
⼆、实验准备:数据模型由三个要素组成:数据结构、数据操作和完整性约束。
1、数据结构数据结构⽤于描述系统的静态特性,是所研究的对象类型的集合。
数据模型按其数据结构分为层次模型、⽹状模型和关系模型。
2、数据操作数据操作⽤于描述系统的动态特性,是指对数据库中各种对象的实例允许执⾏的操作的集合,包括操作及有关的操作集合。
3、数据的约束条件数据的约束条件是⼀组完整性规则的集合。
完整性规则是给定的数据及其联系所具有的制约和存储规则,⽤以限定符合数据库状态以及状态的变化,以保证数据的正确、有效和相容。
数据库系统的三级模式结构数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级组成。
1、外模式。
外模式也称⼦模式或⽤户模式,它是数据库⽤户(包括应⽤程序员和最终⽤户)看见和使⽤的局部数据的逻辑结构和特征的描述,是数据库⽤户的数据视图,是与某⼀应⽤有关的数据的逻辑表⽰。
⼀个数据库可以有多个外模式。
2、模式。
模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有⽤户的公⽤数据视图。
⼀个数据库只有⼀个模式。
3、内模式。
内模式也称存储模式,它是数据物理和存储结构的描述,是数据在数据库内部的表⽰⽅式。
⼀个数据库只有⼀个内模式。
DBMS的功能1、数据定义数据定义包括定义构成数据库结构的外模式、模式和内模式,定义各个外模式与模式之间的映射,定义模式与内模式之间的映射,定义有关的约束条件(例如,为保证数据库中数据具有正确语义⽽定义的完整性规则,为保证数据库安全⽽定义的⽤户⼝令和存取权限等)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一.实验目的
熟练掌握SQL Server中变量、数据类型和表达式的定义和使用,掌握Transact—SQL中常用系统函数的使用,掌握流程控制语句和结构化程序设计方法,掌握分行处理表中记录机制以及利用游标对数据进行查询、修改和删除的方法。
二.实验准备
1.物理准备:安装了SQL sever的计算机一台,连接服务器;2.实验指导书:《数据库技术与应用》蓝皮书;
3.理论准备:掌握以下基础知识:
(1)T ransact—SQL中变量、数据类型和表达式的使用。
(2)T ransact—SQL中常用系统函数的使用。
(3)利用程序控制语句实现结构化程序设计。
(4)利用游标分行处理机制实现数据的定位、查询、修改和删除三.实验题目
(1)定义局部变量@max,@min接收学生表studinfo中的最大出生日期和最小出生日期的查询结果。
实验过程:编写Transact—SQL语句
declare @max char(30),@min char(30)
select @max=max(出生日期) , @min=min(出生日期)
from student_xuesheng
select @max as 最大,@min as 最小
运行结果:
(2)在学生表studinfo中增加一个字段,利用系统函数与出生日期信息计算每个同学的年龄。
实验过程:编写Transact—SQL语句
分析:先增加年龄字段,再将函数运算之后的年龄添加进去
--alter table student_xuesheng
--add 年龄 int
--GO
if exists(select 出生日期 from student_xuesheng where 出生日期 is not null)
begin
update student_xuesheng set 年龄=year(getdate())-year(出生日期)
end
运行结果:
(3)查询选课表SC,根据分数所属区间确定该成绩的等级,如分数≥90,则显示A,80≤分数<90,则显示B,70≤分数<80,则显示C,60≤分数<70,则显示D,分数<60,则显示E。
实验过程:编写Transact—SQL语句
select 成绩 as score ,
case
when 成绩>=90 then 'A'
when 成绩>=80 and 成绩<90 then 'B'
when 成绩>=70 and 成绩<80 then 'C'
when 成绩>=60 and 成绩<70 then 'D'
when 成绩<60 then 'E'
END AS 等级
from student_xuanke
运行结果:
(4)查询文学院的学生信息,若查询学生表中有文学院的学生,则将这些学生信息显示在屏幕上,否则显示“目前没有文学院学生!”。
实验过程:编写Transact—SQL语句
if exists(select * from student_xuesheng where 所在系='文学院')
begin
print'文学院学生信息如下:'
select * from student_xuesheng where 所在系='文学院'
end
else
print'目前没有文学院学生!'
表中信息:
运行结果:
(5)利用流程控制语句计算1~100之间的素数之和。
实验过程:编写Transact—SQL语句
declare @m tinyint ,@i tinyint ,@sum int
set @m=1
set @sum=0
while @m<=100
begin
set @i=2
while @i<=sqrt(@m)
begin
if (@m%@i=0)
break
set @i=@i+1
end
if(@i>sqrt(@m))
begin
set @sum=@sum+@m
end
end
select @sum as 和
declare @m int ,@i int,@n int ,@sum int set @sum=1
set @i=1
while @i<=10
begin
set @m=2
set @n=0
while @m<@i/2
begin
if @i%@m=0
begin
set @n=1
break
end
set @m=@m+1
end
if @n=0
begin
set @sum=@sum + @i
end
set @i = @i+2
end
select @sum as 和
运行结果:。