数据库课程设计实验报告

合集下载

数据库实验报告完整版

数据库实验报告完整版

一、实验目的1. 掌握数据库的基本概念和原理;2. 熟悉数据库的创建、修改和删除操作;3. 掌握SQL语句的使用,包括数据查询、数据插入、数据更新和数据删除;4. 学会使用数据库管理系统进行数据管理。

二、实验环境1. 操作系统:Windows 102. 数据库管理系统:MySQL 5.73. 开发工具:Visual Studio Code三、实验内容1. 创建数据库和表(1)创建数据库```sqlCREATE DATABASE testdb;```(2)选择数据库```sqlUSE testdb;```(3)创建表```sqlCREATE TABLE students (id INT PRIMARY KEY AUTO_INCREMENT,name VARCHAR(50),age INT,gender CHAR(1),class VARCHAR(50));```2. 插入数据```sqlINSERT INTO students (name, age, gender, class) VALUES ('张三', 20, '男', '计算机科学与技术');INSERT INTO students (name, age, gender, class) VALUES ('李四', 21, '女', '软件工程');INSERT INTO students (name, age, gender, class) VALUES ('王五', 22, '男', '电子信息工程');```3. 查询数据(1)查询所有学生信息```sqlSELECT FROM students;```(2)查询年龄大于20岁的学生信息```sqlSELECT FROM students WHERE age > 20;```(3)查询性别为“男”的学生信息```sqlSELECT FROM students WHERE gender = '男';```4. 更新数据```sqlUPDATE students SET age = 21 WHERE name = '张三';```5. 删除数据```sqlDELETE FROM students WHERE name = '李四';```6. 删除表```sqlDROP TABLE students;```四、实验结果与分析1. 创建数据库和表:实验过程中成功创建了名为testdb的数据库,并在该数据库下创建了students表,包含id、name、age、gender和class五个字段。

数据库课程设计实训报告

数据库课程设计实训报告

一、前言随着信息技术的飞速发展,数据库技术已成为现代信息技术的重要组成部分。

为了让学生更好地掌握数据库的基本原理和应用,提高数据库设计与开发能力,本课程设计实训旨在通过实际操作,让学生熟悉数据库的设计与实现过程,培养学生的实践能力和团队协作精神。

二、实训背景随着我国医疗行业的快速发展,医院对信息管理系统的需求日益增长。

为了提高医院管理效率和服务质量,本实训项目以医院病房计算机管理系统为背景,设计并实现一个基于数据库技术的管理系统。

三、实训目标1. 熟悉数据库的基本原理和设计方法;2. 掌握数据库设计工具的使用,如E-R图、关系模型等;3. 学会使用SQL语言进行数据库操作;4. 具备数据库应用系统的开发能力;5. 提高团队协作和沟通能力。

四、实训内容1. 需求分析通过对医院病房管理工作的调研,分析出以下需求:(1)科室信息管理:包括科室名称、科室主任、科室电话等;(2)病房信息管理:包括病房号、病房类型、床位数等;(3)医生信息管理:包括医生姓名、职称、联系电话等;(4)病人信息管理:包括病人姓名、性别、年龄、入院时间、出院时间等;(5)医疗费用管理:包括药品费用、检查费用、治疗费用等。

2. 概念结构设计根据需求分析,设计以下实体集及其属性:(1)科室(科室ID,科室名称,科室主任,科室电话)(2)病房(病房号,病房类型,床位数)(3)医生(医生ID,姓名,职称,科室ID,联系电话)(4)病人(病人ID,姓名,性别,年龄,入院时间,出院时间,病房号)(5)药品(药品ID,药品名称,规格,价格)(6)检查(检查ID,检查名称,价格)(7)治疗(治疗ID,治疗名称,价格)实体间关系如下:(1)科室与医生之间存在一对多关系;(2)病房与病人之间存在一对多关系;(3)药品、检查、治疗与病人之间存在多对多关系。

3. 逻辑结构设计将概念结构设计中的实体集转化为关系模型,并定义以下关系模式:(1)科室(科室ID,科室名称,科室主任,科室电话)(2)病房(病房号,病房类型,床位数)(3)医生(医生ID,姓名,职称,科室ID,联系电话)(4)病人(病人ID,姓名,性别,年龄,入院时间,出院时间,病房号)(5)药品(药品ID,药品名称,规格,价格)(6)检查(检查ID,检查名称,价格)(7)治疗(治疗ID,治疗名称,价格)(8)病人_药品(病人ID,药品ID)(9)病人_检查(病人ID,检查ID)(10)病人_治疗(病人ID,治疗ID)4. 物理结构设计根据逻辑结构设计,设计以下表格及其字段:(1)科室表:科室ID,科室名称,科室主任,科室电话(2)病房表:病房号,病房类型,床位数(3)医生表:医生ID,姓名,职称,科室ID,联系电话(4)病人表:病人ID,姓名,性别,年龄,入院时间,出院时间,病房号(5)药品表:药品ID,药品名称,规格,价格(6)检查表:检查ID,检查名称,价格(7)治疗表:治疗ID,治疗名称,价格(8)病人_药品表:病人ID,药品ID(9)病人_检查表:病人ID,检查ID(10)病人_治疗表:病人ID,治疗ID5. 数据库实施使用SQL语言创建以上表格,并插入一些示例数据。

数据库实验报告范本

数据库实验报告范本

数据库实验报告范本一、实验目的本次数据库实验的主要目的是深入了解数据库的基本操作和管理,掌握数据的存储、查询、更新和删除等功能,提高对数据库的实际应用能力和问题解决能力。

二、实验环境1、操作系统:Windows 102、数据库管理系统:MySQL 803、开发工具:Navicat Premium 12三、实验内容及步骤(一)数据库的创建1、打开 Navicat Premium 12 工具,连接到本地 MySQL 服务器。

2、在连接成功后,右键点击“连接”,选择“新建数据库”。

3、在弹出的“新建数据库”对话框中,输入数据库名称(例如:student_management),选择字符集和排序规则,点击“确定”按钮创建数据库。

(二)表的创建1、展开新建的数据库,右键点击“表”,选择“新建表”。

2、在“表设计器”中,依次添加表的字段,包括字段名、数据类型、长度、是否允许为空等属性。

以学生表(students)为例,字段包括:student_id(INT 主键,自增)、student_name(VARCHAR(50))、student_age(INT)、student_gender(VARCHAR(10))。

课程表(courses)字段:course_id(INT 主键,自增)、course_name(VARCHAR(50))、course_credit(INT)。

成绩表(scores)字段:score_id(INT 主键,自增)、student_id (INT 外键,关联 students 表的 student_id)、course_id(INT 外键,关联 courses 表的 course_id)、score(FLOAT)。

3、设置完字段属性后,点击“保存”按钮,输入表名(如 students、courses、scores)创建表。

(三)数据的插入1、打开创建好的表,点击“插入”按钮。

2、在弹出的“插入行”对话框中,按照字段顺序输入相应的数据。

数据库实验报告(通用3篇)

数据库实验报告(通用3篇)

数据库实验报告(通用3篇)数据库试验报告篇1一、实训时间:20_年5月13日至5月24日二、实训地点:三、实训目的与意义:1,这次实习可以使我们在课本上学到的学问用于实践增加了我对电脑技巧的一些认知。

2,通过这次实习也可以让我体验到上班族的生活为我将来毕业后找工作打下了基础。

3,并且这次实习可以非常好的关心我完成将来的毕业论文。

四、实训感悟:还依旧记得来的第一天对这里很茫然,不知道实习要做些什么。

然后经过老师的急躁讲解,熟悉了自己实习要做些什么,得到了许多心理熟悉,对许多问题都有了一些更深的了解。

同时,我熟识了河北玛世电子商务有限公司,总部位于国家命名的“中国丝网之乡”、“中国丝网产业基地”、中国丝网产销基地“、”中国丝网出口基地“—河北省安平县。

使我们队公司有了更进一步的了解实习,就是在实践中学习。

经过这半个月的实习训练,我了解到自己所学的如何在实践中运用。

当然学的更多的是如何在更新网站内容和添加商品,每天不厌其烦的更新添加,观察自己的胜利更多的是兴奋。

还有发布了一些关于公司产品的博客,比如新浪,网易。

而后又尝试在百度知道上提问与回答,在回答问题的过程中,通过网站搜寻相关内容来回答各种丝网问题,通过百度知道这个平台,我对公司又了更一步的了解。

经过半个月的实训我学到了许多之前没有学过没有接触到的东西,熟悉到自己的不足,需要更加努力,才能尽快的学会在社会上生活,敢于面对社会的压力,使自己可以在社会上成长进展。

数据库试验报告篇2由于平常接触的都是一些私人项目,这些项目大都是一些类库,其他人的沟通相对可以忽视不计,因此也就不考虑规范化的文档。

实际上从学习的经受来看,我们接触的学问体系都是属于比较老或比较传统的,与现在进展快速的IT行业相比许多状况已不再适用,尤其是当开源模式渐渐走近开发者后更是如此。

虽然这次是一个数据库课程设计,由于本人在选择项目的时候是本着对自己有实际应用价值的角度考虑的,所以其中也涉及到一些数据库以外的设计。

数据库实验报告

数据库实验报告

数据库实验报告一、实验目的本次数据库实验的主要目的是通过实际操作和实践,深入了解数据库的基本概念、原理和技术,掌握数据库的设计、创建、管理和数据操作的方法,提高对数据库系统的应用能力和问题解决能力。

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

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

三、实验内容与步骤(一)数据库设计1、需求分析根据给定的业务场景,确定数据库需要存储的信息和数据之间的关系。

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

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

确定实体(如学生、课程)、属性(如学生的学号、姓名,课程的课程号、课程名)以及实体之间的关系(如多对多、一对多等)。

3、逻辑模型设计将概念模型转换为关系模型,确定数据表的结构,包括表名、字段名、数据类型、主键、外键等。

例如,学生表(学号、姓名、性别、出生日期),课程表(课程号、课程名、学分),选课表(学号、课程号、成绩)等。

(二)数据库创建1、使用 MySQL Workbench 或命令行创建数据库。

2、创建数据表,按照设计好的逻辑模型定义表结构。

(三)数据插入与操作1、使用 INSERT 语句向数据表中插入数据,以模拟实际的业务数据。

2、进行数据的查询操作,使用 SELECT 语句查询满足特定条件的数据。

3、进行数据的更新和删除操作,使用 UPDATE 和 DELETE 语句修改或删除数据。

(四)数据库索引与优化1、了解索引的概念和作用,为经常用于查询、连接和排序的字段创建索引。

2、分析查询语句的执行计划,通过优化查询语句、调整数据表结构等方式提高数据库的性能。

(五)数据库备份与恢复1、学习数据库备份的方法,使用 mysqldump 工具或 MySQL Workbench 进行数据库的备份。

数据库的设计实验报告

数据库的设计实验报告

一、实验目的1. 理解数据库设计的概念、过程和步骤。

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

3. 能够运用E-R图进行数据库概念结构设计。

4. 能够运用SQL语句进行数据库逻辑结构和物理结构设计。

二、实验环境1. 操作系统:Windows 102. 数据库管理系统:MySQL 5.73. 开发工具:MySQL Workbench三、实验内容1. 数据库概念结构设计2. 数据库逻辑结构设计3. 数据库物理结构设计四、实验步骤1. 数据库概念结构设计(1)分析需求,确定实体和属性以“图书管理系统”为例,确定实体和属性如下:实体:图书、读者、借阅信息属性:- 图书:书名、作者、出版社、ISBN、出版日期、分类号、库存数量- 读者:读者编号、姓名、性别、出生日期、联系电话、邮箱、住址- 借阅信息:借阅编号、图书编号、读者编号、借阅日期、归还日期、状态(2)绘制E-R图根据实体和属性,绘制E-R图如下:```图书(书名,作者,出版社,ISBN,出版日期,分类号,库存数量)读者(读者编号,姓名,性别,出生日期,联系电话,邮箱,住址)借阅信息(借阅编号,图书编号,读者编号,借阅日期,归还日期,状态) ```2. 数据库逻辑结构设计(1)确定关系模式根据E-R图,确定关系模式如下:- 图书(书名,作者,出版社,ISBN,出版日期,分类号,库存数量)- 读者(读者编号,姓名,性别,出生日期,联系电话,邮箱,住址)- 借阅信息(借阅编号,图书编号,读者编号,借阅日期,归还日期,状态)(2)编写SQL语句创建表```sqlCREATE TABLE 图书 (书名 VARCHAR(100),作者 VARCHAR(50),出版社 VARCHAR(50),ISBN VARCHAR(20),出版日期 DATE,分类号 VARCHAR(10),库存数量 INT);CREATE TABLE 读者 (读者编号 VARCHAR(10),姓名 VARCHAR(50),性别 CHAR(1),出生日期 DATE,联系电话 VARCHAR(20),邮箱 VARCHAR(50),住址 VARCHAR(100));CREATE TABLE 借阅信息 (借阅编号 VARCHAR(10),图书编号 VARCHAR(10),读者编号 VARCHAR(10),借阅日期 DATE,归还日期 DATE,状态 VARCHAR(10));```3. 数据库物理结构设计(1)确定索引根据需求,确定索引如下:- 图书表:ISBN、分类号- 读者表:读者编号- 借阅信息表:借阅编号、图书编号、读者编号(2)编写SQL语句创建索引```sqlCREATE INDEX idx_isbn ON 图书(ISBN);CREATE INDEX idx_分类号 ON 图书(分类号);CREATE INDEX idx_读者编号 ON 读者(读者编号);CREATE INDEX idx_借阅编号 ON 借阅信息(借阅编号);CREATE INDEX idx_图书编号 ON 借阅信息(图书编号);CREATE INDEX idx_读者编号 ON 借阅信息(读者编号);```五、实验结果与分析1. 通过实验,掌握了数据库设计的概念、过程和步骤。

数据库实验报告

数据库实验报告

数据库实验报告1. 概述在本次数据库实验中,我选择了设计和实现一个学生信息管理系统的任务。

该系统旨在提供一个方便、高效的平台,用于管理学生的基本信息、课程成绩以及相关的学籍信息等。

本实验报告将详细介绍实验的目的、设计思路和实施过程,并对结果进行分析和讨论。

2. 实验目的本实验的主要目的是通过实际操作,熟悉和掌握数据库的基本概念、设计方法和实施技巧。

通过这个实验,我将学会使用数据库管理系统(DBMS)工具创建关系型数据库,设计并创建合适的表结构,实施数据的插入、更新和删除,同时也能进行简单的查询和数据分析。

3. 设计思路为了满足学生信息管理系统的功能需求,我设计了以下几个表结构:- 学生表(Students):包含学生的基本信息,如学号、姓名、性别、年龄等;- 课程表(Courses):包含课程的基本信息,如课程号、课程名称、教师等;- 成绩表(Grades):记录学生课程的成绩信息,包括学号、课程号、成绩等;- 学籍表(Enrollment):记录学生的学籍信息,如入学时间、学历、班级等。

为了保证数据的完整性和准确性,我为每一个表设置了主键和外键。

在学生表中,学号字段被设定为主键,而在成绩表和学籍表中,学号字段被设定为外键,与学生表建立关联。

同样地,课程表和成绩表之间也建立了课程号字段的关联。

4. 实施过程在开始实施前,我首先下载并安装了一个流行的数据库管理系统,如MySQL作为本次实验的工具。

接下来,我打开MySQL控制台,并创建了一个新的数据库,命名为"StudentDB"。

随后,我运行一系列的SQL命令,创建了上述所述的各个表,并为每一个表添加了合适的字段和约束。

在创建表结构之后,我利用INSERT INTO语句插入了一些样本数据,以便后续的操作和查询。

5. 结果分析经过一段时间的设计和实施,我成功地创建了一个学生信息管理系统的数据库,并成功地插入了样本数据。

通过对数据库的操作,我能够进行简单的查询和数据分析。

数据库原理实验报告(3)实验三数据表的创建与管理实验

数据库原理实验报告(3)实验三数据表的创建与管理实验

数据库原理实验报告(3)实验三数据表的创建与管理实验南京晓庄学院《数据库原理与应⽤》课程实验报告实验三数据表的创建与管理实验所在院(系):数学与信息技术学院班级:学号::1.实验⽬的(1)理解SQL Server 2005常⽤数据类型和表结构的设计⽅法。

理解主键、外键含义,掌握建⽴各表相关属性间参照关系的⽅法。

(2)熟练掌握使⽤SQL Server Management Studio图形⼯具创建表,删除表,修改表结构,插⼊及更新数据的⽅法。

(3)熟练掌握使⽤Transact-SQL语句创建表,删除表,修改表结构,插⼊及更新数据的⽅法。

2.实验要求基本实验:(1)在实验⼆所创建的“TM”数据库中合理设计以下各表逻辑结构:学⽣信息(学号,,性别,籍贯,出⽣⽇期,民族,学院/系别号,班级号)课程信息(课程号,课程名称,课程所属模块,课程类别,学分,学时)学习信息(学号,课程号,考试成绩,平时成绩)院系信息(院系号,院系名称)要求确定各个字段的名称、类型、是否有默认值,是否主键等信息。

(2)依据你所设计的表结构,使⽤SQL Server Management Studio图形⼯具在“TM”数据库中创建学⽣信息表和课程信息表,并试验在图形界⾯中修改表结构,删除数据表,输⼊并更新数据的⽅法。

(3)依据你所设计表结构,使⽤Transact-SQL语句创建学习信息表和院系信息表,并试验使⽤T-SQL语句修改表结构,删除数据表,插⼊和更新数据的⽅法。

(4)找出已创建各表之间相关属性的参照关系,并在相关表中增加引⽤完整性约束。

(5)按要求完成实验报告。

扩展实验:(1)在“TM”数据库中补充设计以下各表结构:教师信息(教师号,,性别,出⽣⽇期,学历,学位,⼊职时间,职称,院系号)授课信息(教师号,课程号,学期)班级信息(班级号,班级名称,专业号)专业信息(专业号,专业名称,学制,学位)图书信息(图书号,书名,作者,,出版⽇期,册数,价格,分类)借书偏息(学号,图书号,借出时间,归还时间)奖励信息(学号,奖励类型,奖励⾦额)(2)设计并实现各表之间相关属性的参照关系。

数据库实验报告

数据库实验报告

数据库实验报告一、实验目的本次数据库实验的主要目的是深入了解数据库的基本概念和操作,掌握数据库管理系统的使用方法,提高对数据的管理和处理能力。

通过实际操作,我们希望能够熟练运用SQL 语句进行数据的查询、插入、更新和删除,以及创建和管理数据库表、索引和视图等对象。

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

实验在个人计算机上进行,使用 MySQL Workbench 作为数据库管理工具。

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

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

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

“enrolls”表,用于关联学生和课程,包含学生学号(student_id)、课程号(course_id)和成绩(grade)等字段。

3、数据插入使用 INSERT INTO 语句向上述表中插入了一些示例数据,以方便后续的查询和操作。

4、数据查询通过 SELECT 语句进行了多种查询操作,例如:查询所有学生的信息。

查询特定性别学生的信息。

查询选修了某门课程的学生名单及成绩。

5、数据更新使用 UPDATE 语句对部分学生的年龄或成绩进行了修改。

6、数据删除使用 DELETE 语句删除了一些不再需要的数据记录。

7、索引创建为“students”表的“student_id”字段和“courses”表的“course_id”字段创建了索引,以提高查询效率。

8、视图创建创建了一个名为“student_course_grade_view”的视图,用于展示学生的学号、姓名、课程名称和成绩。

数据库实验_实验报告

数据库实验_实验报告

一、实验目的1. 掌握数据库的基本概念和设计方法。

2. 熟悉关系型数据库SQL语言的使用。

3. 能够根据实际需求设计数据库,并实现数据的存储和查询。

二、实验环境1. 操作系统:Windows 102. 数据库管理系统:MySQL 5.73. 开发工具:MySQL Workbench三、实验内容1. 数据库设计2. 数据库创建与维护3. 数据操作与查询四、实验步骤1. 数据库设计(1)需求分析:根据实际需求,确定数据库需要存储哪些数据,以及数据之间的关系。

(2)概念结构设计:使用E-R图描述实体与实体之间的联系,形成概念模型。

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

(4)物理结构设计:确定数据库的存储结构和索引策略。

2. 数据库创建与维护(1)创建数据库:使用SQL语句创建数据库,如:```sqlCREATE DATABASE school;```(2)创建表:根据逻辑结构设计,创建数据库表,如:```sqlCREATE TABLE student (id INT PRIMARY KEY,name VARCHAR(20),age INT,gender CHAR(1));```(3)插入数据:使用INSERT语句向表中插入数据,如:```sqlINSERT INTO student (id, name, age, gender) VALUES (1, '张三', 20, '男'); ```(4)更新数据:使用UPDATE语句修改表中数据,如:```sqlUPDATE student SET age = 21 WHERE id = 1;```(5)删除数据:使用DELETE语句删除表中数据,如:```sqlDELETE FROM student WHERE id = 1;```(6)查询数据:使用SELECT语句查询表中数据,如:```sqlSELECT FROM student;```3. 数据操作与查询(1)简单查询:查询表中所有数据,如:```sqlSELECT FROM student;```(2)条件查询:根据条件查询数据,如:```sqlSELECT FROM student WHERE age > 20;```(3)排序查询:根据指定字段对查询结果进行排序,如:```sqlSELECT FROM student ORDER BY age DESC;```(4)分组查询:根据指定字段对查询结果进行分组,如:```sqlSELECT gender, COUNT() AS count FROM student GROUP BY gender;```(5)连接查询:查询两个或多个表之间的数据,如:```sqlSELECT , FROM student JOIN course ON student.id = course.student_id;```五、实验结果与分析1. 数据库设计:根据实际需求,设计了包含学生、课程、教师等实体的数据库,并建立了它们之间的关系。

数据库实验报告:实验五

数据库实验报告:实验五

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

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

二、实验环境本次实验使用的数据库管理系统是 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,性别:男,专业:计算机科学)。

数据库实验报告(实验六)(合集五篇)

数据库实验报告(实验六)(合集五篇)

数据库实验报告(实验六)(合集五篇)第一篇:数据库实验报告(实验六)实验六SQL语言数据查询语言DQL一、实验内容了解SQL语言的SELECT语句对数据的查询,学会在Navicat for MySQL中用SELECT语句对表中的数据进行简单查询、连接查询、嵌套查询和组合查询。

启动Navicat for MySQL,用SELECT语句进行简单查询操作,具体实验步骤如下:(实验步骤里的内容)1启动Navicat for MySQL,登录到本地数据库服务器后,连接到test数据库上。

用Create Table建立Student表、Course表和Choose表:2.用INSERT语句分别向Student表中插入3个元组、Course表中插入3个元组、Choose表中插入7个元组:3.用SELECT语句,查询计算机学院学生的学号和姓名。

4.用SELECT语句的between…and…表示查询条件,查询年龄在20~23岁的学生信息。

5.用SELECT语句的COUNT()聚集函数,统计Student表中学生总人数。

6.分别用SELECT语句的max()、min()、sum()、avg()四个聚集函数,计算Choose表中C1课程的最高分、最低分、总分、平均分。

7.用SELECT语句对空值(NULL)的判断条件,查询Course表中先修课称编号为空值的课程编号和课程名称。

8.用SELECT语句的连接查询,查询学生的学号、姓名、选修的课程名及成绩。

9.用SELECT的存在量词EXISTS,查询与“张三”在同一个学院学习的学生信息。

10.用SELECT语句的嵌套查询,查询选修C1课程的成绩低于“张三”的学生的学号和成绩。

11.用SELECT语句的组合查询(UNION),查询选修了C1课程或者选修了C3课程的学生学号。

12.用SELECT语句的组合查询(UNION)与DISTINCT短语,查询选修了C1课程或者选修了C3课程的学生学号,并取消重复的数据。

数据库课程设计报告

数据库课程设计报告

数据库课程设计报告一、设计目的。

本次数据库课程设计旨在通过实际操作,加深对数据库原理和设计方法的理解,提高学生的数据库设计和应用能力。

通过设计一个实际的数据库系统,学生将能够掌握数据库设计的整体流程,包括需求分析、概念设计、逻辑设计和物理设计等方面的知识和技能。

同时,通过设计报告的撰写,培养学生的文字表达能力和对数据库设计过程的全面理解。

二、设计内容。

1. 需求分析,首先,我们需要明确数据库系统的具体需求,包括数据存储、数据处理、数据安全等方面的需求。

在需求分析阶段,我们要与用户充分沟通,了解用户的实际需求,明确数据库系统的功能和性能要求。

2. 概念设计,在需求分析的基础上,进行概念设计,包括实体-关系模型的设计、数据字典的编制等。

在这一阶段,我们要将用户需求转化为数据库模型,明确数据之间的关系和约束条件。

3. 逻辑设计,在概念设计的基础上,进行逻辑设计,包括关系模式的设计、数据完整性的约束等。

在这一阶段,我们要将概念模型转化为具体的数据库表结构,明确数据的存储方式和访问路径。

4. 物理设计,在逻辑设计的基础上,进行物理设计,包括索引的设计、存储结构的选择等。

在这一阶段,我们要将逻辑模型转化为具体的数据库实现,明确数据的存储位置和访问方式。

5. 实施和维护,最后,我们要对设计的数据库系统进行实施和维护,包括数据库的创建、数据的导入、系统的测试等。

在这一阶段,我们要确保数据库系统能够正常运行,并能够满足用户的实际需求。

三、设计步骤。

1. 需求分析,首先,我们要与用户充分沟通,了解用户的实际需求,明确数据库系统的功能和性能要求。

然后,我们要对用户需求进行分析,明确数据的存储、处理和安全等方面的需求。

2. 概念设计,在需求分析的基础上,进行概念设计,包括实体-关系模型的设计、数据字典的编制等。

在这一阶段,我们要将用户需求转化为数据库模型,明确数据之间的关系和约束条件。

3. 逻辑设计,在概念设计的基础上,进行逻辑设计,包括关系模式的设计、数据完整性的约束等。

数据库课程设计实习报告

数据库课程设计实习报告

一、实习背景随着信息技术的飞速发展,数据库技术在各个领域都得到了广泛应用。

为了提高我们运用数据库技术解决实际问题的能力,我们参加了数据库课程设计实习。

本次实习以开发一个学生信息管理系统为例,通过实际操作,加深对数据库原理及应用的理解,提高数据库设计与开发的能力。

二、实习目的1. 熟练掌握数据库设计的基本方法,包括需求分析、概念结构设计、逻辑结构设计和物理结构设计。

2. 掌握SQL语言,能够熟练进行数据库的创建、修改、删除、查询等操作。

3. 学会使用数据库开发工具,如Visual Studio、MySQL等。

4. 提高数据库系统分析与设计的能力,培养团队协作精神。

三、实习内容1. 需求分析通过调研,我们了解到学生信息管理系统需要具备以下功能:(1)学生信息管理:包括学生基本信息、学籍信息、成绩信息等。

(2)教师信息管理:包括教师基本信息、授课信息等。

(3)课程信息管理:包括课程基本信息、选课信息等。

(4)成绩查询:按学号、课程名称、教师姓名等条件查询成绩。

(5)统计报表:生成各类统计报表,如学生成绩排名、教师授课情况等。

2. 概念结构设计根据需求分析,我们设计了学生信息管理系统的概念结构,包括以下实体:(1)学生(学号、姓名、性别、出生日期、民族、籍贯、政治面貌、家庭住址、联系电话、电子邮件等)(2)教师(工号、姓名、性别、出生日期、民族、籍贯、政治面貌、家庭住址、联系电话、电子邮件等)(3)课程(课程编号、课程名称、学分、授课教师等)(4)成绩(学号、课程编号、成绩、学期等)3. 逻辑结构设计根据概念结构,我们设计了学生信息管理系统的逻辑结构,包括以下表:(1)学生表(学号、姓名、性别、出生日期、民族、籍贯、政治面貌、家庭住址、联系电话、电子邮件等)(2)教师表(工号、姓名、性别、出生日期、民族、籍贯、政治面貌、家庭住址、联系电话、电子邮件等)(3)课程表(课程编号、课程名称、学分、授课教师等)(4)成绩表(学号、课程编号、成绩、学期等)4. 物理结构设计根据逻辑结构,我们设计了学生信息管理系统的物理结构,包括以下表:(1)学生表(学号、姓名、性别、出生日期、民族、籍贯、政治面貌、家庭住址、联系电话、电子邮件等)(2)教师表(工号、姓名、性别、出生日期、民族、籍贯、政治面貌、家庭住址、联系电话、电子邮件等)(3)课程表(课程编号、课程名称、学分、授课教师等)(4)成绩表(学号、课程编号、成绩、学期等)5. 数据库开发与实现使用Visual Studio和MySQL数据库,我们实现了学生信息管理系统的数据库开发与实现。

数据库课程设计的报告

数据库课程设计的报告

数据库课程设计的报告一、课程目标知识目标:1. 理解数据库的基本概念,掌握数据库系统的组成和功能。

2. 学会使用SQL语言进行数据库的基本操作,如创建、查询、更新和删除数据。

3. 掌握数据库设计的基本原则和步骤,能独立完成小型数据库的设计与实现。

技能目标:1. 能够运用所学知识,使用数据库管理系统(DBMS)进行数据的有效存储和管理。

2. 培养学生分析问题、解决问题的能力,使其在遇到实际问题时,能够运用数据库知识提出解决方案。

3. 提高学生的团队协作能力,通过分组讨论、协作完成数据库课程设计。

情感态度价值观目标:1. 培养学生对数据库技术的兴趣和热情,激发其主动学习的动力。

2. 培养学生严谨、务实的科学态度,使其认识到数据库在信息时代的重要性。

3. 引导学生关注数据库技术的最新发展,提高其适应社会发展的能力。

本课程针对高中年级学生,结合课程性质、学生特点和教学要求,明确以上课程目标。

在后续的教学设计和评估中,将以上目标分解为具体的学习成果,确保学生能够达到预期教学效果。

二、教学内容1. 数据库基本概念:数据库、数据库管理系统、数据模型、关系模型等。

教材章节:第一章 数据库概述2. 数据库设计:实体-关系模型、E-R图、关系数据库设计、范式理论等。

教材章节:第二章 数据库设计基础3. SQL语言:基本命令、数据查询、数据更新、数据定义、数据控制等。

教材章节:第三章 SQL语言4. 数据库管理系统:DBMS的功能、分类、系统架构、事务管理、并发控制等。

教材章节:第四章 数据库管理系统5. 数据库应用案例:案例分析、数据库设计实现、应用开发等。

教材章节:第五章 数据库应用案例教学内容安排和进度:第一周:数据库基本概念第二周:数据库设计基础第三周:SQL语言第四周:数据库管理系统第五周:数据库应用案例及课程设计教学内容根据课程目标进行选择和组织,确保科学性和系统性。

在教学过程中,将按照以上大纲进行教学,确保学生能够系统地掌握数据库知识,为实际应用打下坚实基础。

数据库设计实验报告5篇

数据库设计实验报告5篇

数据库设计实验报告数据库设计实验报告5篇在不断进步的时代,需要使用报告的情况越来越多,写报告的时候要注意内容的完整。

相信很多朋友都对写报告感到非常苦恼吧,以下是小编为大家收集的数据库设计实验报告,仅供参考,希望能够帮助到大家。

数据库设计实验报告1有关于数据库实验的心得体会,总的来说,受益匪浅。

在这些天中,我们学到了很多东西,包括建表,导入数据,查询,插入。

最重要的是我们有机会用电脑自己进行实践,没接触的时候总是觉得它比较深奥或是不可接近的新型语言,尽管自己对C语言非常感兴趣,但还是有些心理上的陌生感。

学习数据库就和我们平时的其它科目学习一样感觉它有永无止境的知识,数据库是我在高中时候听过,到了大学渐渐了解了些,但就其原理性的内容还不知道,也就是根本就不清楚什么是数据库,只是知道一个所谓的中国字典里的名词。

我认识它是从我接触实验运作开始的,刚开始就是建立数据库,两种验证模式,没什么东西但还觉得不错。

进而就是操作语言了,紧接着就是触发器的使用,进而对数据库高级的使用,等等。

开始知道数据库的时候想学,不知道从何而起,不懂的话怎么问,从什么地方学起。

后来到大三开学后有数据库原理必修课,非常高兴。

当时感觉SQL Sever数据库管理既然是单独一门课程一定会讲的比较细,也能学到真正实用的内容。

学了这门课以后发现和我想的基本是一样的,老师对学生也比较和蔼可亲,对我们要求也不是很紧。

让每个人都觉得轻轻松松就能把这门课程学完,没有多么紧张的作业,也没有太苛刻的要求。

当老师在最后说这个课程结束了,回顾一下以前老师给我们讲过的东西,真的有很多是我们应该去注意的。

学习完SQL Sever数据库后感觉可分两大块,一块是开发,一块是管理。

开发主要是写写存储过程、触发器什么的,还有就是用Oracle的Develop工具做form。

有点类似于程序员。

开发还需要有较强的逻辑思维和创造能力,自己没有真正做过,但感觉应该会比较辛苦,是青春饭;管理则需要对SQL Sever数据库的原理有深刻的认识,有全局操纵的能力和紧密的思维,责任较大,因为一个小的失误就会弄掉整个数据库,相对前者来说,后者更看重经验。

数据库设计实验报告

数据库设计实验报告

数据库设计实验报告一、实验目的本次实验旨在通过设计一个数据库,加深对数据库设计原理和方法的理解,掌握数据库设计工具的使用,提高数据库设计能力。

二、实验环境本次实验使用MySQL数据库管理系统,并借助MySQL Workbench进行数据库设计和建模。

三、实验步骤1. 确定数据库需求:根据一个图书管理系统的需求,确定数据库中需要包含的实体、属性及它们之间的关系。

2. 实体关系模型设计:绘制ER图,表示各个实体之间的关系,包括实体的属性和主键。

3. 范式分解:将设计得到的实体关系模型转化为符合第三范式的关系模式。

4. 数据库物理设计:根据第三步得到的关系模式设计数据库的物理结构,确定表的字段、数据类型、约束等。

5. 创建数据库:在MySQL中创建数据库,并创建相应的表。

6. 插入数据:向数据库中插入一些测试数据,以便后续查询和操作。

7. 查询测试:通过SQL语句进行查询操作,检查数据库设计的正确性和完整性。

8. 实验总结:总结本次实验的过程和收获,对所学知识进行总结和回顾。

四、实验设计根据设计要求,我们设计了一个简单的图书管理系统数据库,包括以下几个表:1. 书籍表(Book)- 书籍编号(BookID)- 书名(Title)- 作者(Author)- 出版社(Publisher)- 出版日期(PublishDate)2. 借阅者表(Reader)- 借阅者编号(ReaderID)- 姓名(Name)- 性别(Gender)- 手机号(Phone)3. 借阅记录表(BorrowRecord)- 记录编号(RecordID)- 书籍编号(BookID)- 借阅者编号(ReaderID)- 借阅日期(BorrowDate)- 应还日期(DueDate)- 实际还书日期(ReturnDate)四、实验结果经过实验设计和数据库创建,数据库成功搭建完成。

我们通过一系列SQL查询操作,验证了数据库的正确性和完整性,包括图书信息的查询、借阅者信息的查询、借阅记录的查询等。

数据库课程设计实验报告

数据库课程设计实验报告

数据库课程设计实验报告目录1. 实验介绍 (2)1.1 实验背景 (3)1.2 实验目的 (4)1.3 实验内容 (5)1.4 系统总体设计 (5)2. 系统架构设计 (6)2.1 数据模型设计 (8)2.1.1 数据表设计 (9)2.1.2 关系模型 (10)2.1.3 实体关系图 (11)2.2 数据库设计 (12)2.2.1 数据库方案选择 (13)2.2.2 数据类型及约束 (14)2.2.3 索引设计 (16)2.3 系统界面设计 (16)3. 系统实现 (18)3.1 代码实现分析 (20)3.2 功能模块开发 (21)3.2.1 数据访问层 (22)3.2.2 业务逻辑层 (24)3.2.3 用户界面层 (25)3.3 系统运行环境 (26)4. 实验结果与分析 (27)4.1 系统运行效果 (28)4.2 实验数据分析 (30)4.3 系统性能测试 (31)4.4 各模块功能测试结果 (33)5. 总结与展望 (34)5.1 实验总结 (34)5.2 改进建议 (35)5.3 未来展望 (36)6. 文献参考 (38)1. 实验介绍本实验旨在通过设计一个具体的数据库系统来加深学生对数据库设计、管理系统操作、以及数据处理的理解。

实验内容分为几个部分,包括需求分析、概念设计、逻辑设计、物理设计,以及数据库的实施和应用程序的开发。

通过本实验,学生将能够掌握数据库设计的基本步骤和方法,同时了解如何在实际项目中应用所学的知识。

实验的目的在于培养学生对数据库系统实际操作的能力,通过具体的数据库设计问题,让学生能够将理论知识与实际操作相结合。

通过本实验,学生还将在教师指导下使用数据库管理系统进行数据库的创建、数据的存储、查询、更新、删除等操作,从而提高学生对数据库管理的综合应用能力。

a)需求分析:分析实验所需解决的具体问题,确定数据库系统的目标和用户需求。

b)概念设计:根据需求分析的结果,设计数据库的基本结构,包括实体识别、实体间的联系等。

数据库课程实验报告

数据库课程实验报告

数据库课程实验报告《数据库课程实验报告》在数据库课程的学习中,学生们经常会进行一些实验来加深对数据库知识的理解和掌握。

这些实验旨在让学生通过实际操作,掌握数据库的设计、实现和管理技能,同时培养学生的数据分析和处理能力。

在本文中,我们将分享一些数据库课程实验的报告,以及实验过程中的一些收获和体会。

实验一:数据库设计与实现在这个实验中,我们学习了数据库的设计原理和实现方法。

通过对一个实际的案例进行数据库设计,我们了解了实体关系模型(ERM)的建模方法,以及如何将实体关系模型转化为关系模式。

在实现阶段,我们学习了SQL语言的基本操作,包括创建表、插入数据、查询数据等。

通过这个实验,我们深刻理解了数据库设计的重要性,以及如何通过SQL语言对数据库进行操作。

实验二:数据库管理与优化在这个实验中,我们学习了数据库的管理和优化技术。

我们了解了数据库的备份和恢复方法,以及如何进行性能优化和索引优化。

通过实验操作,我们学会了如何监控数据库的性能,并对数据库进行优化。

这个实验让我们认识到了数据库管理的重要性,以及如何通过合理的管理和优化手段提高数据库的性能和稳定性。

实验三:数据分析与报表生成在这个实验中,我们学习了如何通过数据库进行数据分析和报表生成。

我们掌握了数据分析的基本方法和技巧,以及如何通过SQL语言进行数据挖掘和统计分析。

通过实验操作,我们学会了如何利用数据库工具生成各种报表,并对数据进行可视化分析。

这个实验让我们认识到了数据库在数据分析和业务决策中的重要作用,以及如何通过数据库技术提高数据分析的效率和准确性。

通过这些实验,我们不仅加深了对数据库知识的理解和掌握,还培养了数据分析和处理能力。

我们相信,在今后的学习和工作中,这些知识和技能都将对我们有很大的帮助。

数据库课程实验不仅是理论知识的巩固和实践的机会,更是对我们未来发展的有益补充和支持。

希望我们能够在未来的学习和工作中,不断提升自己的数据库技能,为自己的发展打下坚实的基础。

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

课程设计报告课程设计题目:学分管理系统数据库的设计与实现学生姓名:邬佳娜专业:网络工程班级:10211302指导教师:游胜玉、黄燕2011年12月01日东华理工大学一、实验题目:学分管理系统数据库的设计与实现描述:设计一个学分管理系统。

假设每位学生必须完成基础课50学分,专业课50学分,选修课24学分,人文类课程8学分和实验性课程20学分才能毕业。

实现下列功能:1.录入某位学生的学分信息2.给定学号,显示某位学生的学分完成情况;3.给定班号,显示该班所有学生的学分完成情况;4.给定学号,修改该学生的学分信息;5.按照某类课程的学分高低进行排序;6.给定学号,对该学生能否毕业进行确定。

二、课程设计要求:1.对各个系统进行系统功能需求分析2. 数据库设计分析阶段,进行详细的数据库需求分析,进行概念数据库的设计,画出数据库的E-R图(局部和整体E-R图)3. 设计出详细的逻辑数据库结构,将各个实体和联系转化为相应的二维表即关系模式,指定各个关系的主关键字和外部关键字,并对各个关系的约束加以限定4. 通过企业管理器或是查询分析器实现各个二维关系(建议最好用SQL代码实现),要求建立相关的索引5. 根据系统功能需求设计相应的查询视图6. 要求根据系统功能需求建立存储过程7. 根据功能需求建立相应的触发器以保证数据的一致性8. 通过建立用户和权限分配实现数据库一定的安全性,考虑数据库的备份与恢复(此内容选作)三、实验思路:首先,要建立一个数据库来实现系统的要求。

其次,要建立E-R图来建立各个表,下面是E-R图和关系模式:关系模式:学生student(学号,姓名,性别,年龄,班级)课程course(课程名,课程号,课程类型)系department(系名,系主任)教师teacher(教师号,性别,姓名)拥有have(学号,系名)学习study(学号,课程号,学分)讲授teach(课程号,教师号)属于belong(系名,教师号)E-R图:E-R图是根据实验要求建立,要求建立学生的个人信息和学分所得进行管理,同时附加系、任课教师表进行管理。

最后,通过实验要求的功能进行各种设计的实现。

四、实验代码create database 学分管理系统on(name=学分管理系统_data,filename='d:\学分管理系统.mdf',size=10,maxsize=50)log on(name=学分管理系统_log,filename='d:\学分管理系统.ldf',size=5,maxsize=25)create table student(sno char(20) constraint student_prim primary key, sn char(8),sex char(2),age int,class char(20))create unique index student的索引 on student(sno)insert into student values('1021130104','董益','男',20,'10211301') insert into student values('1021130201','邬佳娜','女',21,'10211302 ') insert into student values('1021130213','汪小青','女',21,'10211302') insert into student values('1021130232','施林甫','男',21,'10211302') insert into student values('1021130312','袁颖清','女',22,'10211303') insert into student values('1021130315','方亮','男',22,'10211303') select*from studentcreate table course(cno char(20) primary key not null,cn char(20),score float,type char(20))create unique index course的索引 on course(cno)insert into course values('001','C语言',50,'基础课')insert into course values('002','C++',24,'选修课')insert into course values('003','高等数学',50,'专业课')insert into course values('004','大学英语',50,'基础课')insert into course values('005','C++实验',20,'实验课')insert into course values('006','现代通信',24,'选修课')insert into course values('007','数据库',50,'专业课')insert into course values('008','数据库实验',20,'实验课')insert into course values('009','近代史',8,'人文类')select*from coursecreate table department(系名 char(6)constraint department_prim primary key,系主任 char(6))create unique index department的索引 on department(系名)insert into department values('软件','A')insert into department values('地测','B')insert into department values('土木','C')select * from departmentcreate table teacher(tno char(4)constraint teacher_prim primary key,tn char(6),sex char(2))create unique index teacher的索引 on teacher(tno)insert into teacher values('11','姜林','男')insert into teacher values('22','朱琳','男')insert into teacher values('33','洪小琴','女')insert into teacher values('44','高永平','男')insert into teacher values('55','游胜玉','女')insert into teacher values('66','危琪','女')insert into teacher values('77','蓝贤桂','男')select*from teachercreate table have(sno char(20) not null constraint h_prim primary keyconstraint hh_fore foreign key references student(sno),系名 char(6)constraint h_fore foreign key references department(系名)) create unique index have的索引 on have(sno)insert into have values('1021130104','地测')insert into have values('1021130201','软件')insert into have values('1021130213','软件')insert into have values('1021130232','软件')insert into have values('1021130312','土木')insert into have values('1021130315','土木')select*from havecreate table study(sno char(20)not null constraint s_fore foreign key references student(sno),cno char(20)constraint ss_fore foreign key references course(cno), score float,constraint ss_prim primary key(sno,cno))create unique index study的索引 on study(sno,cno)insert into study values('1021130104','001',50)insert into study values('1021130104','002',22)insert into study values('1021130104','003',49)insert into study values('1021130104','004',30)insert into study values('1021130104','005',20)insert into study values('1021130104','006',38)insert into study values('1021130104','007',50)insert into study values('1021130104','008',20)insert into study values('1021130104','009',8)insert into study values('1021130201','001',55)insert into study values('1021130201','002',20)insert into study values('1021130201','003',45)insert into study values('1021130201','004',75)insert into study values('1021130201','005',20)insert into study values('1021130201','006',26)insert into study values('1021130201','007',60)insert into study values('1021130201','008',20)insert into study values('1021130201','009',9)insert into study values('1021130213','001',65)insert into study values('1021130213','002',20)insert into study values('1021130213','003',55)insert into study values('1021130213','004',40)insert into study values('1021130213','005',20)insert into study values('1021130213','006',28)insert into study values('1021130213','007',55)insert into study values('1021130213','008',20)insert into study values('1021130213','009',9)insert into study values('1021130232','001',45)insert into study values('1021130232','002',25)insert into study values('1021130232','003',70)insert into study values('1021130232','004',35)insert into study values('1021130232','005',20)insert into study values('1021130232','006',24)insert into study values('1021130232','007',55)insert into study values('1021130232','008',20)insert into study values('1021130232','009',9)insert into study values('1021130312','001',60)insert into study values('1021130312','002',36)insert into study values('1021130312','003',49)insert into study values('1021130312','004',50)insert into study values('1021130312','005',20)insert into study values('1021130312','006',20)insert into study values('1021130312','007',40)insert into study values('1021130312','008',20)insert into study values('1021130312','009',9)insert into study values('1021130315','001',30)insert into study values('1021130315','002',24)insert into study values('1021130315','003',35)insert into study values('1021130315','004',45)insert into study values('1021130315','005',20)insert into study values('1021130315','006',18)insert into study values('1021130315','007',38)insert into study values('1021130315','008',20)insert into study values('1021130315','009',8)select*from studycreate table teach(cno char(20)constraint t_fore foreign key references course(cno), tno char(4)constraint tt_fore foreign key references teacher(tno), constraint t_prim primary key(tno,cno))create unique index teach的索引 on teach(tno,cno)insert into teach values('001','11')insert into teach values('002','44')insert into teach values('003','22')insert into teach values('004','33')insert into teach values('005','11')insert into teach values('006','77')insert into teach values('007','55')insert into teach values('008','55')insert into teach values('009','66')select*from teachcreate table belong(tno char(4)constraint b_prim primary keyconstraint b_fore foreign key references teacher(tno),系名 char(6)constraint bb_fore foreign key references department(系名)) create unique index belong的索引 on belong(tno)insert into belong values('11','软件')insert into belong values('22','土木')insert into belong values('33','地测')insert into belong values('44','软件')insert into belong values('55','软件')insert into belong values('66','土木')insert into belong values('77','地测')select* from belongcreate view showas select study.sno,study.score,student.sn,o,,course.type from student,study,coursewhere study.sno=student.sno and o=o/*录入某位学生的学分信息*/create trigger 插入on studentfor insertas select*from studentinsert into student values('1021130101','徐刚','男',22,'10211301')---select*from student/*给定学号,显示某位学生的学分完成情况*/create view 学分完成情况as select*from studywhere sno='1021130315'select cno,scorefrom 学分完成情况where sno='1021130315'/*给定班号,显示该班所有学生的学分完成情况*/create procedure 班级的学分完成情况asselectstudent.sno,student.sn,student.class,o,study.score,o from student,study,coursewhere class='10211302'and study.sno=student.sno and o=oexec 班级的学分完成情况/*给定学号,修改该学生的学分信息*/create trigger 修改on studyfor updateas select o,study.scorefrom studywhere study.sno=(select snofrom inserted)update studyset score=70where cno='001'and sno='1021130315'/*update studyset score = score+2where (sno='1021130213'and cno='001')select*from study*//*按照某类课程的学分高低进行排序*/create view 专业课学分完成情况as select study.score,study.sno,o,,course.typefrom study,coursewhere o=oselect sno,cno,cn,score,typefrom 专业课学分完成情况where type='专业课'order by score desc/*给定学号,对该学生能否毕业进行确定*/create view 学生毕业问题as select study.sno,student.sn,course.type,sum(study.score)as score from study,student,coursegroup by study.sno,student.sn,course.typecreate procedure pd(@sno char(10))asdeclare @jc floatdeclare @rw floatdeclare @sy floatdeclare @xx floatdeclare @zy floatdeclare @x intset @x=0select @jc=score from 学生毕业问题 where @sno = sno and type ='基础课'if @jc>=50beginset @x=1select @rw=score from 学生毕业问题 where @sno = sno and type ='人文类' if @rw>=8beginset @x=2select @sy=score from 学生毕业问题 where @sno = sno and type ='实验课'if @sy>=20beginset @x=3select @xx=score from 学生毕业问题 where @sno = sno and type ='选修课'if @xx>=24beginset @x=4select @zy=score from 学生毕业问题 where @sno=sno and type='专业课'if @zy>=50beginset @x=5endendendendendif @x!=5print '学号为'+@sno+',该生学分未修满,不能够毕业'elseprint '学号为'+@sno+',该生学分修满,能够毕业'EXEC pd @sno='1021130201'实验结果(截图):给定班号,显示该班所有学生的学分完成情况给定学号,修改该学生的学分信息给定学号,对该学生能否毕业进行确定五、实验总结:数据库的实现需要多方面的支持,数据库SQl代码的实现要注意空间的分配。

相关文档
最新文档