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

合集下载

数据库管理系统实验报告

数据库管理系统实验报告

数据库管理系统实验报告数据库管理系统实验报告引言:数据库管理系统(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-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)”。

数据库实验及其答案

数据库实验及其答案

《数据库系统概论》实验报告书专业班级学号姓名指导教师安徽工业大学计算机学院实验一:数据定义/数据操纵语言[ 实验日期 ] 2011 年 4 月 10 日[ 实验目的 ]熟悉SQL SERVER上机环境;熟练掌握和使用DDL语言,建立、修改和删除数据库表;熟练掌握和使用DML语言,对数据进行增加、修改和删除操作。

[ 实验内容 ]1.先建立数据库:STUDENT用两种方式建立:在查询分析器中以DDL语言方式建立.步骤为:先在指定的地方建立放置数据库文件的文件夹(如学生数据库),然后将建立的数据库文件放到指定的文件夹中.2.SQL数据定义语句:例1-1: (建立数据库表) 建立教学数据库的四个数据库表,其中Student表中不包含SSEX(C,2) 字段,Sname 字段为Sname(C,8)且可为空。

create table Student(SNO char(5) primary key,SNAME char(8) NULL,SDEPT char(2),SCLASS char(2),SAGE smallint)create table Course(CNO char(3) primary key,CNAME char(16),CTIME smallint)create table Teach(TNAME CHAR(8),TSEX CHAR(2),CNO CHAR(3),TDATE smalldatetime,TDEPT CHAR(2)) create table Score (sno char(5),cno char(3),Score float);例1-2: (修改数据库表) 在Student表中增加SSEX(C,2) 字段。

alter table student add SSEX char(2)例1-3: (修改数据库表) 将Student表中把Sname 字段修改为Sname(C,10)且为非空。

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

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

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语句进行数据修改。

数据库技术与应用实验报告及答案

数据库技术与应用实验报告及答案

数据库技术与应用实验报告册所在学院________________班级________________学号________________姓名________________批阅教师________________时间:2008.9—2008.12实验一实验名称数据库的规范化设计得分实验要求1.熟悉ACCESS数据库的建库过程2.理解数据库规范化设计的基本内容3.根据给定的数据表作出分解,达到规范化的要求实验设备实验地点实验内容:1.使用SQL语句写出根据下列表格创建Access数据库并输入数据操作内容;学号姓名性别出生年月联系电话课程号课程名成绩20000101沈吉洁女1982-10-16021-68120304000006C语言程序设计67 20000101沈吉洁女1982-10-16021-68120304000007数据库原理20000102丁爽女1981-11-15021-32450120000006C语言程序设计56 20000102丁爽女1981-11-15021-32450120000007数据库原理76 20010101李颖女1982-9-240771-56703630000001高等数学78 20010101李颖女1982-9-240771-56703630000003毛泽东思想65 20010101李颖女1982-9-240771-56703630000005计算机专业英语85 20010101李颖女1982-9-240771-56703630000006C语言程序设计60 20010101李颖女1982-9-240771-56703630000007数据库原理78 20010101李颖女1982-9-240771-56703630000010大学体育60 20010102王玉华女1982-10-2021-61424229000001高等数学60 20010102王玉华女1982-10-2021-61424229000003毛泽东思想80 20010102王玉华女1982-10-2021-61424229000005计算机专业英语75 20010102王玉华女1982-10-2021-61424229000006C语言程序设计60 20010102王玉华女1982-10-2021-61424229000007数据库原理75 20010102王玉华女1982-10-2021-61424229000010大学体育80计算机软件技术课群——数据库技术与应用实验报告2.指出该表格有哪些不合理的地方(主键、冗余、传递等问题)?你是如何加以解决的(如何分解,分解的依据)?分解后如何保持表格的完整性(建立了哪些关系,画图说明)?实验收获:实验二实验名称网络数据库应用的设计与实践得分实验要求1.熟悉SQL SERVER的环境与设置2.了解SQL Server数据库与其他数据库数据导入导出操作3.了解SQL Server数据库备份操作4.会使用系统存储过程查看数据库信息实验设备实验地点实验内容:1.在Windows 2000 Server环境中使用SQL Server,并将上个实验报告建立的Access数据库导入到SQL Server实例中,写出具体的操作步骤。

数据库实验示例带答案

数据库实验示例带答案

示例1实验一实验名称:SQL语句的应用(6课时)一、实验目的通过使用SQL SERVER企业管理器建立表。

模式为人事表、客户表、销售表、销售明细表、产品表。

理解数据库模式的概念,理解主键约束、外键约束、UNIQUE约束和CHECK 约束。

通过SQL SERVER企业管理器建立表间的约束。

将得到的表生成脚本,保存。

二、实验环境是MS SQL SERVER 2000的中文客户端。

三、实验示例create table employee1(emp_no char(5) not null,constraint emp_nochk check(emp_no like '[E-F][0-9][0-9][0-9][0-9]'),emp_name char(10) not null,emp_sex char(1) not null,constraint emp_sexchk check(emp_sex in ('m','f')),emp_phone char (13) not null,constraint emp_phonechk check(emp_phone like '([0-9][0-9][0-9])[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]'), emp_add varchar(60) not null,emp_salary char(5) not null,constraint emp_salarychk check (emp_salary between 60000 and 80000))go四、实验内容与步骤1、建立五张表,每张表至少需要20条记录。

(1)/*员工人事表employee */(3)/*销售主表sales */(4)/*销货明细表sale_item */2、建立表的同时创建表的约束。

(1)为每张表建立主键约束。

数据库系统原理实验报告册(带答案)

数据库系统原理实验报告册(带答案)

河南工程学院计算机科学与工程系数据库系统原理实验报告册学期:课程:专业:班级:学号:姓名:指导教师:目录实验一 SQL Server 2000安装、数据库创建及管理 (1)一、实验学时 (1)二、实验目的 (1)三、实验内容 (1)四、实验要求 (13)五、代码清单 (13)六、实验中出现的问题及解决的方法 (15)七、思考讨论题或体会或对改进实验的建议 (16)实验二表和表数据的操作 (17)一、实验学时 (17)二、实验目的 (17)三、实验内容 (17)四、实验要求 (22)五、代码清单 (22)六、实验中出现的问题及解决的方法 (24)七、思考讨论题或体会或对改进实验的建议 (25)实验三索引和视图 (26)一、实验学时 (26)二、实验目的 (26)三、实验内容 (26)四、实验要求 (31)五、代码清单 (31)六、实验中出现的问题及解决的方法 (33)七、思考讨论题或体会或对改进实验的建议 (34)实验四 T-SQL程序设计 (35)一、实验学时 (35)二、实验目的 (35)三、实验内容 (35)四、实验要求 (39)五、代码清单 (39)六、实验中出现的问题及解决的方法 (41)七、思考讨论题或体会或对改进实验的建议 (42)实验五数据库安全性 (43)一、实验学时 (43)二、实验目的 (43)三、实验内容 (43)四、实验要求 (46)五、代码清单 (47)六、实验中出现的问题及解决的方法 (49)七、思考讨论题或体会或对改进实验的建议 (49)实验六数据库完整性 (51)一、实验学时 (51)二、实验目的 (51)三、实验内容 (51)四、实验要求 (54)五、代码清单 (54)六、实验中出现的问题及解决的方法 (56)七、思考讨论题或体会或对改进实验的建议 (57)实验一 SQL Server 2000安装、数据库创建及管理一、实验学时:2学时二、实验目的(1)了解安装SQL Server2000的硬件和软件环境。

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

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

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

1.记录实验内容2.总结分析实验中的收获心得教师评语实验二1、实验内容和步骤 1 (一)请分别使用Management Stuio及T-SQL完成以下内容1、创建教师授课管理数据库JSSK,并完成以下内容;1)在数据库JSSK 中创建下列三张表;表名teachers 列名数据类型说明描述Tno 字符型,长度7 主键教师号Tname 字符型,长度10 非空姓名Tsex 字符型,长度2 默认取值为“男” 性别Birthday 小日期时间型允许空出生日期Dept 字符型,长度20 允许空所在部门Sid 字符型,长度18 身份证号截图如下表名lessons 列名数据类型说明描述Cno 字符型,长度10 主键课程号Cname 字符型,长度20 非空课程名Credit 短整型学分property 字符型,长度为10 课程性质截图如下表名shouke 列名数据类型说明描述Tno 字符型,长度7 主键教师号Cno 字符型,长度10 主键课程名Hours 整数课时截图如下2)在shouke表里添加一个授课类别字段,列名为Type,类型为Char,长度为4;3)删除lessons表中的property列;4)删除数据表lessons;2、请在自己的专用数据库(用完整学号命名)内完成以下内容1)依据数据表的结构创建相对应的数据表,表结构如下所示;学生信息表(student)字段名称字段类型及长度说明备注Sno Char(9)学生学号主关键字Sname Char(8)学生姓名非空Ssex Char(2)学生性别可为空Sage Int 学生年龄可为空Sdept VarChar(8)学生所在院系可为空截图如下课程信息表(course)字段名称字段类型及长度说明备注Cno Char(4)课程编号主关键字Cname VarChar(10)课程名称非空Cpno Char(4)先行课可为空,外键参照CNO Ccredit Int 学分可为空截图如下选课信息表(sc)字段名称字段类型及长度说明备注Sno Char(9)学生学号主关键字,外键参照student SNO Cno Char(4)课程编号主关键字,外键参照course CNO Grade Int 成绩可为空截图如下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)表结构列名数据类型说明描述Cpbh 字符型,长度6 主键产品编号Cpmc 字符型,长度30 非空产品名称Jg 浮点型,长度8 允许空价格Kcl 整型,长度4 允许空库存量表名销售商(xss)表结构列名数据类型说明描述Xsbh 字符型,长度6 主键销售商编号Xsmc 字符型,长度30 非空销售商名称Dq 字符型,长度10 允许空地区Fzr 字符型,长度8 允许空负责人Dh 字符型,长度12 允许空电话Bz 文本,长度16 允许空备注表名产品销售(xss)表结构列名数据类型说明描述Cpbh 字符型,长度 6 主键产品编号Xsbh 字符型,长度6 主键销售商编号Xssj Datetime,长度8 非空销售时间Sl 整型,长度4 非空数量Je 浮点型,长度8 非空金额三张表建立的截图如下修改XSS表名称截图如下(二)使用Management Stuio,在数据库视图下,选择表对象中的相应表选择打开,在浏览视图下输入如下表记录选课信息表(sc)Sno Cno Grade 200515001 1 75 2005150021 85 2005150023 53 200515003 1 86 200515004 1 74 200515005 1 58 200515006 1 84 200515004 2 46 200515005 2 89 200515006 2 65 200515008 2 72 200515009 2 76 200515010 2 96 200515010 8 86 2005150017 70 200515002 10 56 200515001 5 58 200515001 4 62 200515002 4 85 209095001 1 92 209095001 2 85 209095001 3 88 209095002 2 90 209095002 3 80 209095003 2 85 209095004 1 58 200995004 2 85 200515002 2 NULL 200515001 3 NULL 200515001 2 NULL 学生信息表(student)sno sname ssex sage sdept 209095001 李勇男20 CS 209095002 刘晨女19 IS 209095003 王敏女18 MA 209095004 张立男19 IS 209095005 刘云女18 CS 200515001 赵菁菁女23 CS 200515002 李勇男20 CS 200515003 张力男19 CS 200515004 张衡男18 IS 200515005 张向东男20 IS 200515006 张向丽女20 IS 200515007 王芳女20 CS 200515008 王民生男25 MA 200515009 王小民女18 MA 200515010 李晨女22 MA 200515021 刘峰男25 CS 200515022 牛站强男22 200515023 李婷婷女18 CM 200515024 严丽女20 EN 200515025 朱小鸥女30 WM 课程信息表(course)cno cname cpno credit 1 数据库5 4 2 数学6 3 信息系统1 3 4 操作系统6 4 5 数据结构7 4 6 数据处理 4 7 PASCAL语言 6 4 8 大学英语 4 9 计算机网络4 10 人工智能2 然后,使用T-SQL实现进行以下操作 1. 在表student中增加一条包含自己姓名的记录。

工作报告之数据库实验报告答案

工作报告之数据库实验报告答案

数据库实验报告答案篇一:2013 《数据库原理及应用》实验报告答案】实验二数据定义一、实验目的1 、掌握数据库引擎的使用方法,加深对sql 的语句的理解;2 、使用sql 语句创建数据库、删除数据库3、熟练掌握ddl 语言的数据定义操作,包括create 、alter 、drop二、实验内容在sql 查询分析器中用create 、drop 、alter 语句创建、删除、修改基本表。

三、实验步骤1、根据课本中的说明,分析s表,p表,j表和spj表的主码和外码:(1) s表,p表,j表的主码分别是哪个属性,s表,p表,j表这三个表有没有外码?如果有,请写出。

s 表的主码sno p 表的主码pno j 表的主码jno 没有外码(2) spj 表的主码是由哪几个属性组成的属性组?spj 表的外码有几个,分别是哪些属性?分别参照哪些表的哪个属性?spj 主码( sno,pno,jno ) 外码sno 参照s 表的sno ,外码pno 参照p 表的pno ,外码jno 参照j 表的jno 。

2. 新建数据库spj ,并在数据库spj 中创建s 表,p 表,j 表和spj 表。

( 1 )创建供应商表s 的sql 语句,要求设置主码:create table s (sno char(4) primary key, sname varchar(40), status smallint, city varchar(20) );( 2)创建零件表p 的sql 语句,要求设置主码并将该约束命名为p_pk :create table p(pno char(4) constraint p_pk primary key,pname varchar(40),color char(2),weight smallint);( 3)创建工程项目表j 的sql 语句,要求设置主码并命名为j_pk :create table j (jno char(4) constraint j_pk primary key,jname varchar(40),city varchar(20));( 4)创建基本表供应情况表spj 的sql 语句,要求设置主码和外码:create table spj (sno char(4) references s(sno),pno char(4) references p(pno),jno char(4) references j(jno),qty smallint,primary key(sno,pno,jno));3. 在窗口下键入drop table s 命令,运行后观察结果。

数据库实验报告范本(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语言的运用。

数据库实验报告实验二参考答案[最终版]

数据库实验报告实验二参考答案[最终版]

数据库实验报告实验二参考答案[最终版]第一篇:数据库实验报告实验二参考答案[最终版]1.你的老板要求你创建一个数据量为20G的数据库,但是你现在的硬盘上没有一个这么大空闲容量的分区,只有3个空闲容量为8G的分区,请问,你该如何完成这个任务?答:为该数据库创建3个数据文件,每个数据文件只需保存小于8G的数据,将这3个数据文件分别存储在不同的硬盘分区即可。

注:数据库中的数据都保存在该数据库的若干数据文件中,而非日志文件!2.你想创建一个初始大小为2MB的数据库,但是你却发现你创建的数据库的初始大小是5MB,而且不能小于这个值,请问是什么原因?答:系统数据库中的model数据库为用户创建数据库提供模板,也就是说,在创建数据库时,数据库引擎首先通过复制 Model 数据库中的内容来创建数据库的第一部分,然后再用空页填充新数据库的剩余部分。

因此,用户创建的数据库的初始大小不能小于model数据库的大小。

该问题的原因在于model数据库数据文件的初始大小被设定为5MB。

/***************************SQL语言部分*****************************/ /*创建数据库student*/create database studenton(name=student_data,filename='C:DATAstudent_data.mdf', size=3,maxsize=unlimited,filegrowth=1)log on(name=student_log,filename='C:DATAstudent_log.ldf',size =1,maxsize=20,filegrowth=10%)/*修改数据库student--添加数据文件*/alter database student add filegroup studata /*先增加一个文件组studata*/ goalter database studentadd file(Name=student_data1,filename='D:DATAstudent_data1.nd f',Size=50,Maxsize=500,Filegrowth=30%)to filegroup studata /*删除数据库student */ drop database student第二篇:SQL数据库实验报告实验二实验2SQL Server数据库的管理1.实验目的(1)了解SQL Server 数据库的逻辑结构和物理结构的特点。

数据库管理实验报告

数据库管理实验报告

一、实验目的1. 了解数据库管理系统的基本概念和原理。

2. 掌握数据库的基本操作,包括创建、修改、删除和查询数据库表。

3. 熟悉SQL语言的使用,能够编写简单的SQL语句进行数据库操作。

4. 学会使用数据库管理工具进行数据库管理。

二、实验环境1. 操作系统:Windows 102. 数据库管理系统:MySQL 5.73. 开发工具:MySQL Workbench三、实验内容1. 数据库创建与删除(1)创建数据库在MySQL Workbench中,选择“数据库”菜单,点击“创建数据库”,在弹出的对话框中输入数据库名称“test”,点击“创建”按钮。

(2)删除数据库在MySQL Workbench中,选择“数据库”菜单,点击“删除数据库”,在弹出的对话框中选择“test”数据库,点击“删除”按钮。

2. 数据表创建与删除(1)创建数据表在MySQL Workbench中,选择“test”数据库,右键点击“表”,选择“创建表”,在弹出的对话框中输入表名“students”,然后添加字段名、数据类型、约束等,点击“保存”按钮。

(2)删除数据表在MySQL Workbench中,选择“test”数据库,右键点击“students”表,选择“删除表”,在弹出的对话框中确认删除,点击“删除”按钮。

3. 数据插入与删除(1)插入数据在MySQL Workbench中,选择“test”数据库,右键点击“students”表,选择“打开表”,在弹出的窗口中输入要插入的数据,点击“保存”按钮。

(2)删除数据在MySQL Workbench中,选择“test”数据库,右键点击“students”表,选择“打开表”,在弹出的窗口中选择要删除的数据行,点击“删除”按钮。

4. 数据查询(1)简单查询使用SQL语句进行简单查询,例如:SELECT FROM students;SELECT name, age FROM students;(2)条件查询使用SQL语句进行条件查询,例如:SELECT FROM students WHERE age > 20;SELECT FROM students WHERE name LIKE '张%';(3)排序查询使用SQL语句进行排序查询,例如:SELECT FROM students ORDER BY age ASC;SELECT FROM students ORDER BY age DESC;5. 数据库备份与还原(1)备份数据库在MySQL Workbench中,选择“test”数据库,点击“备份”,在弹出的对话框中选择备份路径和文件名,点击“保存”按钮。

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

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 = '教学库',@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 可能出现问题附加数据库出现“无法打开物理文件"X.mdf"。

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

)"。

(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:(2)创建“仓库”表,表结构如表2:(3)创建“库存情况”表,表结构如表3:(1)USE仓库库存GOCREATE TABLE 商品(商品编号char(6) NOT NULL PRIMARY KEY,商品名称char(20) NOT NULL,单价Float,生产商Varchar (30))(2),(3)略。

2.2 建立“商品”表、“仓库”表和“库存情况”表三表之间的关系图。

2.3分别给“商品”表、“仓库”表和“库存情况”表添加数据。

3.数据库查询.3.1 试用SQL的查询语句实现下列查询:(1)统计有学生选修的课程门数。

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

答:SELECT AVG(年龄) FROM 学生,选课WHERE 学生.学生号=选课.学生号and 课程号=’C004’(3)求学分为3的每门课程的学生平均成绩。

答:SELECT 课程.课程号,AVG(成绩) FROM 课程,选课WHERE 课程.课程号=选课.课程号and 学分=3GROUP BY 课程.课程号(4)统计每门课程的学生选修人数,超过3人的课程才统计。

要求输出课程号和选修人数,查询结果按人数降序排列,若人数相同,按课程号升序排列。

答:SELECT 课程号,COUNT(*) FROM 选课GROUP BY 课程号HAVING 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 AVG(年龄) 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学生号HAVING 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 float ASBEGINDECLARE @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 专业=@pGROUP 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 创建存储过程,计算指定学生(姓名)的总成绩,存储过程中使用一个输入参数(姓名)和一个输出参数(总成绩)。

答:CREATE PROCEDURE Sname @S_n varchar(20), @sum1 int OUTPUT ASSELECT @sum1= sum(成绩) FROM 选课,学生WHERE 姓名=@S_n and 学生.学生号=选课.学生号5.2 在教学库中建一个学生党费表,属性(学生号,姓名,党费),学生号是主键,也是外键(参考学生表的学生号);创建一个触发器,保证只能在每年的6月和12月交党费,如果在其它时间录入则显示提示信息。

答:CREATE TABLE 学生党费表(学生号CHAR(7)primary key foreign key references 学生(学生号),姓名char(6),党费int)CREATE TRIGGER trg_学生党费表on 学生党费表for insertASif not(datepart(mm,getdate())='06' or datepart(mm,getdate())='12')BEGINprint'对不起,只能在每年的6月和12月交党费'rollbackEND6.事务与并发控制6.1 创建一个事务,将所有女生的考试成绩都加5分,并提交。

相关文档
最新文档