数据库实验报告册
数据库实验报告册

合肥师范学院实验报告册2014 / 2015 学年第1 学期系别计算机学院实验课程数据库原理专业班级姓名学号指导教师李宜兵实验一——数据库基本操作一、实验目的1.熟悉MS SQL SERVER运行界面,掌握服务器的基本操作。
2.掌握界面操作方法完成用户数据库建立、备份和还原。
3.建立两个实验用的数据库,使用企业管理器和查询分析器对数据库和表进行基本操作。
二、实验预习内容在认真阅读教材及实验指导书的基础上,上机前请预习以下内容,并在空白处填写相应的步骤或命令。
1.熟悉SQL SERVER 2000 的运行环境,练习服务器基本操作:打开、停止、关闭。
2.使用SQL SERVER 2000 中的企业管理器完成以下任务。
数据库名称:STC表:STU(sno char(9), sname varchar(50), ssex char(2) , sage int, sdept char(2) );COURSE(cno char(3), cname varchar(50), cpno char(3), credit int );SC(sno char(9), cno char(3), grade int );说明:以上为表结构,以sno char(9)为例,说明sno属性设置为字符类型,宽度为9,int指整型数据。
1)建立数据库STC,分别建立以上三张表,并完成数据录入。
(表结构及数据参见教材)2)分析并建立各表的主码,用下划线在上面表结构中标出主码。
create table stu(sno char(9) primary key,sname varchar(50),ssex char(2),sage int,sdept char(2));select* from coursecreate table course( cno char(3) primary key,cname varchar(50),cpno char(3),credit int ,foreign key (cpno) references course(cno));create table sc(sno char(9),cno char(3),grade int,primary key(sno,cno),foreign key (sno) references stu(sno),foreign key (cno) references course(cno));insertinto stuvalues('95001','李勇','男','20','cs');Stu表:Sc表:3)建立各表之间的关联,请简述操作步骤。
数据库实验报告完整版

一、实验目的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、操作系统: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、在弹出的“插入行”对话框中,按照字段顺序输入相应的数据。
《数据库实验》实验报告

《数据库实验》实验报告一、实验目的本实验旨在通过设计与实现一个简单的学生信息管理系统,来加深对数据库基本概念和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语言的应用。
在实验过程中,我理解到数据库的设计与搭建是一个关键步骤,合理的表结构和约束条件对于数据的管理和有效性有着重要的影响。
(完整版)数据库实验报告

数据库实验报告姓名学号目录一.实验标题:2二.实验目的:2三.实验内容:2四.上机软件:3五.实验步骤:3(一)SQL Server 2016简介3(二)创建数据库 4(三)创建数据库表 7(四)添加数据17六.分析与讨论: 19一.实验标题:创建数据库和数据表二.实验目的:1.理解数据库、数据表、约束等相关概念;2.掌握创建数据库的T-SQL命令;3.掌握创建和修改数据表的T-SQL命令;4.掌握创建数据表中约束的T-SQL命令和方法;5.掌握向数据表中添加数据的T-SQL命令和方法三.实验内容:1.打开“我的电脑”或“资源管理器”,在磁盘空间以自己的姓名或学号建立文件夹;2.在SQL Server Management Studio中,使用create database命令建立“学生-选课”数据库,数据库文件存储在步骤1建立的文件夹下,数据库文件名称自由定义;3.在建立的“学生-选课”数据库中建立学生、课程和选课三张表,其结构及约束条件如表所示,要求为属性选择合适的数据长度;4.添加具体数据;四.上机软件:SQL Server 2016五.实验步骤:(一)SQL Server 2016简介1.SQL Server 2016的界面2.启动和退出SQL Server 20161)双击图标,即出现SQL Server2016的初始界2)选择“文件”菜单中的“退出”命令,或单击控制按钮中的“×”即可注意事项:1.在退出SQL Server 2016之前,应先将已经打开的数据库进行保存,2.如果没有执行保存命令,系统会自动出现保存提示框,根据需要选择相应的操作(二)创建数据库方法一:1.点击“新建查询”,出现如下对话框2.在空白区域输入创建数据库“学生选课”的代码命令,点击“执行”3.消息框中出现“命令已成功完成”即表示数据库创建成功,在“对象资源管理器”中,右击“数据库”,打开快捷菜单,选择“刷新”命令,在“数据库”向下会出现新创建的数据库“学生选课”方法二:1.右击数据库,在弹出的快捷菜单中选择“新建”2.在弹出的对话框中输入“学生选课”3. 在“对象资源管理器”中,右击“数据库”,打开快捷菜单,选择“刷新”命令,在“数据库”向下会出现新创建的数据库“学生选课”注意事项:数据库名称在服务器中必须唯一,并且符合标识符的规则(三)创建数据库表1.左键点击“学生选课”数据库,再点击“新建查询”,在出现的空白对话框中输入如图代码后点击“执行”,消息框中出现“命令已成功执行”即成功建立好学生、课程、选课三张表2.建立成功后的表格如图所示注意事项:1.T-SQL中创建数据库表的指令格式为:Create table 表名(字段名1 数据类型{identify | not null | null},字段名2 数据类型{identify | not null | null},……)null表示该字段的值可以为控制,空值意味着没有任何存储数据,这是默认参数,当所定义的字段允许空值时,参数null可以忽略not null表示该字段的值不能为空值identify称为计数器,表示该字段的值是一组递增的证书数据。
数据库实验报告(全)

实验报告学院:计算机与信息学院专业:年级:姓名:学号:实验室号:计算机号:实验日期:年月日指导教师签字:成绩:报告退发(订正、重做)实验一数据库的定义实验1、实验目的熟练掌握和使用SQL Server企业管理器创建数据库、表、索引和修改表结构,并学会使用SQL Server 查询分析器接收Transact-SQL语句和进行结果分析。
2、实验仪器(环境):计算机及SQL Server 20003、实验操作方法:依照实验指导书的内容进行实验。
4、报告内容:(1)通过企业管理器,建立图书借阅数据库;(2)在建好的图书借阅数据库中建立图书、读者和借阅3个表,其结构为:图书(书号,类别,出版社,作者,书名,定价,作者)读者(编号,姓名,单位,性别,电话)借阅(书号,读者编号,借阅日期)要求为属性选择合适的数据类型,定义每个表的主码,是否允许空值和默认值等列级数据约束。
;(3)指出图书读者数据库各表的主码、外码和数据约束;(4)实验操作步骤和实验结果用截图显示出来。
实验报告学院:计算机与信息学院专业:年级:姓名:学号:实验室号:计算机号:实验日期:年月日指导教师签字:成绩:报告退发(订正、重做)实验二数据库的建立和维护实验1、实验目的熟练掌握使用SQL、Transact-SQL和SQL Server企业管理器向数据库输入数据、修改数据和删除数据的操作。
2、实验仪器(环境):计算机及SQL Server 20003、实验操作方法:依照实验指导书的内容进行实验。
4、报告内容:(1)以一条记录为例,写出用SQL表示的向图书表中插入、修改和删除数据的语句。
(2)用SQL实现在读者表中增加“借书册数”字段,统计借书者在1998年~1999年间所借书的册数,并将结果送入读者表中的借书册数字段的操作语句。
(3)写出操作的过程和操作结果(数据库中各表的数据)并用截图表示出来。
实验报告学院:计算机与信息学院专业:年级:姓名:学号:实验室号:计算机号:实验日期:年月日指导教师签字:成绩:报告退发(订正、重做)实验三数据库的简单查询和连接查询实验1、实验目的掌握SQL Server查询分析器的使用方法,加深对SQL和Transact-SQL语言的查询语句的理解。
数据库实验报告(实验一)

实验一PowerDesigner 的CDM 应用
一、实验内容
学会运行PowerDesigner创建实体联系图,熟悉PowerDesinger的CDM模块的使用,熟悉CDM 的工作区,使用工具选项板进行CDM对象设计。
启动PowerDesigner,并按照试验步骤创建实体,运用toolbox中的相关工具修改实体的属性。
在定义完之后,运用toolbox中的相关工具接下来创建实体间的关系。
例如,此时创建的student与选课之间的联系如下
紧接着,按照相同方式创建course和选课之间的关系,如下。
根据实验任务,建立一个“实验一练习”命名的Conceptual Data Model(CDM)文件,其中应包括的实体、实体的属性及实体之间的联系。
利用之前的练习,类似的创建好该联系,其过程中截图如下:
1.对相关实体属性的修改如下:
2.最后的结果图如下:
二、遇到的问题及解决
在做实验任务时,由于对PowerDesigner软件运用的不熟悉,在过程中遗忘了一些步骤。
例如,在设置属性时,忘了设置主属性;在创建实体间联系时,对其中关系不是很清楚的找出它们的关系。
在发现这些问题后,都及时的解决,才未对后面的实验造成影响。
三、心得体会
我对于PowerDesigner还不熟悉,要多找几道练习题实际操作一下,多熟悉软件才可以运
行的很好。
在这之前我应该多注意书本上的知识,也要多熟悉,然后才能在实验课中运用。
数据库实验4实验报告

数据库实验4实验报告一、实验目的本次数据库实验 4 的主要目的是深入了解和掌握数据库中的索引、存储过程以及事务处理等关键技术,通过实际操作和实践,提高对数据库管理系统的运用能力,以及解决实际问题的能力。
二、实验环境本次实验使用的数据库管理系统为 MySQL 80,操作系统为Windows 10。
实验在个人电脑上进行,配置为英特尔酷睿 i5 处理器,8GB 内存。
三、实验内容与步骤(一)索引的创建与使用1、首先,创建了一个名为`students` 的表,包含`id`(主键,自增)、`name`(姓名)、`age`(年龄)、`grade`(年级)等字段。
```sqlCREATE TABLE students (id INT AUTO_INCREMENT PRIMARY KEY,name VARCHAR(50),age INT,grade VARCHAR(20));```2、向表中插入了一些示例数据,用于后续的实验操作。
```sqlINSERT INTO students (name, age, grade)VALUES ('张三', 18, '大一'),('李四', 19, '大二'),('王五', 20, '大三'),('赵六', 21, '大四');```3、为`name` 字段创建了一个普通索引,观察查询性能的变化。
```sqlCREATE INDEX idx_name ON students (name);```4、执行查询语句,对比创建索引前后的查询时间。
```sqlSELECT FROM students WHERE name ='张三';```(二)存储过程的创建与调用1、创建了一个简单的存储过程,用于计算两个数的和。
```sqlDELIMITER //CREATE PROCEDURE add_numbers(IN num1 INT, IN num2 INT, OUT result INT)BEGINSET result = num1 + num2;END//DELIMITER ;```2、调用存储过程,传递参数并获取结果。
数据库实验报告

数据库实验报告一、实验目的本次数据库实验的主要目的是通过实际操作和实践,深入理解数据库的基本概念、原理和技术,掌握数据库的设计、创建、管理和操作方法,提高对数据库的应用能力和解决实际问题的能力。
二、实验环境本次实验使用的数据库管理系统为 MySQL 80,操作系统为Windows 10。
实验工具包括 MySQL Workbench 80 和命令行终端。
三、实验内容(一)数据库设计1、需求分析根据给定的业务场景,对数据库的需求进行了详细的分析。
例如,对于一个学生管理系统,需要存储学生的基本信息(学号、姓名、性别、出生日期等)、课程信息(课程编号、课程名称、学分等)以及学生的选课信息(学号、课程编号、成绩等)。
2、概念模型设计使用 ER 图(实体关系图)对系统中的实体和关系进行了建模。
明确了各个实体的属性和实体之间的联系,为后续的逻辑设计奠定了基础。
3、逻辑模型设计将 ER 图转换为关系模型,确定了各个表的结构,包括表名、字段名、数据类型、约束条件等。
4、物理模型设计考虑了数据库的存储结构、索引、分区等物理存储方面的设计,以提高数据库的性能和存储空间的利用率。
(二)数据库创建1、使用 MySQL Workbench 创建数据库在 MySQL Workbench 中,通过图形界面操作,创建了指定名称的数据库,并设置了相应的字符集和校对规则。
2、使用 SQL 语句创建表使用 CREATE TABLE 语句,根据逻辑模型设计的结果,创建了各个数据表,并定义了主键、外键、唯一约束、非空约束等。
(三)数据操作1、数据插入使用 INSERT INTO 语句向表中插入了大量的测试数据,以验证数据库的功能和性能。
2、数据查询使用 SELECT 语句进行了各种复杂的查询操作,包括单表查询、多表连接查询、子查询、聚合函数的使用等。
3、数据更新使用 UPDATE 语句对表中的数据进行了修改操作,确保数据的准确性和完整性。
数据库实验报告

数据库实验报告一、实验目的本次数据库实验的主要目的是深入了解数据库的基本概念和操作,掌握数据库管理系统的使用方法,提高对数据的管理和处理能力。
通过实际操作,我们希望能够熟练运用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. 数据库设计:根据实际需求,设计了包含学生、课程、教师等实体的数据库,并建立了它们之间的关系。
数据库实验报告(实验六)(合集五篇)

数据库实验报告(实验六)(合集五篇)第一篇:数据库实验报告(实验六)实验六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)建立一个被参照关系test_main,其中id为主键。
.CREATE TABLE test_main(idINT, valueVARCHAR(10), PRIMARY KEY(id));2)建立一个参照关系test_sub,其中id为主键。
CREATE TABLE test_sub(idINT, main_id INT, valueVARCHAR(10), PRIMARY KEY(id));3)使用如下SQL语句插入数据--插入测试主表数据.INSERT INTO test_main(id, value)VALUES(1, 'ONE');INSERT INTO test_main(id, value)VALUES(2, 'TWO');--插入测试子表数据.INSERT INTO test_sub(id, main_id, value)VALUES(1, 1, 'ONEONE');INSERT INTO test_sub(id, main_id, value)VALUES(2, 2, 'TWOTWO');4)使用add constraint语句建立test_ sub表main_id到test_main表id的外键约束 5)删除test_main表中id=1的记录 6)测试完毕后,删除外键约束重新建立外键约束,要求删除主表的记录时候,同时删除子表中相应引用它的记录7)重新尝试第5步中的操作,之后检索test_sub 表,会出现什么结果?测试完毕后,删除外键约束8)重新建立外键约束,要求更新主表的主键时候,同时更新子表外键9)测试更新主表数据,将id=1的记录的id值设为5。
检查test_sub表中的数据是否被同步更新,测试完毕后,删除外键约束10)再次创建外键约束,要求删除主表的时候,同时将子表的main_id 设置为 NULL 11)测试删除主表test_main中id=2的数据,测试检索子表test_sub 测试完毕后,删除外键约束三、实验内容1)CREATE TABLE test_main(idINT, valueVARCHAR(10), PRIMARY KEY(id));2)CREATE TABLE test_sub(idINT, main_id INT, valueVARCHAR(10), PRIMARY KEY(id));3)INSERT INTO test_main(id, value)VALUES(1, 'ONE');INSERT INTO test_main(id, value)VALUES(2, 'TWO');INSERT INTO test_sub(id, main_id, value)VALUES(1, 1, 'ONEONE');INSERT INTO test_sub(id, main_id, value)VALUES(2, 2, 'TWOTWO');4)ALTER TABLE test_subADD CONSTRAINT main_id_cons FOREIGN KEY(main_id)REFERENCES test_main(id);5)delete from test_main where id='1' 无法执行6)alter table test_subdrop constraint main_id_consALTER TABLE test_subADD CONSTRAINT main_id_cons FOREIGN KEY(main_id)REFERENCES test_main(id)on delete cascade;7)delete from test_main where id='1';结果是test_main,和test_sub中的id=1的都被删除了altertable test_subdrop constraintmain_id_cons;8)首先我把上面操作所删除的加上了INSERT INTO test_main(id, value)VALUES(1, 'ONE');INSERT INTO test_sub(id, main_id, value)VALUES(1, 1, 'ONEONE');ALTER TABLE test_subADD CONSTRAINT main_id_cons FOREIGN KEY(main_id)REFERENCES test_main(id)on update cascade;9)update test_main set id='5' where id='1' 结果是main_id也变为了5。
数据库实验报告范本(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篇)

第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语言的运用。
数据库实验报告(7个实验完整附截图)

数据库实验报告(7个实验完整附截图)福建农林大学计算机与信息学院实验报告课程名称:数据库原理及应用姓名:系:计算机科学与技术专业:计算机科学与技术年级:2012 级学号:指导教师:陈长江2014 年5月18 日实验项目列表序号实验项目名称成绩指导教师1 实验一数据库的定义实验(验证性)2 实验二数据库的建立和维护实验(验证性)3 实验三数据库的查询实验(验证性)4 实验四数据库的视图操作实验(验证性)5 实验五触发器、存储过程操作实验(综合性)实验一:数据库的定义实验一、实验目的: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 表的信息:字段名类型长度约束条件Sno varchar9非空、主键Sname varchar20Ssex varchar2Sage smallint 6Sdept varchar20course表的信息:字段名类型长度约束条件Cno varchar4非空、主键Cname varchar40Cpno varchar4与 course 表中 Cno 关联Ccredit smallint 6sc表的信息:字段名类型长度约束条件Sno varchar9非空、主键、与student表中Sno外键关联,级联删除Cno varchar 4Grade smallint6非空、主键、与course表中Cno外键关联(1)连接数据库,在 localhost 中点击鼠标右键(如图1所示),点击“新建数据库”,在弹出的窗口中输入数据库名称(如图2所示),然后单击“确定”,就完成了数据库的建立。
数据库实验报告

数据库实验报告(经典版)编制人:__________________审核人:__________________审批人:__________________编制单位:__________________编制时间:____年____月____日序言下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。
文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!并且,本店铺为大家提供各种类型的经典范文,如工作总结、工作计划、演讲致辞、策划方案、合同协议、规章制度、条据文书、诗词鉴赏、教学资料、其他范文等等,想了解不同范文格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!Moreover, our store provides various types of classic sample essays for everyone, such as work summaries, work plans, speeches, planning plans, contract agreements, rules and regulations, doctrinal documents, poetry appreciation, teaching materials, other sample essays, etc. If you want to learn about different sample formats and writing methods, please stay tuned!数据库实验报告数据库实验报告(通用3篇)数据库实验报告篇1一、实训时间:20_年5月13日至5月24日二、实训地点:三、实训目的与意义:1.这次实习可以使我们在课本上学到的知识用于实践增加了我对电脑技巧的一些认知。
数据库实验4-实验报告

数据库实验4-实验报告数据库实验 4 实验报告一、实验目的本次数据库实验 4 的主要目的是深入理解和掌握数据库中的某些关键概念和操作,通过实际的操作和实践,提高对数据库管理系统的应用能力,增强解决实际问题的技能。
二、实验环境本次实验使用的数据库管理系统为_____,运行环境为_____操作系统,使用的开发工具为_____。
三、实验内容与步骤(一)创建数据库首先,打开数据库管理系统,使用相应的命令或操作界面创建了一个名为“_____”的数据库。
在创建过程中,指定了数据库的一些基本属性,如字符集、排序规则等,以满足后续数据存储和处理的需求。
(二)创建数据表在创建好的数据库中,根据实验要求创建了若干个数据表。
例如,创建了一个名为“students”的表,用于存储学生的信息,包括学号(student_id)、姓名(student_name)、年龄(age)等字段。
创建表时,仔细定义了每个字段的数据类型、长度、是否允许为空等属性,以确保数据的准确性和完整性。
(三)数据插入接下来,向创建的数据表中插入了一些测试数据。
通过执行相应的插入语句,将学生的具体信息逐个插入到“students”表中。
在插入数据的过程中,特别注意了数据的格式和合法性,避免了因数据错误导致的插入失败。
(四)数据查询完成数据插入后,进行了各种查询操作。
使用了简单的查询语句,如“SELECT FROM students”来获取所有学生的信息。
还使用了条件查询,如“SELECT FROM students WHERE age >18”来获取年龄大于 18 岁的学生信息。
通过这些查询操作,熟悉了如何从数据库中获取所需的数据。
(五)数据更新对已有的数据进行了更新操作。
例如,通过执行“UPDATE students SET age = 20 WHERE student_id =1”的语句,将学号为 1 的学生的年龄更新为20 岁。
在更新数据时,谨慎操作,确保只更新了预期的记录。
数据库实验报告范本(doc 9页)

数据库实验报告范本(doc 9页)数据库实验报告第三章 数据库设计3.1 概念模型本系统模块包含的实体有:订单基本表,订单信息表,订单状态表,货物表,交接单,配送点。
1. 各实体ER 图如下图3-1到图3-6所示。
订单基本收获寄件寄件寄件人寄件人详发货订单寄件寄件寄件人寄件人详图 3-1订单基本表实体E-R 图图3-2订单信息表实体E-R 图图 3-3订单状态表实体E-R 图订单信息订单支付下单保价总计交接订单货物发货备注订单状状态更新操作操作订单图3-4 货物表实体E-R 图图3-5 交接单实体E-R 图货物货物货物货物货物订单交接交接单运力发货配订单数最迟到配送重配送所属省所属办公电配送点配送点图3-6 配送点实体E-R 图2. 实体之间关系E-R 图订单基订单订单交接配送属属属包货物3.使用PowerDesigner画的ER图3.2逻辑模型1.订单基本表订单基本表中文名称字段名数据类型是否为空默认值备注订单编号Order_NoNUMBER系统生成PK发货地Send_Site V ARCH AR2(30)收货地Rece_Site V ARCH AR2(30)寄件人姓名SendP_NameV ARCHAR2(20)寄件人单位SendP_UnitV ARCHAR2(40)可为空寄件人联系电话SendP_PhNumNUMBER(20)寄件人详细地址SendP_AddV ARCHAR2(60)收件人姓名ReceP_NameV ARCHAR2(20)收件人单位ReceP_UnitV ARCHAR2(40)可为空收件人联系电话ReceP_PhNumNUMBER(20)收件人ReceP_V ARCH详细地址Add AR2(60)2.订单信息表订单信息表中文名称字段名数据类型是否为空默认值备注订单编号Order_NoNUMBER系统生成PK下单日期Order_DateDATE 提取下单时计算机时间网上下单的日期,规定时限不确认订单就自动取消预订单发货日Send_D DATE 发货期ate 地收到货物确认订单的日期订单类别Order_SortV ARCHAR2(20)保价金额supvalueNUMBER可为空货物资费Goods_FeeNUMBER总计费用Total_FeeNUMBER保价金额+货物资费支付状态Pay_StateV ARCHAR2(20)所属交接单编号Co_No NUMBER可为空生成交接单之后才FK有备注remark V ARCHAR2(100) 可为空3.货物表货物表(Goods)中文名称字段名数据类型是否为空默认值备注货物编号Goods_NoNUMBERNOTNULLPK货物名称Goods_NameV ARCHAR2(20)货物数量Goods_AmountNUMBER货物重量Goods_WeightNUMBER订单编号Order_NoNUMBERFK4.订单状态表订单状态表(Order_State)中文名称字段名数据类型是否为空默认值备注记录编号Orec_NoNUMBERNOTNULLPK操作站编号All_No NUMBERFK操作员编号Emp_IDNUMBERFK订单编号Order_NoNUMBERFK状态编号Orstate_NoNUMBER状态更新时间Orstate_TimeDATE5.交接单表交接单表(Conn_Order)中文名称字段名数据类型是否默认备注为值空Co_No Number PK交接单编号Trans_No Number FK_CO_CP 已有运力编号All_No_Des NUMBER FK目的地All_No_Src NUMBER FK交接地最迟Co_Limtime Date到达时间Co_Amount Number包含订单数量配送Co_Weight NUMBER重量(吨)6.配送点表配送点表(All_Station)中文名称字段名数据类型是否为空默认值备注配送点编号All_No Number(8) NOTNULL PK配送点名称All_Name Varchar2所属省份All_Provin Varchar2所属城市All_City Varchar2第四章总结经过一学期的理论学习,对数据库的理论有了一个深层次的理解。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
合肥师范学院实验报告册2014 / 2015 学年第1 学期系别计算机学院实验课程数据库原理专业班级姓名学号指导教师李宜兵实验一——数据库基本操作一、实验目的1.熟悉MS SQL SERVER运行界面,掌握服务器的基本操作。
2.掌握界面操作方法完成用户数据库建立、备份和还原。
3.建立两个实验用的数据库,使用企业管理器和查询分析器对数据库和表进行基本操作。
二、实验预习内容在认真阅读教材及实验指导书的基础上,上机前请预习以下内容,并在空白处填写相应的步骤或命令。
1.熟悉SQL SERVER 2000 的运行环境,练习服务器基本操作:打开、停止、关闭。
2.使用SQL SERVER 2000 中的企业管理器完成以下任务。
数据库名称:STC表:STU(sno char(9), sname varchar(50), ssex char(2) , sage int, sdept char(2) );COURSE(cno char(3), cname varchar(50), cpno char(3), credit int );SC(sno char(9), cno char(3), grade int );说明:以上为表结构,以sno char(9)为例,说明sno属性设置为字符类型,宽度为9,int指整型数据。
1)建立数据库STC,分别建立以上三张表,并完成数据录入。
(表结构及数据参见教材)2)分析并建立各表的主码,用下划线在上面表结构中标出主码。
create table stu(sno char(9) primary key,sname varchar(50),ssex char(2),sage int,sdept char(2));select* from coursecreate table course( cno char(3) primary key,cname varchar(50),cpno char(3),credit int ,foreign key (cpno) references course(cno));create table sc(sno char(9),cno char(3),grade int,primary key(sno,cno),foreign key (sno) references stu(sno),foreign key (cno) references course(cno));insertinto stuvalues('95001','李勇','男','20','cs');Stu表:Sc表:3)建立各表之间的关联,请简述操作步骤。
建立关联:右击SC表,设计表---在任意一个空白处右击---关系---表和列规范---选择主键表course对应的主码cno和外键表sc对应的cno以及主键表stu对应的主码sno和外键表sc对应的sno—确定即可4)参考实验指导书的【第5章数据库的备份和还原】,使用企业管理器对数据库STC 进行备份,并尝试在个人电脑与机房电脑上进行还原,请简述备份、还原操作的步骤。
右击STC数据库----任务—备份—备份到(添加到你要备份到的地方)---确定。
右击STC数据库----任务—还原----数据库---(从原数据库或源设备)----选择路径--确定。
3.在SQL SERVER 2000 的查询分析器中使用SQL语言完成以下任务。
参考实验指导书《数据库系统实验指导教程》【实验 1.1 数据定义】,建立数据库SCHOOL,分别建立students、teachers、courses、choices四张表,表结构见实验指导书P236 【附录A】。
1)用SQL语言创建数据库、建表。
建表时为各表建立关键字、设置外码,数据暂不录入,请写出对应的SQL命令。
create table students(sid char(10) primary key,sname char(30) not null,email char(30),);create table teachers(tid char (10) primary key,tname char(30) not null,email char(30),salary int,);create table courses(cid char(10) primary key,cname char(30) not null,hour int,);create table choices(no int primary key,sid char(10) not null,tid char(10) not null,cid char(10) not null,score int ,foreign key (sid) references students(sid),foreign key (tid) references teachers(tid),foreign key (cid) references courses(cid),);2)为students表、courses建立按主键増序排列的索引,请写出相应的SQL命令。
create index s on students(sid asc)create index c on courses(cid asc)3)删除course上的索引,请写出相应的SQL命令。
drop index c on courses4)在SCHOOL数据库中的students表中增加一个“出生日期”字段,类型为日期时间型,请写出对应的SQL命令。
Alter table s tudents add “出生日期” datetime5)删除students中的“出生日期”字段,请写出对应的SQL命令。
Alter table students drop clumn 出生日期6)删除SCHOOL数据库中的students表,请写出对应的SQL命令。
drop table students cascade4.使用企业管理器创建数据库SCHOOL,实现内容与实验预习内容3完全相同。
5.使用企业管理器,将SCHOOL数据库分离出MS SQL SERVER,请简述步骤。
点开数据库---找到school数据库----(右击)所有任务----分离数据库----确定。
6.使用企业管理器,使用【数据库/所有任务/附加数据库】将SCHOOL数据库添加进SQLSERVER,并查看数据。
7.使用查询分析器,删除数据库STC,请写出对应的SQL命令。
Drop database stc8.结束本次实验三、实验课后训练1.使用企业管理器练习数据的导入导出。
1)将SCHOOL数据库students表中的数据导出到STC数据库对应的stu表中;2)向STC数据库courses表导入SCHOOL数据库courses表中的数据;3)自行练习实验指导书【实验5.3 SQL SERVER数据库的导入与导出】部分;2.自行练习实验指导书【实验1.1数据定义】部分。
四、实验报告1.简述本次实验所用到的SQL命令及其功能。
命令:creat database <数据库名> 功能:建立数据库命令:Creat table <表名> (<列名> <数据类型> [列级完整性约束条件])[,<表级完整性约束条件>]功能:定义基本表命令:alter table <表名>[add<新列名> <数据类型> [完整性约束]]-----增加新列和新的完整性约束条件[Drop <完整性约束名>]----删除指定的完整性约束条件[alter column <列名> <数据类型> ];---修改原有的列定义,包括列名和数据类型。
功能:修改基本表2.在MS SQL SERVER中数据库的“分离|添加”与“备份|还原”是相同的功能吗?答:在MS SQL SERVER中数据库的“分离|添加”与“备份|还原”的功能是不相同的。
分离之后的数据库在用户不更改路径的情况下会分离在系统默认的路径上,且分离之后在数据库的下属栏中找不到分离的数据库,除非重新按指定路径添加。
而备份的数据库还会显示在数据库的下属栏中。
3.实验总结(实验过程中出现的问题、解决方法、结果如何或其它)本次试验过程中遇到了很多问题,因为是第一次使用这个软件,有好多东西都不知道在哪,比如,不知道如何建立关联,如何备份还原数据库等,经过询问同学才知道。
对书上的知识不是很了解,不知道如何建立索引和删除索引,在看书之后才知道如何做。
经过这次实验,以后做实验要好好预习。
实验二——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的所有学生的名称,按编号顺序排列;select sname from students where grade='2001' order by sid2)查询所有课程名称中含有data的课程编号;select cid from courses where cname like '%data%'3)统计所有老师的平均工资;select A VG(salary) 平均工资from teachers4)查询至少选了3门课的学生编号;select sidfrom choicesgroup by sid having count(*)>=35)查询学号为80009026的学生的姓名、所选课名及成绩;select sname,cname,scorefrom students,courses,choiceswhere students.sid=80009026 and choices.sid=students.sidand choices.cid =courses.cid6)查询没有学生选的课程编号;select cidfrom courseswhere cid not in(select cidfrom choices )7)查询既选了C++又选了Java课程的学生编号;select sidfrom choices,courseswhere choices.cid=courses.cid and cname='c++'and sid in(select sidfrom choices,courseswhere choices.cid=courses.cid and cname='java'))8)查询选了C++但没选Java课程的学生编号;select sidfrom choices,courseswhere choices.cid=courses.cid and cname='c++'and sid not in(select sidfrom choices,courseswhere choices.cid=courses.cid and cname='java')9)向STUDENTS表中插入“LiMing”的个人信息(编号:700045678,名字:LiMing,Email:LX@,年级:1992);insert into studentsvalues ('700045678','liming','LX@','1992')10)将“LiMing”的年级改为2002;update studentsset grade='2002'where sname='liming'11)删除所有选了Java课程的学生选课记录;deletefrom choiceswhere cid=(select cidfrom courseswhere cname='java')12)求出每门课的课程号、选课人数,结果存入数据库表T1中。