数据库管理系统实验报告含答案汇编

合集下载

数据库管理系统实验报告

数据库管理系统实验报告

《数据库管理系统》实验报告2011/2012学年第2学期实验项目:数据库班级:学生:(学号8 )地点:经管院A 实验室机器号:xxxxxxxx指导教师:时间:20xx 年xx 月xx 日经济管理学院信息管理教研室实验要求:将实验成果文件压缩,以<班级>_<学号>_<实验X>.RAR文件形式交付指导老师,需包含对作品的说明文件。

1.记录实验内容1、实验内容和步骤:1)(一)请分别使用Management Stuio及T-SQL完成以下内容:1、创建教师授课管理数据库JSSK,并完成以下内容;1)在数据库JSSK中创建下列三张表;表名:teachers截图如下:表名:lessons截图如下:截图如下:2)在shouke表里添加一个授课类别字段,列名为Type,类型为Char,长度为4;3)删除lessons表中的property列;4)删除数据表lessons;2、请在自己的专用数据库(用完整学号命名)内完成以下内容:1)依据数据表的结构创建相对应的数据表,表结构如下所示;学生信息表(student)截图如下:课程信息表(course)截图如下:选课信息表(sc)截图如下:2)在表student中增加新字段“班级名称(sclass)“;修改表student中字段名称“sclass”为“classname”;在表student中删除字段“班级名称(classname)”;(sp_rename 'tablename.old_column_name ','new_column_name')截图如下:3)修改表course中字段“Cname”的长度为20;截图如下:4)修改表SC中Grade字段类型为smallint;截图如下:3、(选做)创建产品销售数据库CPXS,数据文件的逻辑文件名为cpxs_data,物理文件名为D:\sql\cpxs.mdf;文件初始大小为2MB,自动增长,每次增长1MB;日志文件逻辑文件名为cpxs_log,物理文件为D:\sql\cpxs.ldf;文件初始大小2MB,自动增长,每次增长15%;1)在数据库CPXS中创建下列三张表;2)修改表XSS新名称为sales;(exec sp_rename 'old_tablename','new_tablename')表名:产品表(cp)表结构表名:销售商(xss)表结构表名:产品销售(xss)表结构三张表建立的截图如下:修改XSS表名称截图如下:(二)使用Management Stuio,在数据库视图下,选择表对象中的相应表选择打开,在浏览视图下输入如下表记录:学生信息表(student)选课信息表(sc)课程信息表(course)表(注:用二个SQL语句,先建表后插入数据.);学分;5分;20、MA”;8.删除数据表student中无专业的学生记录;9.删除数据表student中计算机系年龄大于25的男同学的记录;10.删除数据表course中学分低于1学分的课程信息;2)实验遇到的主要问题:表中主键的设置以及两个以上主键的设置,对于T-SQL语句的操作还不是很熟练。

数据库的管理实验报告

数据库的管理实验报告

数据库的管理实验报告数据库的管理实验报告引言数据库管理是现代信息管理的重要组成部分,通过对数据的存储、检索、更新和删除等操作,实现对数据的有效管理和利用。

本篇实验报告将介绍我们小组在数据库管理实验中的实践过程和结果。

实验目的本次实验的目的是通过使用数据库管理系统,实现对一个简单的学生信息管理系统的设计和实现。

通过这个实验,我们将学习和掌握数据库的基本操作和管理技术,并能够在实际应用中灵活运用。

实验环境我们使用的数据库管理系统是MySQL,它是一个免费、开源的关系型数据库管理系统。

我们选择MySQL作为实验环境,是因为它具有广泛的应用领域和强大的功能,同时也有丰富的学习资源和社区支持。

实验过程1. 数据库设计在实验开始之前,我们首先进行了数据库的设计。

我们确定了需要存储的数据表,包括学生表、课程表和成绩表。

学生表包括学生的学号、姓名、性别和年龄等信息;课程表包括课程的编号、名称和学分;成绩表包括学生的学号、课程的编号和成绩等信息。

通过这些表的设计,我们可以建立学生、课程和成绩之间的关联关系,实现对学生信息和成绩的管理。

2. 数据库创建在数据库设计完成后,我们使用MySQL命令行工具创建了一个名为"student_management"的数据库。

通过创建数据库,我们为后续的实验操作提供了一个存储数据的空间。

3. 数据表创建在数据库创建完成后,我们使用MySQL命令行工具创建了三个数据表,分别是"student"、"course"和"score"。

通过创建这些数据表,我们实现了对学生信息、课程信息和成绩信息的存储。

4. 数据插入在数据表创建完成后,我们使用MySQL命令行工具插入了一些测试数据。

通过插入数据,我们可以验证数据库的设计是否合理,并且为后续的实验操作提供了一些具体的数据。

5. 数据查询在数据插入完成后,我们使用MySQL命令行工具进行了一些数据查询操作。

数据库管理系统实验报告

数据库管理系统实验报告

数据库管理系统实验报告数据库管理系统实验报告引言:数据库管理系统(Database Management System,简称DBMS)是一种用于管理和组织数据的软件系统。

它可以帮助用户存储、检索、更新和管理数据,提供高效的数据处理和数据访问功能。

在本次实验中,我们使用了一款名为MySQL的开源数据库管理系统,通过实际操作来深入了解数据库的基本原理和功能。

一、实验目的本次实验的目的是通过使用MySQL数据库管理系统,掌握数据库的创建、表的设计、数据的插入和查询等基本操作,进一步理解数据库的结构和运行机制。

二、实验环境本次实验使用的实验环境如下:1. 操作系统:Windows 102. 数据库管理系统:MySQL 8.03. 开发工具:MySQL Workbench三、实验过程1. 数据库的创建在MySQL Workbench中,我们首先创建了一个名为"mydb"的数据库。

通过SQL语句"CREATE DATABASE mydb;"实现数据库的创建。

在创建数据库时,我们可以指定数据库的名称、字符集、排序规则等参数。

2. 表的设计在数据库中,数据以表的形式进行组织和存储。

在本次实验中,我们创建了一个名为"students"的表,用于存储学生的信息。

表的设计包括了学生的学号、姓名、性别、年龄等字段。

通过SQL语句"CREATE TABLE students (id INT PRIMARY KEY, name VARCHAR(20), gender VARCHAR(10), age INT);"实现表的创建。

在创建表时,我们需要指定表的名称、字段的名称和类型、字段的约束等。

3. 数据的插入在表的设计完成后,我们可以向表中插入数据。

通过SQL语句"INSERT INTO students (id, name, gender, age) VALUES (1, '张三', '男', 20);"实现向表中插入一条学生记录。

数据库管理系统实验报告doc

数据库管理系统实验报告doc

数据库管理系统实验报告篇一:数据库_图书馆管理系统实验报告数据库课程设计报告专业:计算机科学与技术班级: 03 组长:张云60 组员:王冉28指导教师:袁道华成绩:XX年12月16日一、课程设计概述1. 课程设计背景课程需要开发一个图书管理系统,要求在读者登记处可以将读者的信息添加,信息系统中保存,当读者信息发生变化,对计算机内容进行修改,当读者办理退卡手续要删除此读者信息,图书管理负责图书和出版社的管理,读书借还处进行借书管理,还书管理,库存查询,图书排行榜,生成超期未还书的读者,进行通知.给不同用户设置不同权限,供用户访问数据库。

2. 编写目的熟练掌握mysql中的创建数据库、创建表、显示、查询、select语句、视图、存储过程、创建检索、对表的添加、删除、修改和用户权限的设置等基本运用,并通过编写这个图书管理系统来实际演练。

3. 软件定义Mysql是目前最流行的开源的中小型关系数据管理系统,目前被广泛的应用于internet上得中小型网站中,它由mysql AB公司开发、发布并支持。

本实验用的是mysql 5.1版本4. 开发环境本实验用的是mysql 5.1版本,windowsXX二、需求分析1. 问题的提出1:怎么通过mysql和信息之间的关系来创建图书管理系统的数据库及表? 2:怎样来实现对插入读者信息并保存、修改及删除? 3:怎么来实现对图书的管理?4:怎样实现对借书后在读书借还处添加读者借书信息和还书后删除读者借还处中的借书信息且更新图书管理处的图书数量?5:怎么实现对超期读者进行罚款操作和生成这些读者的名单,以方便通知? 6:怎样实现图书的借书排行榜和查看库存书量?7:怎么样来根据不同用户对数据库的等级的不同来设置这些用户的权限?2. 需要完成的功能及各部分功能概述1:读者登记建卡处的功能是对读者基本信息进行登记,读者信息发生变化对读者基本信息进行修改,读者要求退还借书卡时对读者信息进行删除等操作。

数据库管理系统实验报告含复习资料

数据库管理系统实验报告含复习资料

xxxx大学《数据库管理系统》课程实验报告班级: _______姓名:实验时间:年月日指导教师:_______一、实验目的1、通过实验,使学生全面了解最新数据库管理系统的基本内容、基本原理。

2、牢固掌握SQL SERVER的功能操作和Transact-SQL语言。

3、紧密联系实际,学会分析,解决实际问题。

学生通过小组项目设计,能够运用最新数据库管理系统于管理信息系统、企业资源计划、供应链管理系统、客户关系管理系统、电子商务系统、决策支持系统、智能信息系统中等。

二、实验内容1.导入实验用示例数据库:f:\教学库.mdff:\教学库_log.ldff:\仓库库存.mdff:\仓库库存_log.ldf1.1 将数据库导入在SqlServer 2005 导入已有的数据库(*.mdf)文件,在SQL Server Management Studio 里连接上数据库后,选择新建查询,然后执行语句EXEC sp_attach_db @dbname = '教学库',@ = 'f:\教学库.mdf',@ = 'f:\教学库_log.ldf'gouse [教学库]EXEC sp_changedbowner 'sa'goEXEC sp_attach_db @dbname = '仓库库存',@ = 'f:\仓库库存.mdf',@ = 'f:\仓库库存_log.ldf'gouse [仓库库存]EXEC sp_changedbowner 'sa'go1.2 可能出现问题附加数据库出现“无法打开物理文件"X.mdf"。

操作系统错误5:"5(拒绝访问。

)"。

(Microsoft SQL Server,错误: 5120)”。

解决:找到要附加的.mdf文件-->右键-->属性-->安全-->选择当前用户-->编辑-->完全控制。

数据库实验报告及答案

数据库实验报告及答案

实验任务书(实验一、实验二)课程名称:数据库原理与技术实验报告要求:1.列出所有的SQL语句和源代码;2.程序要求有适当的注释;3.对数据完整性约束实施要求给出相应的测试用例。

4.实验报告提交电子档。

实验内容:一:创建表、更新表和实施数据完整性1.运行给定的SQL Script,建立数据库GlobalToyz。

2.了解表的结构,建立所有表的关系图。

3.利用系统定义的存储过程sp_helpdb查看数据库的相关信息,例如所有者、大小、创建日期等。

4.查看所有表中出现的约束(包括Primary key, Foreign key, check constraint, default, unique)5.把价格在$20以上的所有玩具的信息拷贝到称为PremiumToys的新表中。

SELECT*INTO PremiumToysFROM ToysWHERE Toys.mToyRate>20;6.对表Toys实施下面数据完整性规则:(1)玩具的现有数量应在0到200之间;(2)玩具适宜的最低年龄缺省为1。

ALTER TABLE ToysADD CONSTRAINT C1CHECK (siToyQoh BETWEEN 0 AND 200);ALTER TABLE ToysADD CONSTRAINT C2default(1)for siLowerAge;7.给id为‘000001’玩具的价格增加$1。

update Toys set mToyRate=mToyRate+1 where cToyId='000001';8. 列出表PickofMonth中的所有记录,并显示中文列标题。

SELECT cToyId[玩具编号],siMonth[生产月份],iYear[生产年份],iTotalSold [销售总量]FROM PickofMonth;二:查询数据库1.显示属于California和Illinoi州的顾客的名、姓和emailID。

数据库技术实验报告的答案

数据库技术实验报告的答案

数据库技术实验报告的答案实验目的:本次实验旨在加深对数据库管理系统(DBMS)的理解,掌握数据库设计、实现和查询的基本技能,并通过实际操作来熟悉SQL语言的运用。

实验环境:1. 操作系统:Windows 102. 数据库管理系统:MySQL 8.03. 开发工具:Visual Studio Code实验内容:1. 数据库的创建与设计2. 数据表的创建与数据类型选择3. 数据的插入、更新与删除4. SQL查询语句的编写与执行5. 数据库的备份与恢复实验步骤与结果:1. 数据库的创建与设计:- 使用MySQL命令行工具创建名为“StudentsDB”的数据库。

- 设计了三个表:Students(学生信息),Courses(课程信息),Enrollments(选课信息)。

2. 数据表的创建与数据类型选择:- 为Students表创建字段:StudentID(INT,主键),Name (VARCHAR(50)),Age(INT),Gender(CHAR(1))。

- 为Courses表创建字段:CourseID(INT,主键),CourseName (VARCHAR(100)),Credits(INT)。

- 为Enrollments表创建字段:EnrollmentID(INT,主键),StudentID(INT),CourseID(INT),Grade(CHAR(2)),并设置StudentID和CourseID为外键。

3. 数据的插入、更新与删除:- 向Students表插入了10条学生记录。

- 向Courses表插入了5门课程记录。

- 通过Enrollments表记录了学生的选课情况,包括成绩。

- 使用UPDATE语句更新了学生的选课成绩。

- 使用DELETE语句删除了某些学生的选课记录。

4. SQL查询语句的编写与执行:- 编写了多条SELECT语句,查询了学生信息、课程信息以及学生的选课情况。

- 使用了JOIN操作查询了学生与其选修课程的关联信息。

数据库管理系统实验报告

数据库管理系统实验报告

一、实验目的通过本次实验,使学生了解数据库管理系统的基本概念、原理和操作方法,掌握数据库设计、创建、查询、更新和删除等基本操作,提高数据库应用能力。

二、实验环境1. 操作系统:Windows 102. 数据库管理系统:MySQL 8.03. 开发工具:MySQL Workbench三、实验内容1. 数据库设计(1)分析图书销售管理系统的需求,确定实体和实体属性。

实体:图书、读者、借阅记录、图书类别、出版社、作者实体属性:- 图书:图书编号、书名、作者、出版社、出版日期、价格、库存数量- 读者:读者编号、姓名、性别、年龄、电话、邮箱- 借阅记录:借阅记录编号、图书编号、读者编号、借阅日期、归还日期、罚款金额- 图书类别:类别编号、类别名称- 出版社:出版社编号、出版社名称- 作者:作者编号、姓名、性别、国籍(2)根据实体和实体属性,绘制E-R图。

(3)利用PowerDesigner数据库软件系统进行系统物理数据模型设计。

2. 数据库创建(1)打开MySQL Workbench,创建新数据库。

(2)根据E-R图,创建图书、读者、借阅记录、图书类别、出版社、作者等关系表。

3. 数据库查询(1)使用SQL语句进行简单查询,如查询所有图书信息。

SELECT FROM 图书;(2)使用SQL语句进行复杂查询,如查询特定图书类别下的图书信息。

SELECT FROM 图书 WHERE 类别编号 = (SELECT 类别编号 FROM 图书类别 WHERE 类别名称 = '计算机');4. 数据库更新(1)使用SQL语句进行数据插入。

INSERT INTO 读者 (读者编号, 姓名, 性别, 年龄, 电话, 邮箱) VALUES ('R001', '张三', '男',25,'138****8000','********************');(2)使用SQL语句进行数据修改。

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

-----好资料学习 xxxx大学《数据库管理系统》课程实验报告指导教月日班级: _______姓名:实验时间:年:_______师一、实验目的1、通过实验,使学生全面了解最新数据库管理系统的基本内容、基本原理。

2、牢固掌握SQL SERVER的功能操作和。

语言Transact-SQL3、紧密联系实际,学会分析,解决实际问题。

学生通过小组项目设计,能够运用最新数据库管理系统于管理信息系统、企业资源计划、供应链管理系统、客户关系管理系统、电子商务系统、决策支持系统、智能信息系统中等。

二、实验内容1.导入实验用示例数据库:f:\教学库.mdff:\教学库_log.ldff:\仓库库存.mdff:\仓库库存_log.ldf1.1 将数据库导入在SqlServer 2005 导入已有的数据库(*.mdf)文件,在SQL Server Management Studio里连接上数据库后,选择新建查询,然后执行语句EXEC sp_attach_db @dbname = '教学库',@filename1 = 'f:\教学库.mdf',@filename2 = 'f:\教学库_log.ldf'gouse [教学库]EXEC sp_changedbowner 'sa'goEXEC sp_attach_db @dbname = '仓库库存',@filename1 = 'f:\仓库库存.mdf',更多精品文档.学习-----好资料@filename2 = 'f:\仓库库存_log.ldf'gouse [仓库库存]EXEC sp_changedbowner 'sa'go1.2 可能出现问题附加数据库出现“无法打开物理文件塜洮晤。

操作系统错误5:_x0005_(拒绝访问。

尩。

(Microsoft SQL Server,错误: 5120)”。

解决:找到要附加的.mdf文件-->右键-->属性-->安全-->选择当前用户-->编辑-->完全控制。

对.log 文件进行相同的处理。

2.删除创建的数据库,使用T-SQL语句再次创建该数据库,主文件和日志文件的文件名同上,要求:仓库库存_data最大尺寸为无限大,增长速度为20%,日志文件初始大小为2MB,最大尺寸为5MB,增长速度为1MB。

CREATE DATABASE仓库库存(NAME = '仓库库存_data',FILENAME = 'F:\仓库库存_data.MDF' ,SIZE = 10MB,FILEGROWTH = 20%)LOG ON(NAME ='仓库库存_log',FILENAME = 'F:\仓库库存_log. LDF',SIZE = 2MB,MAXSIZE = 5MB,FILEGROWTH = 1MB)2.1 在数据库“仓库库存”中完成下列操作。

(1)创建“商品”表,表结构如表1:表1 商品表列名数据类型长度是否允许为空值说明主键6 商品编号NOT NULL CharNOT NULL,Varchar 商品名称20Float 单价Varchar生产商30(2)创建“仓库”表,表结构如表2:表2 仓库表更多精品文档.学习-----好资料说明是否允许为空值数据类型列名长度主键仓库编号3 Char NOT NUL仓库地址VarcharNOT NULL20:表,表结构如表3(3)创建“库存情况”3 库存情况表表说明长度是否允许为空值列名数据类CharNOT NULL仓库编主3NOT NUL商品编主6Charint数USE仓库库存(1)GOCREATE TABLE 商品NULL PRIMARY KEY,NOT char(6) (商品编号NULL, char(20) NOT 商品名称Float,单价)(30 Varchar 生产商)3)略。

((2),”表三表之间的关系图。

”表和“库存情况2.2 建立“商品”表、“仓库表添加数据。

”表和“库存情况“商品”表、“仓库”2.3分别给..数据库查询3 的查询语句实现下列查询:3.1 试用SQL )统计有学生选修的课程门数。

(1 选课课程号) FROM 答:SELECT COUNT(DISTINCT课程的学生的平均年龄。

)求选修C004(2 选课) FROM VG(年龄学生,答:SELECT A 4'课程号and ='C00.学生学生号=选课.学生号WHERE的每门课程的学生平均成绩。

3)求学分为3(,选课,A VG(课程号成绩) FROM 课程SELECT 答:课程.=3 学分课程号and 选课课程WHERE .课程号=. 课程号.GROUP BY 课程人的课程才统计。

要求输出课程号和选修)统计每门课程的学生选修人数,超过34(人数,查询结果按人数降序排列,若人数相同,按课程号升序排列。

更多精品文档.学习-----好资料答:SELECT 课程号,COUNT(*) FROM 选课GROUP BY 课程号HA VING COUNT(*) >3ORDER BY COUNT(*) DESC, 课程号(5)检索学号比王明同学大,而年龄比他小的学生姓名。

答:SELECT姓名FROM学生WHERE学生号>(SELECT学生号FROM学生WHERE姓名='王明')and年龄<(SELECT年龄FROM学生WHERE姓名='王明')(6)检索姓名以王打头的所有学生的姓名和年龄。

答:SELECT 姓名,年龄FROM 学生WHERE 姓名LIKE ‘王%'(7)在选课表中检索成绩为空值的学生学号和课程号。

答:SELECT 学生号,课程号FROM 选课WHERE 成绩IS NULL(8)求年龄大于女同学平均年龄的男学生姓名和年龄。

答:SELECT 姓名,年龄FROM 学生WHERE 性别='男'and 年龄>(SELECT A VG(年龄) FROM 学生WHERE 性别='女')(9)求年龄大于所有女同学年龄的男学生姓名和年龄。

答:SELECT 姓名,年龄FROM 学生WHERE 性别='男'and 年龄> all (SELECT 年龄FROM 学生WHERE 性别='女')(10)检索所有比王明年龄大的学生姓名、年龄和性别。

答:SELECT 姓名,年龄,性别FROM 学生WHERE 年龄> (SELECT 年龄FROM 学生WHERE 姓名='王明')(11)检索选修课程C001的学生中成绩最高的学生的学号。

答:SELECT 学生号FROM 选课WHERE 课程号='C001' and 成绩=(SELECT MAX(成绩) FROM选课WHERE课程号='C001')(12)检索学生姓名及其所选修课程的课程号和成绩。

答:SELECT 姓名, 课程号, 成绩FROM 学生,选课WHERE学生.学生号=选课.学生号(13)检索选修2门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的更多精品文档.学习-----好资料降序排列出来。

答:SELECT 学生号,SUM(成绩) FROM 选课WHERE 成绩>=60GROUP BY学生号HA VING COUNT(*)>=2ORDER BY SUM(成绩) DESC3.2 利用控制流语句,查询学生号为0101001的学生的各科成绩,如果没有这个学生的成绩,就显示“此学生无成绩”。

答:IF EXISTS ( SELECT * FROM 选课WHERE 学生号='0101001')SELECT 课程号,成绩FROM 选课WHERE 学生号='0101001'ELSEPRINT '此学生无成绩'3.3 用函数实现:求某个专业选修了某门课的学生人数。

答:CREATE FUNCTION renshu(@p char(10),@cn char(4)) RETURNS floatASBEGINDECLARE @cou floatSELECT @cou=( SELECT count(*) FROM 学生,选课WHERE学生.学生号=选课.学生号and课程号=@cnand 专业=@p)RETURN @couEND3.4 用函数实现:查询某个专业所有学生所选的每门课的平均成绩。

答:CREATE FUNCTION average (@p char(10)) RETURNS floatASBEGINDECLARE @aver floatSELECT @aver=( SELECT 课程号,avg(成绩) FROM 学生,选课WHERE学生.学生号=选课.学生号and 专业=@p更多精品文档.学习-----好资料GROUP BY 课程号)RETURN @averEND3.5 针对“仓库库存”中的“商品”表,查询商品的价格等级,商品号、商品名和价格等级(单价1000元以内为“低价商品”,1000~3000元为“中等价位商品”,3000元以上为“高价商品”)。

答:SELECT商品编号, 商品名称,CASEWHEN 单价<1000 then '低价商品'WHEN 单价<3000 then '中等价位商品'WHEN 单价>=3000 then '高价商品'END AS 价格等级FROM 商品4.视图与索引4.1在SQL Server Management Studio中创建一个仓库库存信息视图,要求包含仓库库存数据库中三个表的所有列。

答:略。

4.2 利用T-SQL语句创建一个查询每个学生的平均成绩的视图,要求包含学生的学生号和姓名。

答:CREATE VIEW 学生_平均成绩ASSELECT 学生.学生号,姓名,avg(成绩) AS平均成绩FROM 学生,选课WHERE 学生.学生号=选课.学生号GROUP BY学生.学生号,姓名4.3 在SQL Server Management Studio中按照选课表的成绩列升序创建一个普通索引(非唯一、非聚集)。

答:略。

4.4 利用T-SQL语句按照商品表的单价列降序创建一个普通索引。

答:CREATE INDEX index_商品单价ON 商品(单价DESC)5.存储过程、触发器和游标5.1 创建存储过程,计算指定学生(姓名)的总成绩,存储过程中使用一个输入参数(姓名)和一个输出参数(总成绩)。

相关文档
最新文档