数据库系统概论实验报告五

合集下载

数据库原理与应用实验五报告

数据库原理与应用实验五报告

数据库系统概论实验报告(五)姓名:田垒班级学号: 2010080405226学院:信息学院专业:计算机科学与技术2010年12月12日实验五、用户自定义函数一、实验目的学习、掌握用户自定义函数的建立和使用二、实验平台操作系统:Windows 2000或者Windows XP。

数据库管理系统:Microsoft SQL Server 2000 或Microsoft SQL Server 2005。

三、实验内容1、创建自定义函数创建一个用户自定义函数,并测试、查看函数返回值。

USE NorthwindGOCREATE FUNCTION fn_TaxRate(@ProdID INT)RETURNS numeric(5,4)ASBEGINRETURN(SELECTCASE CategoryIDWHEN 1 THEN 1.10WHEN 2 THEN 1WHEN 3 THEN 1.10WHEN 4 THEN 1.05WHEN 5 THEN 1WHEN 6 THEN 1.05WHEN 7 THEN 1WHEN 8 THEN 1.05ENDFROM ProductsWHERE ProductID = @ProdID)ENDGOSELECT ProductName, UnitPrice,Northwind.dbo.fn_TaxRate(ProductID) AS TaxRate,UnitPrice * Northwind.dbo.fn_TaxRate(ProductID) AS PriceWithTax FROM Products结果:注意:函数可以在Select子句后面调用。

2、返回值为多值的自定义函数创建函数返回多列多值。

USE NorthwindGOCREATE FUNCTION fn_LargeFreight(@FreightAmt money)RETURNS TABLEASRETURN( SELECT S.ShipperID, panyName,O.OrderID, O.ShippedDate, O.FreightFROM Shippers AS S JOIN Orders AS OON S.ShipperID = O.ShipViaWHERE O.Freight > @FreightAmt)SELECT * FROM fn_LargeFreight(600)结果:3、返回值为多值的自定义函数本实验创建的函数也是返回多列多值,注意与上面实验的差别。

数据库系统概论实验报告

数据库系统概论实验报告

数据库系统概论实验报告一、实验目的1、了解数据库系统概论的定义、特点及应用;2、掌握数据库系统的结构及功能;3、熟悉SQL语言及其语法;4、掌握数据库系统的基本操作;5、掌握数据库查询、更新、分析及设计。

二、实验要求1、掌握数据库系统的基本概念,理解SQL语言的语法及用法;2、熟练掌握常用数据库系统的基本操作,实现常用的数据库查询、更新、分析及设计;3、掌握数据库系统的结构及功能;4、能够使用SQL语言编写复杂的查询和更新语句;5、能够实现复杂的数据库分析和设计。

三、实验内容1、理解数据库系统的定义、特点及应用;2、熟悉SQL语言的语法及用法;3、掌握数据库系统的基本操作;4、实现数据库查询、更新、分析及设计。

四、实验步骤1、准备实验数据库:在实验中使用的数据库是SQL Server 2000;2、用SQL语言完成数据表的构建工作:建立实验所需的数据表,分析实验的表结构,在数据库中建立实验所需的表格;3、用SQL语言完成数据操作工作:对实验数据库中表进行查询、插入、更新、删除等操作;4、用SQL语言进行数据报表输出,检查实验数据库中的数据是否正确;5、用SQL语言完成数据分析和设计:分析实验表格中的数据,根据实验的需要进行数据库的设计,进行数据的分析和挖掘;6、完成实验报告:按照实验要求,写出实验报告,给出实验结果,及讨论数据库实验中遇到的问题及解决方案。

五、实验总结本次实验使用的是SQL Server 2000的数据库,学习运用SQL语言完成数据库的基本操作,熟练掌握常用的查询、插入、更新、删除、分析及设计的技能,深入理解数据库系统及其实现的机理,提高对数据库的操作能力。

通过本次实验,加深了对数据库系统的概念、应用及理论的认识,为今后更加深入的学习、研究、实践打下了坚实的基础。

《数据库系统概论》实习报告

《数据库系统概论》实习报告

西南大学(荣昌)信息管理系《数据库系统概论》课程设计报告学生姓名:学号:专业班级:指导教师:2011 年11月11日1.教学实习目的本文根据《数据库系统概论》实验课程要求而做的。

课程作业要求如下:通过对《数据库系统概论》这门课程的学习和了解,我们对管理、信息、系统三者之间的关系有了一个初步的认识;理论的东西我们在学习的过程中已经杰出的到了,然而空有理论的基础没有实践的付出是远远不够的。

这就要求我们学会理论联系实际开发出管理信息系统。

要求应用到一些基本的开发工具如:Microsoft Visual Studio 2005.Visual Basic VB开发语言. Visual Basic 2005 window窗体控制界面. Sql2005数据库等等。

1.教学实习题目描述和要求选择开发一个简单的图书馆管理系统1题目基本思路描述:开发的图书馆管理系统是为了减轻平时人们手工操作的不便、同时也是为了方便大家;随着电子计算机和通信技术的发展,人类已经逐渐地进入信息化社会。

对信息的需求日益增加,图书馆业务收到了强烈的冲击,传统的手工管理方式已不呢不能适应信息管理的需求。

如何利用现有的科学技术条件,提高图书信息的管理效率是需要考虑的问题。

图书管理信息系统是典型的信息管理系统,其开发主要包括前端应用程序的设计和后台数据库的建立及维护两方面。

对于前者,要求应用程序功能完备、易于使用;而对于后者,则要求数据库具体有一致性、完整性、安全性等特点。

2、作业目标和要求:由于目前大部分图书馆都面临着一个共同的问题图书馆馆存图书量大,查询起来费时费力,而且专业图书所占的比重小,管理方法简单图书的利用率低,管理成本高,图书的可利用率和安全性偏低;为了克服上述这些诸多不变的问题,这就要求我们在信息技术高速发展的今天,充分应用起自己所学的专业知识,研发出一个新的系统来能够科学合理的管理图书,达到既省时又省力的状态;所以图书馆只有运用网络技术,通过信息系统的开发,在图书馆之间互通有无,有利于提高图书的利用率。

数据库系统实验课实验报告

数据库系统实验课实验报告

数据库系统实验课实验报告一、实验目的数据库系统实验课是一门重要的实践课程,旨在通过实际操作和实验,深入理解数据库系统的原理和应用,提高我们的数据库设计、管理和应用开发能力。

本次实验的具体目的包括:1、熟悉数据库管理系统(DBMS)的操作环境和基本命令。

2、掌握数据库的创建、表的设计、数据的插入、查询、更新和删除等基本操作。

3、学会使用 SQL 语句进行复杂的数据查询和数据处理。

4、理解数据库的完整性约束、索引和存储过程的概念及应用。

5、培养解决实际数据库问题的能力和团队协作精神。

二、实验环境本次实验使用的数据库管理系统是 MySQL 80,实验在 Windows 10 操作系统上进行。

使用的开发工具包括 MySQL Workbench 和命令行终端。

三、实验内容1、数据库的创建使用 CREATE DATABASE 语句创建了一个名为“student_management”的数据库,用于存储学生管理相关的数据。

2、表的设计在“student_management”数据库中,设计了以下几张表:“students”表,包含学生的学号(student_id)、姓名(student_name)、性别(gender)、年龄(age)等字段。

“courses”表,包含课程的课程号(course_id)、课程名称(course_name)、学分(credit)等字段。

“enrolls”表,用于记录学生选课的信息,包含学号(student_id)、课程号(course_id)、成绩(grade)等字段。

在设计表时,为每个字段选择了合适的数据类型,并设置了主键和外键约束,以保证数据的完整性和一致性。

3、数据的插入使用 INSERT INTO 语句向“students”、“courses”和“enrolls”表中插入了一些示例数据,以便进行后续的查询和操作。

4、数据的查询使用简单的 SELECT 语句查询了“students”表中的所有学生信息。

数据库系统概论第版实验报告

数据库系统概论第版实验报告

数据库系统概论第版实验报告《数据库系统概论第版实验报告》一、实验目的本次实验旨在深入理解数据库系统的基本概念和原理,通过实际操作掌握数据库的设计、创建、管理和查询等关键技术,提高对数据库系统的应用能力和问题解决能力。

二、实验环境本次实验使用的软件工具为_____数据库管理系统,运行环境为_____操作系统。

三、实验内容与步骤(一)数据库设计1、需求分析通过对实际问题的调研和分析,确定数据库需要存储的信息和数据之间的关系。

例如,对于一个学生管理系统,需要存储学生的基本信息、课程信息、成绩信息等,并且明确这些信息之间的关联。

2、概念结构设计运用 ER 图(实体联系图)来描述数据库的概念模型。

确定实体、属性和实体之间的联系,清晰地展现数据库的整体结构。

3、逻辑结构设计将 ER 图转换为关系模型,确定表的结构,包括表名、列名、数据类型和约束条件等。

4、物理结构设计根据数据库管理系统的特点和性能要求,选择合适的存储结构和索引,优化数据库的物理存储。

(二)数据库创建使用 SQL 语句在数据库管理系统中创建数据库、表以及定义约束条件。

例如:```sqlCREATE DATABASE student_management;CREATE TABLE students (student_id INT PRIMARY KEY,name VARCHAR(50),age INT);```(三)数据录入向创建好的表中插入数据,以验证数据库的结构和功能。

可以通过手动输入数据或者使用批量导入的方式。

(四)数据查询与操作1、简单查询使用 SELECT 语句进行简单的数据查询,如查询所有学生的信息、查询特定条件下的学生信息等。

```sqlSELECT FROM students;SELECT FROM students WHERE age > 18;```2、连接查询通过连接多个表获取更复杂的数据,如查询学生的成绩信息以及对应的课程信息。

数据库系统概论-SQL语言实验报告

数据库系统概论-SQL语言实验报告

数据库系统概论学号:姓名:班级:指导老师:(一)实验目标通过“数据库系统概论”书本知识学习和“数据库原理与应用”课程教学所授知识对“教学管理系统”实验内容进行分析,建立相应的数据库、数据表、数据视图以及相应的界面程序,利用SQL结构化查询语言提供的数据操纵功能,编程设计实现对数据的定义、修改、删除、查询、更新以及控制等操作,并按照实验指导书的各项要求完成实验。

(二)实验说明1. 在工作站计算机的硬盘D盘符下,请同学们建立以自己名字命名的子目录(可以是汉字名,也可以是汉语拼音字母)。

再在此子目录下,建立用于存放上机实验文件的相关子目录,它们是\DATA;\PROGS 等,Data目录用来存放“教学管理系统”数据库文件。

Progs用来存放实验中的SQL语句和执行结果。

如用“萨师煊”的汉语拼音的第一个字母组成的“SSX”在D盘上建立目录后的结果是:D:\SSX\DATA; D:\SSX\PROGS 等。

2. 本课程实验要利用数据库管理系统SQL SEVER 2000进行实验,每台计算机上都已经安装好了微软公司的SQL Server 2000数据库管理系统,请熟悉SQL SEVER 2000的同学,根据SQL SEVER提供的客户端编程界面按照实验要求完成实验。

3. SQL Server 2000的安装过程见附录,建议同学们在自己的电脑上进行安装,熟悉安装过程及安全性设置。

在数据库身份验证模式上,建议使用混合模式。

实验一:设计数据库、数据表和数据视图并编程实现1. 目的要求(1)这是一个验证性实验。

(2)利用所学E-R数据模型图概念,描述“学生管理”系统中数据表之间以及各数据项之间的联系。

并按照课程教学大纲要求,转化相关E-R图为关系模型中对应的二维表,指出每个数据表中的关键字、索引项、外码以及表中需要满足完整性约束条件;(3)对照关系模型中(1:1)、(1:n)、(m:n)实体联系,指出各数据表实体属于哪一类联系。

数据库系统概论实验报告

数据库系统概论实验报告

《数据库系统概论》上机实验报告院(系)名称:管理工程学院学生姓名:霍佳佳专业名称:电子商务1101班级学号:02112008提交时间: 2012年 12 月 6 日目录实验一MSSQL SERVER2000环境及主要工具 (3)实验二数据定义 (5)实验三数据更新 (10)实验四数据完整性 (13)实验五索引与视图 (17)实验六数据查询 (23)实验一MSSQL SERVER 2000 环境及主要工具一、实验目的:1.了解MSSQL SERVER 2000 提供的各种工具及其功能。

2.掌握企业管理器(Enterprise Manager)、服务管理器(Service Manager)、查询分析器(Query Analyzer)及联机文档(Books Online)的基本操作。

3.掌握通过企业管理器启动、关闭、注册和配置服务管理。

二、实验时间:2012-10-18三、实验内容及步骤:1.从开始菜单打开MSSQL SERVER 2000的服务管理器,设置其服务器为本机服务器,服务为SQL Server,并启动该服务器。

练习SQL Server 2000服务的开始、暂停、继续、停止等操作。

2.从开始菜单打开MSSQL SERVER 2000企业管理器,并将企业管理器与上述启动的服务器连接。

3.对企业服务器进行配置,将其在操作系统启动时自动启动SQL Server 的功能去掉;先将其身份验证修改为Windows和SQL Server 共同验证,再修改为Windows验证。

4.观察企业管理器的各个组成部分,练习有关的操作。

5.打开查询分析器,观察查询分析器的组成部分,练习有关的操作。

6.练习SQL Server 2000的联机丛书的使用,并使用联机丛书学习自己感兴趣的知识。

四、实验结果分析及总结1.了解并掌握MSSQL SERVER 2000提供的各种工具及其功能2.成功打开并运行MSSQL SERVER 2000的服务管理器、企业管理器和查询分析器等,并已熟练掌握其相关基本操作。

数据库系统概论实验报告

数据库系统概论实验报告

《数据库系统概论》实验报告班级学号_ KT1073-2-39 姓名_ 王敏_ 指导老师 __ 杨林 _ _目录实验一数据库服务器的连接及数据库的建立 (1)实验二简单SQL查询及数据库多表查询 (3)实验三视图、索引、存储过程和触发器的使用.. 10实验四 E-R模型与关系模型的转换 (18)注意事项:报告最好双面打印,排版要美观大方,可以手写或交打印稿Email:netdoc@实验一数据库服务器的连接及数据库的建立1.1实验名称:数据库服务器的连接及数据库的建立1.2实验类型:验证型1.3实验学时:3h1.4实验目的:了解连接数据库服务器的身份验证模式,熟悉样例数据库。

掌握DBMS中利用界面进行建库建表操作。

1.5实验准备:1.5.1 数据模型1.5.2 数据库系统的三级模式结构1.5.3 DBMS的功能1.6实验内容1.6.1熟悉网络环境和数据库环境1.向输入表中的记录:(每个表最少5条记录,其中一条是与自己相关的真实记录)1.7思考题:1、从用户角度看,数据库系统都有哪些体系结构?2、数据库管理系统通常由哪几部分组成?3、如何用SQL语句完成上述的工作?1.答:库最终用户角度看,数据库系统的结构分为单用户结构、主从式结构、分布式结构、客户/服务器、浏览器/应用服务器/数据库服务器多层结构。

这是数据库外部体系结构。

物理存储结构、逻辑存储结构、内存结构和实例进程结构。

这是内部体系结构。

2.答:数据库管理系统,又称DBMS,通常由数据定义语言及其翻译处理程序、数据操纵语言及其编译程序、数据库运行控制程序、使用程序四部分构成。

3.答:首先创建数据库SQL语句,创建自己的数据库;然后创建表结Department,Class,Student,Course,Grade;再打开Microsoft SQL Server 2000查询分析器,输入要求的语句,点击运行,命令已成功完成。

insert into classvalues('0446312',11,'信管044',null,null,'本科',2004,22)insert into departmentvalues(11,'计算机及信息工程','计算机','8762898','张太红',22)insert into studentvalues('044631201','0446312','王泊','男','1981-03-11',null,null,null)insert into coursevalues('26110033','fff',3,2,5)insert into gradevalues('044631201','26110033',85)1.8 实验心得(不少于50字)答:实验一比较简单,主要是让我们掌握DBMS中利用界面进行建库建表操作。

数据库实验报告:实验五

数据库实验报告:实验五

数据库实验报告:实验五一、实验目的本次数据库实验五的主要目的是深入了解和掌握数据库的高级操作,包括存储过程的创建与使用、视图的定义和应用、以及事务处理的原理和实践。

通过这些实验内容,提高我们对数据库系统的综合运用能力,为解决实际的数据库管理问题打下坚实的基础。

二、实验环境本次实验使用的数据库管理系统是 MySQL 80,开发工具为 Navicat Premium 12。

操作系统为 Windows 10 专业版。

三、实验内容及步骤(一)存储过程的创建与使用1、创建一个名为`get_student_info` 的存储过程,用于根据学生学号查询学生的基本信息(包括学号、姓名、年龄、性别和专业)。

```sqlDELIMITER //CREATE PROCEDURE get_student_info(IN student_id INT)BEGINSELECT FROM students WHERE student_id = student_id;END //DELIMITER ;```2、调用上述存储过程,查询学号为 1001 的学生信息。

```sqlCALL get_student_info(1001);```(二)视图的定义和应用1、创建一个名为`student_grade_view` 的视图,用于显示学生的学号、姓名和平均成绩。

```sqlCREATE VIEW student_grade_view ASSELECT sstudent_id, sname, AVG(ggrade) AS average_gradeFROM students sJOIN grades g ON sstudent_id = gstudent_idGROUP BY sstudent_id, sname;```2、查询上述视图,获取所有学生的平均成绩信息。

```sqlSELECT FROM student_grade_view;```(三)事务处理1、开启一个事务,向学生表中插入一条新的学生记录(学号:1005,姓名:_____,年龄:20,性别:男,专业:计算机科学)。

数据库实验报告

数据库实验报告

计算机与信息学院数据库系统概论实验报告专业班级学生姓名及学号课程教学班号任课教师实验指导教师实验地点三号实验楼第四机房2012 ~2013 学年第二学期实验1 使用向导创建和删除数据库一、实验目的1.熟悉SQL Server 中SQL Server Management Studio的环境2.了解SQL Server 数据库的逻辑结构和物理结构3.掌握使用向导创建和删除数据库的方法二、实验要求1.熟练使用SSMS进行数据库的创建和删除操作。

2.完成实验报告。

三、实验内容设有一学籍管理系统,其数据库名为“EDUC”。

初始大小为 10MB,最大为50MB,数据库自动增长,增长方式是按5%比例增长;日志文件初始为2MB,最大可增长到5MB,按1MB增长。

数据库的逻辑文件名为“student_data”, 物理文件名为“student_data.mdf,存放路径为“E:\sql_data”(注意:此文件名必须已经建立的前提下才可以此操作)。

日志文件的逻辑文件名为“student_log”, 物理文件名为“student_log.ldf”,存放路径为“E:\sql_data”。

四、实验步骤1.使用SQL Server Management Studio(简称SSMS)创建数据库。

(1)启动SSMS在开始菜单中:所有程序-SQL Server 2005 -SQL Server Management Studio单击“连接”按钮,便可以进入【SQL Server Management Studio】窗口。

如果身份验证选择的是“混合模式”,则要输入sa的密码。

(2)建立数据库在“对象资源管理器”窗口,建立上述数据库EDUC。

在数据库节点上右击选择新建。

同时建立一个同样属性的数据库EDUC1。

2. 使用向导删除上面建立的数据库。

用SSMS删除建立的数据库EDUC。

3、数据库的分离将刚建好的数据库分离出来,即点击新建的EDUC——任务——分离,将删除连接和更新打一个钩,然后点击确定。

《数据库系统概论》实验报告

《数据库系统概论》实验报告

图 2 选择安装类型(3)查看设置信息。

如图 3 所示,这是拷贝文件之前的最后一个对话框,显示了用户 在安装过程中设定的安装选项:第一项是用户的注册信息;第二项是安装路径;第三项是安 装的组件,显示用户选择的组件。

若要修改这三项的内容,可以点击【上一步】,返回前面 的对话框中修改。

如果设置正确则选择【下一步】进行安装。

图 3 查看设置信息(4)初始化数据库。

一般而言,若用户选择安装了"服务器",在安装的最后,将进行初始化数据库。

用户可以修改初始化的默认选项,点击【确定】,直到初始化进行完毕。

(5)安装结果。

在安装完成后,KingbaseES 中用户选择的组件都装在安装路径下,同时完成注册文件的配置。

并在『开始』│『程序』菜单中生成『KingbaseES V4.1』程序组。

重启后,数据库的监听服务将自动启动,并且修改的环境变量生效。

以上五步就完成了 KingbaseES 的安装。

2.数据库服务的启动和停止。

在正确安装 KingbaseES V4.1 后,数据库服务会在系统启动时自动加载。

如果需要手动地启动和停止数据库服务,可以通过“控制服务器”来进行管理。

启动服务:(1)选择“开始”—〉“程序”—〉“KingbaseES V4.1”—〉“控制管理器”。

(2)在“可用服务器”下拉列表中选择要启动的 KingbaseES 服务器,输入正确的用户名、密码、端口值,点击【启动】按钮。

注意:KLS 初始的用户名和密码分别是“KLS”和“INTERNAL”。

(3)如果用户名、密码、端口正确,可以先点击一下【刷新】按钮,以查看远程服务器是否已经在指定端口上启动;启动与否的状态可以从“KingbaseES 启动状态图标”和【启动】、【停止】按钮的状态知晓。

(4)如果用户名、密码、端口均正确但启动不成功,请检查:远程服务器上是否有一个“kls”(Windows 系统进程名为“KLSW”)的进程存在,如果不存在,请在KingbaseES 的安装目录中找到此文件,启动它。

《数据库概论》实验报告

《数据库概论》实验报告

《数据库系统概论》实验报告书数据库实验报告专业班级网131学号139074284姓名卓东洋指导教师周兵安徽工业大学计算机科学与技术学院实验一:数据定义语言[ 实验日期 ] 2015 年 11 月 10 日[ 实验目的 ]熟悉Oracle上机环境及Oracle客户端的配置;熟练掌握和使用DDL语言,建立、修改和删除数据库表、主键、外键约束关系和索引。

[ 实验要求 ]①熟悉Oracle上机环境,掌握Oracle客户端的配置;②建立数据库表,修改数据库表结构,建立、删除索引;[ 实验方法 ]①按照附录中的操作步骤进行客户端的配置;②将实验需求用SQL语句表示;③执行SQL语句;④查看执行结果,如果结果不正确,进行修改,直到正确为止。

[ 实验内容 ]Oracle上机环境以及Oracle客户端的配置参见附录。

1. SQL数据定义语句:例1-1: (建立数据库表) 建立教学数据库的四个数据库表,其中Student表中不包含SSEX(C,2) 字段,Sname 字段为Sname(C,8)且可为空。

表一:学生表主关键字:SNO表二课程名称表表三:教师授课表表四:学生成绩表例1-2: (修改数据库表) 在Student表中增加SEX(C,2) 字段。

例1-3: (修改列名) 将Student表中列名SEX修改为SSEX。

例1-4: (修改数据库表) 将Student表中把Sname 字段修改为Sname(C,10)且为非空。

例1-5: (建立索引) 为Score表按课程号升序、分数降序建立索引,索引名为SC_GRADE。

例1-6: (删除索引) 删除索引SC_GRADE。

例1-7: (建立数据库表) 建立数据库表S1(SNO,SNAME,SD,SA),其字段类型定义与Student表中的相应字段(SNO,SNAME,SDEPT,SAGE)的数据类型定义相同。

例1-8: (修改数据库表) 删除成绩表Score的参照完整性约束关系。

数据库系统概论实训报告

数据库系统概论实训报告

一、实训目的通过本次数据库系统概论实训,使学生对数据库系统基本概念、原理、技术和应用有深入的理解,掌握数据库系统设计和实现的基本方法,提高数据库系统应用能力。

二、实训内容1. 数据库系统基本概念(1)数据库:存储在计算机系统中长期存取的数据集合,具有数据结构化、共享性高、冗余度低、易于扩充等特点。

(2)数据库管理系统(DBMS):位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。

(3)数据模型:用于抽象、表示和处理现实世界中具体的人、物、活动、概念的工具,分为概念模型、逻辑模型和物理模型。

2. 数据库系统设计(1)需求分析:了解用户需求,确定系统功能、性能、安全等要求。

(2)概念结构设计:使用E-R图描述实体、属性和实体间的关系。

(3)逻辑结构设计:将概念模型转换为逻辑模型,如关系模型。

(4)物理结构设计:将逻辑模型转换为物理模型,如数据库表结构设计。

3. 数据库系统实现(1)数据库表设计:根据逻辑结构设计,创建数据库表,包括字段类型、长度、约束等。

(2)视图设计:根据实际需求,创建视图,实现数据查询、统计等功能。

(3)存储过程和触发器设计:提高数据库性能,实现业务逻辑。

(4)数据备份与恢复:确保数据安全,防止数据丢失。

4. 数据库系统应用(1)数据查询:使用SQL语句进行数据查询,如SELECT、WHERE、GROUP BY等。

(2)数据插入、更新、删除:使用SQL语句进行数据操作,如INSERT、UPDATE、DELETE等。

(3)数据库安全与权限管理:设置用户权限,保证数据安全。

三、实训过程1. 安装数据库管理系统:使用Heidisql图形化工具,安装MySQL数据库管理系统。

2. 创建数据库:创建名为“EDUC”的数据库,用于存放学生、课程、成绩等信息。

3. 设计数据库表结构:根据需求分析,设计学生表、课程表、成绩表等表结构。

4. 创建视图:根据需求,创建视图,如学生课程视图、成绩排名视图等。

数据库实验报告范本(3篇)

数据库实验报告范本(3篇)

第1篇实验名称:数据库设计与实现实验日期:2023年4月15日实验班级:计算机科学与技术专业1班实验学号:12345678一、实验目的1. 理解数据库设计的基本原理和方法。

2. 掌握数据库概念结构、逻辑结构和物理结构的设计。

3. 学会使用数据库设计工具进行数据库设计。

4. 能够使用SQL语句进行数据库的创建、查询、更新和删除等操作。

二、实验内容1. 数据库概念结构设计- 分析需求,确定实体和实体间的关系。

- 设计E-R图,表示实体、属性和关系。

2. 数据库逻辑结构设计- 将E-R图转换为关系模式。

- 设计关系模式,确定主键、外键等约束。

3. 数据库物理结构设计- 选择合适的数据库管理系统(DBMS)。

- 设计数据库表结构,包括字段类型、长度、索引等。

- 设计存储策略,如数据文件、索引文件等。

4. 数据库实现- 使用DBMS创建数据库。

- 创建表,输入数据。

- 使用SQL语句进行查询、更新和删除等操作。

三、实验步骤1. 数据库概念结构设计- 分析需求,确定实体和实体间的关系。

- 设计E-R图,表示实体、属性和关系。

2. 数据库逻辑结构设计- 将E-R图转换为关系模式。

- 设计关系模式,确定主键、外键等约束。

3. 数据库物理结构设计- 选择合适的数据库管理系统(DBMS)。

- 设计数据库表结构,包括字段类型、长度、索引等。

- 设计存储策略,如数据文件、索引文件等。

4. 数据库实现- 使用DBMS创建数据库。

- 创建表,输入数据。

- 使用SQL语句进行查询、更新和删除等操作。

四、实验结果与分析1. 数据库概念结构设计- 实体:学生、课程、教师、成绩。

- 关系:学生与课程之间有选课关系,教师与课程之间有授课关系。

2. 数据库逻辑结构设计- 学生表(学号,姓名,性别,年龄,班级号)。

- 课程表(课程号,课程名,学分,教师号)。

- 教师表(教师号,姓名,性别,年龄,职称)。

- 成绩表(学号,课程号,成绩)。

数据库学习实验报告(3篇)

数据库学习实验报告(3篇)

第1篇一、实验目的本次实验旨在通过实际操作,加深对数据库基础知识的理解,掌握数据库的基本操作,包括数据库的创建、表的设计、数据的插入、查询、修改和删除等。

通过本次实验,提高对SQL语言的实际应用能力,为后续深入学习数据库知识打下坚实的基础。

二、实验环境1. 操作系统:Windows 102. 数据库管理系统:MySQL 5.73. 开发工具:MySQL Workbench三、实验内容1. 数据库的创建与删除2. 表的设计与数据类型3. 数据的插入、查询、修改和删除4. 索引与视图的应用四、实验步骤1. 数据库的创建与删除(1)创建数据库```sqlCREATE DATABASE db_student;```(2)删除数据库```sqlDROP DATABASE db_student;```2. 表的设计与数据类型(1)创建学生表```sqlCREATE TABLE student (id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50),age INT,gender ENUM('男', '女'),class VARCHAR(50));```(2)创建课程表```sqlCREATE TABLE course (id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50),credit INT);```3. 数据的插入、查询、修改和删除(1)插入数据```sqlINSERT INTO student (name, age, gender, class) VALUES ('张三', 20, '男', '计算机科学与技术');INSERT INTO course (name, credit) VALUES ('高等数学', 4);```(2)查询数据```sql-- 查询所有学生信息SELECT FROM student;-- 查询年龄大于20岁的学生信息SELECT FROM student WHERE age > 20;-- 查询课程名称为“高等数学”的课程信息SELECT FROM course WHERE name = '高等数学';```(3)修改数据```sql-- 修改学生张三的年龄为21岁UPDATE student SET age = 21 WHERE name = '张三';-- 修改课程“高等数学”的学分UPDATE course SET credit = 5 WHERE name = '高等数学';```(4)删除数据```sql-- 删除学生张三的信息DELETE FROM student WHERE name = '张三';-- 删除课程“高等数学”的信息DELETE FROM course WHERE name = '高等数学'; ```4. 索引与视图的应用(1)创建索引```sql-- 创建学生表id字段的索引CREATE INDEX idx_student_id ON student(id); -- 创建课程表name字段的索引CREATE INDEX idx_course_name ON course(name); ```(2)创建视图```sql-- 创建包含学生姓名和课程名称的视图CREATE VIEW student_course_view ASSELECT , FROM studentJOIN course ON student.class = course.id;```(3)查询视图数据```sql-- 查询视图中的数据SELECT FROM student_course_view;```五、实验总结通过本次实验,我深入了解了数据库的基本操作,掌握了SQL语言的运用。

《数据库系统概论》实验报告

《数据库系统概论》实验报告

《数据库系统概论》实验报告专业:软件工程(2)班姓名:***学号:************题目:实验二(1)交互式SQL 语言实验内容及完成情况:(写出每一种类型的SQL测试用例)(一)数据定义一、基本表操作1.建立基本表1)创建学生表Student,由以下属性组成:学号SNO(INT 型,主码),姓名SNAME(CHAR 型,长度为8,非空唯一),性别SEX(CHAR型,长度为2),所在系DEPTNO (INT型)。

CREATE TABLE Student(SNO INT PRIMARY KEY,SNAME CHAR(8) NOT NULL UNIQUE,SEX CHAR(2),DEPTNO INT);2)创建课程表Course,由以下属性组成:课程号CNO(INT型),课程名CNAME(CHAR 型,长度为20,非空),授课教师编号TNO(INT型),学分CREDIT(INT型)。

其中(CNO,TNO)为主码。

CREATE TABLE Course(CNO INT,CNAME CHAR(20) NOT NULL,TNO INT,CREDIT INT,PRIMARY KEY (CNO,TNO));3)创建学生选课表SC,由以下属性组成:学号SNO,课程CNO,成绩GRADE。

所有属性均为INT型,其中(SNO,CNO)为主码。

CREATE TABLE SC(SNO INT,CNO INT,GRADE INT,PRIMARY KEY(SNO,CNO));4)创建教师表Teacher,由以下属性组成:教师编号TNO(INT型,主码),教师姓名TNAME(CHAR型,长度为8,非空),所在系DEPTNO(INT型)。

CREATE TABLE Teacher(TNO INT PRIMARY KEY,TNAME CHAR(8) NOT NULL,DEPTNO INT);5)创建系表Dept,由以下属性:系号DEPTNO(INT型,主码),系名DNAME(CHAR 型,长度为20,非空)。

数据库系统概论实验报告(全)

数据库系统概论实验报告(全)

实验一认识DBMS 一、实验目的熟悉对DNMS的安装,搭建今后实验的平台二、实验环境Win10,MS SQL Server 2008三、实验内容与完成情况安装及搭建过程:注意这里账户名要更改为注意这里要选择混合模式,并设定系统管理员账户,方便个人账户操作数据库,提高私密性已完成第一步,下一步安装管理工具安装完后显示如下即成功安装完毕四、出现的问题及解决方案安装过程没什么问题,网上找好教程然后一步步进行即可实验二交互式SQL 一、实验目的熟悉通过SQL对数据库进行操作。

二、实验环境Win10,MS SQL Server 2008三、实验内容与完成情况(一)数据定义(1)基本表的创建、修改、删除:1、创建SPJ数据库(举例,下图为P表)2、修改:插入新的成员信息(此处使用的数据库是新的学生数据库例子)3、删除:从供应商关系中删除S2的记录,并从供应商关系中删除相应的记录deletefrom swhere sno='s2'deletefrom SPJwhere SNO='s2'由上图结果看出,s2确实被删掉了,删除操作成功(2)视图的创建、查询:1、首先建立试图create view J_sanjian(Sno,Pno,Qty)asselect Sno,Pno,Qtyfrom j,spjwhere j.jno=spj.jno and JNAME='三建'2、找出三建工程项目使用的各种零件代码及其数量select pno,sum(qty)from J_sanjiangroup by pno3、找出供应商S1的供应情况select sno,pno,qtyfrom J_sanjianwhere sno='s1'(3)索引的建立:对STUDENT表的STUDENT_ID列建立索引,在查询分析器编辑窗口中输入下列程序并执行:(此处所用的数据库也是后续操作有涉及的学生数据库)(二)数据操作(1)各类查询操作(单表查询、连接查询、嵌套查询、集合查询):1、单表查询找出所有供应商的姓名和所在城市select sname,cityfrom S2、多表查询连接查询:找出上海厂商供应的所有零件号码select pnofrom S,SPJwhere S.SNO =SPJ .SNO and s.city='上海'group by pno嵌套查询:找出没有使用天津产的零件的工程号码Select jnamefrom Jwhere jno in (select jnofrom S,SPJwhere S.SNO =SPJ .SNO and s.city='上海'group by jno)(2)各类更新操作(修改、删除):1、修改(更新)更新成员信息(此处使用的数据库是学生数据库例子)2、删除:从供应商关系中删除S2的记录,并从供应商关系中删除相应的记录deletefrom swhere sno='s2'deletefrom SPJwhere SNO='s2'由上图结果看出,s2确实被删掉了,删除操作成功(三)视图的操作(1)创建视图:在STUDENT表中,为02班建立视图V1_STU,结果如下:(2)视图的查询:查找02班女生的学号和出生日期,结果如下:实验三数据控制(安全性)一、实验目的熟悉通过SQL对数据进行安全性控制。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

山西大学计算机与信息技术学院实验报告
图5-1 图5-2
例1:
当输入Insert into Student1 values (200724108,’王阳’,‘男’, 36, ‘计算机’);
建立的触发器执行了其功能,执行结果为
例2:
create trigger ss
on student
for insert
as
begin
declare @xh smallint;
select @xh=inserted.Sage
from inserted;
if exists(select Sno from student where Sage=@xh) update student set sage=@xh+1 where Sage=@xh; end;
当执行以下语句时
use TestDB
insert into student
values('200515124','zp','男',20,'ma'); 结果中Sage为20的元组都加上了1。

例3:
创建触发器如下:
触发器所产生的效果:
例4:
创建触发器:
执行SQL语句:
结果使student表中的所有元组的sage均变为20:
思考题
在数据库Company_Data的表"项目数据表"和"员工数据表"中分别创建触发器。

(1)打开查询编辑器。

(2)在查询窗口书写CREATE TRIGGER语句,基于表"员工数据表"创建AFTER
INSERT 触发器Tigger_NewEmployeeSalary,将插入员工的工资额限制在
5000以内。

use TestDB
GO
CREATE TRIGGER Trigger_NewEmployeeSalary
ON员工数据表
AFTER INSERT
AS
IF(SELECT工资FROM inserted)> 5000
BEGIN
PRINT'新员工工资不能超过'
ROLLBACK
END
GO
点执行后触发器创建成功。

在查询编辑器中写如下语句,用于测试上述触发器是否起作用:
insert into Employee (编号,工资)values(10,6000);
点击执行后会提示以下信息(说明触发器已起到作用)
(3)在查询窗口书写CREATE TRIGGER语句,基于表"员工数据表"创建AFTER UPDATE触发器Trigger_SalaryChange,将员工工资变动额限制在2000以内。

CREATE TRIGGER Trigger_SalaryChange
ON员工数据表
AFTER UPDATE
AS
IF UPDATE(工资)
BEGIN
IF(SELECT MAX(ABS(inserted.工资- deleted.工资))
FROM inserted JOIN deleted
ON inserted.编号= deleted.编号)> 2000
BEGIN
PRINT'工资变动不能超过'
ROLLBACK TRANSACTION
END
END
点击执行后触发器就创建成功了。

在查询编辑器中写如下语句,用于测试上述触发器是否起作用:
Update 员工数据表set工资=10000 where姓名='李四';
四、实验结果及分析:
1、通过实验了解了触发器的触发过程和类型,掌握创建触发器的方法,能够根据题目要求设计出触发器。

2、在创建触发器中,系统会临时生成一个inserted或deleted表,对触发器的一些操作都用到这些表。

教师
评语。

相关文档
最新文档