数据库原理及应用实验指导
- 格式:doc
- 大小:157.50 KB
- 文档页数:6
数据库原理及应用实验指导数据库原理及应用实验指导一、实验目的:1. 了解数据库的基本概念和原理;2. 掌握SQL语言的基本使用和操作方法;3. 学会使用数据库管理系统进行数据库的创建、插入、查询、修改和删除等操作。
二、实验内容:本次实验将围绕数据库的原理及应用展开,包括数据库的基本概念、数据库的设计原则、数据库的范式理论、SQL语言基础、数据库管理系统的使用等内容。
通过实际操作,学生能够更深入地理解数据库的工作原理,并且掌握数据库的基本操作方法。
三、实验步骤:1. 数据库基本概念1.1 什么是数据库?数据库是指一个按照数据模型组织、描述和存储数据的计算机软件,具有较好的数据管理性能。
数据库是实现数据共享和数据集成、并进行数据分析和决策的重要工具。
1.2 数据库的分类根据数据模型的不同,数据库可以分为层次数据库、网状数据库和关系数据库等不同类型。
1.3 数据库的特点数据库具有数据的共享性、冗余性小、数据独立性、数据一致性、数据安全性和故障恢复等特点。
2. 数据库设计原则2.1 单一职责原则每个数据表应该有一个明确的用途,只负责存储某一类数据。
2.2 数据冗余原则尽量避免数据冗余,减少存储空间和数据更新时的复杂度。
2.3 数据库范式理论范式理论是数据库设计的基础,包括第一范式、第二范式、第三范式等。
通过标准化设计,可以减少数据冗余,提高数据库的性能和可维护性。
3. SQL语言基础3.1 SQL语言的基本介绍SQL是结构化查询语言的缩写,是一种用于数据库管理系统的查询和程序设计语言。
3.2 SQL语句的分类SQL语句可以分为数据定义语句(DDL)、数据操作语句(DML)和数据查询语句(DQL)等不同类型。
3.3 SQL语句的基本操作方法包括数据库的创建、数据表的创建、数据插入与删除、数据查询和更新等操作。
四、数据库管理系统的使用4.1 数据库管理系统的概念数据库管理系统是一种用于管理数据库的软件系统,包括数据库的创建、数据的插入、查询、更新和删除等操作。
《数据库原理及应用》实验指导书实验一数据库的建立实验目的:掌握数据库的创建、基本表的创建和数据插入的方法实验要求:使用Oracle 11g进行数据库的创建、基本表的创建和数据插入实验条件:计算机,Oracle 11g实验内容:1、假设你是DBA,需要定义系统中的所有表。
试根据下面给出的关系模式,用SQL完成数据表的建立。
假设“阿里巴巴”酒店数据库中有如下的几个关系模式:(1)客户个人信息(身份证号,姓名,性别,年龄,工作单位)(2)客户入住信息(身份证号,客房号,入住时间,退房时间)(3)客房(客房号,客房类型号)(4)定价(客房类型号,客房类型名,单价)(5)订票(身份证号,机票号,订票时间)(6)机票(机票号,起始地,目的地,起飞时间,到达时间,机票价格,机票状态,航空公司号)注:机票状态只有三种 0:未出票1:已出票,但未被客户取走2:已出票且已被客户取走(7)航空公司(航空公司号,航空公司名,电话)(8)雇员(雇员号,姓名,雇员年龄,雇佣日期,被投诉次数)(9)打扫(雇员号,客房号)说明:数据库表中各个字段的数据类型及宽度,请根据实际情况自定。
数据库名、表名、字段名中英文均可,但需要有一定的实际含义。
2、试根据下面的完整性约束要求,用SQL对上面已经建立好的“阿里巴巴”酒店数据库表进行完整性约束定义。
(1)雇员的年龄必须大于20岁小于55岁,被投诉次数不能超过10次。
(2)客户的性别只能是“男”或“女”。
(3)客户每次入住的客房号和入住时间不能为空。
(4)各种类型客房的定价不得低于100元,也不得高于2000元。
(5)机票的状态只能有三种:0:未出票1:已出票,但未被客户取走2:已出票且已被客户取走实验二数据库的查询、更新实验目的:掌握数据库的查询、更新的方法实验要求:使用Oracle 11g实现数据库的查询、更新操作实验条件:计算机,Oracle 11g实验内容:1、试用SQL完成下面10个查询操作。
数据库原理及应用实验教案一、实验目的1. 理解数据库的基本概念,掌握数据库的基本操作。
2. 熟悉数据库管理系统,了解数据库设计原则。
3. 学会使用SQL语言进行数据的增、删、改、查等操作。
4. 掌握数据库的索引、视图和存储过程等高级功能。
5. 培养实际操作数据库的能力,提高解决实际问题的技能。
二、实验内容1. 数据库的创建与管理创建新数据库打开现有数据库数据库的备份与恢复2. 表的创建与管理表的创建表结构的修改表的删除表的数据插入、删除和修改3. SQL语言基础数据定义语句(CREATE、ALTER、DROP)数据查询语句(SELECT)数据操纵语句(INSERT、UPDATE、DELETE)数据控制语句(GRANT、REVOKE)4. 索引与约束索引的创建、修改和删除主键、外键的设置与维护唯一约束和检查约束的设置5. 视图与存储过程视图的创建、修改和删除存储过程的创建、修改和删除存储过程的调用三、实验环境1. 硬件环境:计算机实验室,每台计算机配备数据库管理系统软件。
2. 软件环境:数据库管理系统软件(如MySQL、Oracle、SQL Server 等),编程语言环境(如Python、Java等),文本编辑器或集成开发环境(如Visual Studio Code、Eclipse等)。
四、实验步骤1. 实验准备:安装并配置数据库管理系统软件,了解实验内容和要求。
2. 实验一:数据库的创建与管理创建一个名为“实验数据库”的新数据库。
打开已存在的数据库,进行备份和恢复操作。
3. 实验二:表的创建与管理创建一个名为“学生”的表,包括学号、姓名、年龄、性别等字段。
插入、删除和修改表中的数据。
4. 实验三:SQL语言基础使用SELECT语句查询学生表中的数据。
使用INSERT、UPDATE和DELETE语句操作学生表数据。
5. 实验四:索引与约束为学生表的学号字段创建索引。
设置主键、外键、唯一约束和检查约束。
4.新建表(1)使用企业管理器建立student、course和SC三个表,其结构为:在SQL Server 2000 的数据库中,文件夹是按数据库对象的类型建立的,文件夹名是该数据库对象名。
当在企业管理器中选择服务器和数据库文件夹,并打开己定义好的学生选课数据库后。
会发现它自动设置了关系图、表、视图、存储过程、用户、角色、规则、默认等文件夹。
要建立“student”表,先选中学生选课数据库中的表文件夹,单击鼠标右键,在弹出的菜单中选择“新建表”,随后的输入表结构对话框。
输入表结构对话框是一张表,它的列属性有列名、数据类型、长度和是否允许空4 项。
用户把新建表的结构填入对话框的表中,表中的每一行定义新建表(Course)的一列,每一列定义新建表的一个列属性。
当光标移到表中的某一行时,下面的列描述就会对应当前行显示输入项,用户可在其中对关系的属性进行进一步说明。
列描述包括数据的精度、小数位数、默认值、是否标识等项。
(2)使用T-SQL语句建立student,course,SC三个表Create Table student(sno varchar(20) primary key ,Sname varchar(50) not null,Age int,Sex char(2),Dept varchar(50));Create table course(cno varchar(20) primary key,Cname varchar(50) not null,Credit float not null,Pcno varchar(20) not null,Describe varchar(100) not null);Create table SC(sno varchar(20),Cno varchar(20),Grade float,primary key (sno,cno),foreign key (sno) REFERENCES student(sno),foreign key (cno) REFERENCES course(cno));5.定义表的完整性约束和索引表的约束包括码(主键)约束、外键约束(关联或关系约束)、惟一性约束、Check (检查)约束4 种。
数据库原理及应用实验指导书 - 答案实验一:数据库管理系统的安装与配置问题一数据库管理系统(DBMS)是一种软件,用于管理和组织数据库。
它允许用户创建,读取,更新和删除数据库中的数据。
常见的数据库管理系统有MySQL,Oracle,SQL Server等。
问题二在实验室环境中,我们将使用MySQL作为我们的数据库管理系统。
以下是MySQL的一些常见特点: - 开源免费 - 跨平台支持 - 可扩展性强 - 有大型的用户社区和丰富的资源支持问题三MySQL的安装步骤如下: 1. 下载MySQL安装文件,可以从MySQL官方网站或者其他可信的下载源获取。
2. 运行安装程序,按照向导的指示进行安装。
3. 选择是否要安装MySQL 服务器和MySQL工具。
4. 设置密码以保护数据库的安全。
5. 完成安装程序并启动MySQL服务。
数据库是一个组织和存储数据的容器。
在关系型数据库中,数据以表的形式存储,每个表包含多个行和列。
每行代表一个记录,每列代表一个字段。
问题五关系型数据库管理系统(RDBMS)是一种DBMS,它使用结构化查询语言(SQL)来操作和处理数据。
常见的关系型数据库管理系统有MySQL,Oracle,SQL Server等。
问题六开放数据库连接(ODBC)是一种标准的数据库访问方法,它允许不同的应用程序通过统一的接口访问不同的数据库管理系统。
ODBC驱动程序充当应用程序和数据库之间的翻译器。
问题七在Windows系统中,ODBC数据源可以通过控制面板的“管理工具”来配置。
在数据源配置对话框中,可以添加,编辑和删除ODBC数据源。
在Windows系统中,可以使用ODBC接口库和ODBC驱动程序来连接和操作数据库。
具体步骤如下: 1. 加载ODBC接口库。
2. 初始化ODBC环境。
3. 建立数据库连接。
4. 执行SQL语句。
5. 关闭数据库连接。
6. 释放ODBC环境。
问题九ODBC接口库是一组API函数,用于连接和操作数据库。
理学院信科08—2班陈先国实验1 创建数据库与数据表下面写出实现如下操作的SQL语句:(1)创建供应系统“GYXT”数据库。
CREATE DATABASE GYXTON(NAME=GYXT_data,FILENAME=’D:\GYXT.mdf’,SIZE=10,MAXSIZE=50,FILEGROWTH=5)LOG ON(NAME=GYXT_Log,FILENAME=’D:\GXTYData.ldf’,SIZE=5,MAXSIZE=25,FILEGROWTH=5);(2) 建立供应商表S。
CREATE TABLE S( SNO char(5)not null unique,SNAME char(20)not null unique,CITY char(20));INSERT INTO S VALUES('S1','精益','天津');INSERT INTO S VALUES('S2','万胜','北京');INSERT INTO S VALUES('S3','东方','北京');INSERT INTO S VALUES('S4','丰泰隆','上海');INSERT INTO S VALUES('S5','康健','南京');(3) 建立零件表P。
CREATE TABLE P(PNO char(2)not null PRIMARY KEY(PNO),PNAME char(20),COLOR char(20),WEIGHT smallint);INSERT INTO P V ALUES('P1','螺母','红',12);INSERT INTO P V ALUES('P2','螺栓','绿',17);INSERT INTO P V ALUES('P3','螺丝刀','蓝',14); INSERT INTO P V ALUES('P4','螺丝刀','红',14); INSERT INTO P V ALUES('P5','凸轮','蓝',40); INSERT INTO P V ALUES('P6','齿轮','红',30);(4) 建立工程项目表J。
数据库原理及应用实验指导数据库原理及应用实验指导数据库是存储和管理数据的一种系统,它提供了对数据的快速、安全和高效的访问方式。
在数据库的使用过程中,需要掌握一些基本的原理和实用技能,以便有效地管理和维护数据库。
数据库原理:数据库原理是指数据库的基本概念、结构、设计和实现原理。
数据库的基本概念包括数据、数据模型、数据结构、数据元素和数据项等。
数据模型是指描述数据及其关系的方式,包括层次模型、网状模型和关系模型等。
关系模型是当今最常用的数据模型,它用表格的形式表示数据,其中每个表格称为一个关系,每个关系包括若干个属性,每个属性对应一个列。
数据结构是指数据在计算机中的组织方式,包括文件组织、索引结构、哈希结构等。
数据库设计是指根据需求分析,设计数据库的结构、关系和属性等。
在设计数据库时需要考虑数据的完整性、安全性和性能等方面。
完整性是指数据的正确性和一致性,包括实体完整性、参照完整性和域完整性等。
安全性是指保护数据库的机密性、完整性和可用性,包括用户权限、访问控制和审计等。
性能是指数据库的响应速度、并发处理能力和容错能力等。
数据库应用实验指导:数据库应用实验是指在实验室环境中进行的数据库应用开发和测试。
实验内容包括数据库的创建、表格的设计、数据的插入、查询和更新等。
具体实验步骤如下:1. 创建数据库使用SQL语句创建数据库,包括数据库名称、字符集和校对规则等。
2. 设计表格根据需求分析,设计数据库的关系和属性,创建表格。
表格包括表格名称、属性名称、数据类型和约束等。
3. 插入数据使用SQL语句向表格中插入数据。
插入数据时需要考虑数据的完整性和一致性,避免重复数据和无效数据的插入。
4. 查询数据使用SQL语句查询表格中的数据。
查询数据时需要考虑查询条件和查询结果的格式化。
5. 更新数据使用SQL语句更新表格中的数据。
更新数据时需要考虑数据的完整性和一致性,避免数据冲突和数据丢失。
总之,数据库原理和应用实验是数据库学习的重要内容。
数据库原理与应⽤实验指导书完整(快速切换页码⽅法:按住ctrl键再单击相关项⽬)实验⼀创建数据库与表1. 新建数据库(1) 利⽤向导创建数据库(新建⽂件/本机上的模板)(2) 创建空数据库2. 表的基本操作(1) 使⽤向导创建表(2) 复制表(3) 利⽤设计视图建⽴表(参考教材P25-P29)①设置查阅向导②设置标题属性(P42)③设置默认值(P44)④设置字段的“有效性规则”与“有效性⽂本”(P42)⑤设置掩码(P43)⑥设置⽇期格式:(P40)⑦设置主键(P49)⑧增加字段,在“姓名”字段后增加⼀个“年龄”字段(P48)⑨删除字段,将刚增加的字段删除。
(P49)(4) 表操作①在数据表视图和设计视图之间进⾏切换,熟悉切换的⽅法。
②在数据表视图中输⼊记录。
③隐藏/取消隐藏列(P53)——格式菜单④冻结(P64)——格式菜单⑤排序(P58)——记录菜单⑥筛选(P60)——记录菜单⑦调整表外观——格式菜单3. 表间关系(P64)4. 导⼊、链接、导出(P34)实验⼆查询⑴使⽤设计视图建⽴查询⑵使⽤设计视图建⽴查询⑶设置查询排序及准则⑷汇总查询⑸交叉表查询⑹参数查询⑺动作查询①删除查询②更新查询③追加查询④⽣成表查询:⑻利⽤SQL语句建⽴查询实验三窗体1. 掌握⾃动创建窗体、使⽤向导创建窗体的⽅法(1) 建⽴基于单表的窗体①纵栏式窗体②“表格式”窗体(2) 建⽴基于多表的“学⽣信息和成绩”窗体2. 在设计视图创建窗体⑴建⽴“学⽣信息简表”窗体⑵使⽤设计视图1⑶使⽤设计视图2实验四报表1. 建⽴“学⽣成绩单”报表2. 建⽴“学⽣档案”报表3. 建⽴“分数段统计”报表4. 建⽴“排名次”统计报表实验五宏实验六数据库设计理论实践《数据库原理与应⽤》实验指导书⼀、实验的性质与学习⽬的《数据库原理与应⽤》为⾮计算机专业的公共课程。
通过实验教学,使学⽣验证并掌握数据库管理系统的基本原理,具备数据库的基本设计能⼒、掌握利⽤数据库进⾏信息管理的基本技能,初步掌握数据库应⽤系统的开发⽅法,为以后更好地使⽤数据库应⽤系统打下坚实的基础。
数据库原理与应⽤实验指导书《数据库原理与应⽤》实验报告学院:专业:软件⼯程班级学号:学⽣姓名:实验成绩:实验⽇期:指导⽼师:实验概述⼀、课程实验概况《数据库原理》是⼀门需要理论和实际紧密相连的课程,上机实验是课程教学的重要环节,实验指导书中给出的⽅法和技术是⽬前使⽤的最新技术。
通过实验,让学⽣巩固课堂教学内容,掌握数据库的基本概念、原理和设计⽅法,并将理论与实际相结合,培养学⽣实际动⼿能⼒。
数据库原理课程上机实验的⽬的:1.加深对讲授内容的理解,尤其是⼀些语法规定。
通过实验来掌握语法规则是⾏之有效的⽅法。
2.熟悉所⽤的SQL SERVER 2008或者更⾼版本的环境。
3.掌握上机操作数据库及数据库对象的⽅法:包括图形操作⽅式和SQL语句操作⽅式;掌握根据出错信息修改语句或程序的⽅法。
⼆、实验前的准备⼯作1.了解所⽤的SQL Server 2008或者更⾼版本的性能和使⽤⽅法。
2.复习和掌握与本实验有关的教学内容。
3.准备好上机所需的源数据库⽂件,切忌不编程或抄别⼈的程序去上机。
4.对上机中出现的问题应事先估计,对程序中⾃⼰有疑问的地⽅应先作上记号,以便上机时给予注意。
5. 准备好调试程序和运⾏程序所需的数据。
三、实验的步骤上机实验应⼀⼈⼀组,在规定的时间内,由学⽣独⽴完成,出现问题时,教师应引导学⽣独⽴分析和解决,所有实验为⼀整体,有其延续性,每⼀次实验必须在实验课堂上认真完成,如果不能完成将会影响下次实验,如果确实不能在课堂上完成,必须在下次实验前的课后完成,每次实验后,必须认真填写实验报告。
尤其对错误提⽰信息,应善于分析判断,找出出错的⾏,然后检查该⾏或其上⼀⾏。
上机实验⼀般应包括以下⼏个步骤:注意:初次使⽤SQL SERVER 2008或者更⾼版本时,要先启动SQL Server 服务。
1. 启动SQL Server服务点击开始—>程序—>Microsoft SQL SERVER 2008—>配置⼯具—> SQL Server Configuration Manager,进⼊图1所⽰窗⼝。
《数据库原理与应用》综合性实践项目指导任务一:数据库管理系统SQL SERVER 2000 的初步认识一、实验目的1.通过对 SQL Server 2000 数据库管理系统的使用,了解 DBMS 的工作原理和系统构架。
2.熟悉对 SQL Server 2000企业管理器的操作。
3.搭建今后实验的平台。
二、实验教学策略任务驱动——自主探究三、实验内容1.安装和启动(1)根据安装文件的说明安装数据库管理系统。
在安装过程中记录安装的选择,并且对所作的选择进行思考,为何要进行这样的配置,对今后运行数据库管理系统会有什么影响。
(2)学会启动和停止数据库服务,思考可以用哪些方式来完成启动和停止。
2.数据库系统的构架(1)了解数据库系统的逻辑组件:主要是数据库对象,包括基本表、视图、触发器、存储过程、约束等。
今后将学习如何操作这些数据库对象。
(2)了解数据库的物理组件:思考数据库物理存储的存储单位是什么,数据主要以什么方式存放,如何确定数据的存放位置。
3.SQL Server的管理和使用了解SQL Server2000如何通过它提供的工具对数据和数据库服务器进行管理和使用的。
(1)启动、暂停和停止SQL Server2000学会运用服务管理器和企业管理器进行操作。
(2)了解系统其他管理工具:初步了解 SQL Server2000的主要工具和它们的功能,为今后的实验做准备。
例如,导入和导出数据工具;企业管理器和事件探查器:可以用该工具对数据库进行管理,管理和监视服务器性能和活动;查询分析器:给出数据库查询语句的查询计划和执行时间,帮助用户分析查询过程,进行查询优化。
四、实验组织形式以学生自由结合的 2 人小组为单位,采用小组协作、教师指导的方式开展。
五、课时安排2 学时六、实验过程指导1 •指导学生安装SQL Server2000软件,安装过程中强调 Windows模式和混合模式的不同方法。
2•指导学生学会SQL Server2000服务器的启动和停止。
数据库原理及应用实验教案一、实验目的1. 理解数据库的基本概念,掌握数据库的基本操作。
2. 熟悉数据库管理系统,了解数据库设计的基本步骤。
3. 培养学生独立进行数据库设计和操作的能力。
二、实验内容1. 数据库的创建和管理创建一个新的数据库打开已存在的数据库数据库的备份与恢复2. 表的创建和管理创建表修改表结构删除表表的导入导出3. 数据库表的查询简单查询高级查询聚合函数连接查询4. 数据库表的更新插入数据修改数据删除数据5. 索引和约束的创建与管理创建索引删除索引添加约束删除约束三、实验步骤1. 数据库的创建和管理启动数据库管理系统创建一个新的数据库设置数据库属性数据库的备份与恢复2. 表的创建和管理创建一个新的表添加字段和数据类型设置主键和外键表的导入导出3. 数据库表的查询编写查询语句执行查询并查看结果优化查询性能4. 数据库表的更新插入数据到表中修改表中的数据删除表中的数据5. 索引和约束的创建与管理创建索引提高查询性能添加主键和外键约束添加唯一约束四、实验要求1. 每个学生必须独立完成实验。
2. 实验过程中,要求严格遵守实验步骤,注意数据的安全性和一致性。
3. 实验结果要求提交实验报告,报告中包括实验目的、实验内容、实验步骤、实验结果和实验心得。
五、实验评价1. 实验报告的完整性2. 实验步骤的正确性3. 实验结果的准确性4. 实验心得的深度六、实验环境1. 硬件要求:计算机、打印机等。
2. 软件要求:安装有数据库管理系统的操作系统,如Microsoft SQLServer、Oracle、MySQL等。
3. 网络要求:实验环境需连接校园网或局域网,以便进行数据的共享和传输。
七、实验准备1. 熟悉数据库管理系统的基本操作和功能。
2. 了解数据库设计的基本原则和方法。
3. 掌握常用的数据库查询语句和更新语句。
八、实验注意事项1. 实验前请确保数据库管理系统已正确安装和配置。
3. 实验中遇到问题,请及时与同学或实验教师沟通交流,共同解决问题。
数据库原理及应用实验指导-回复实验一:数据库的安装与初步操作实验目的:1.了解数据库的基本概念和原理;2.掌握数据库的安装与配置;3.熟悉数据库的基本操作。
实验器材:1.一台装有操作系统的计算机;2.数据库软件。
实验步骤:2.配置数据库:安装完毕后,需要进行一些基本配置,如设置数据库的根用户密码、配置数据存储路径等。
3.启动数据库服务:启动数据库服务,可以通过图形界面工具或命令行方式启动。
4.创建数据库:使用SQL语句创建一个新的数据库,指定数据库名称、字符集等信息。
5.创建数据表:使用SQL语句创建一个或多个数据表,指定表的字段、数据类型等信息。
6.插入数据:使用SQL语句向数据表中插入一些测试数据。
7.查询数据:使用SQL语句查询数据表中的数据,可以进行简单的SELECT操作。
8.更新数据:使用SQL语句更新数据表中已有的数据。
9.删除数据:使用SQL语句删除数据表中的数据。
10.关闭数据库服务:实验结束后,关闭数据库服务,释放资源。
实验要求:1.实验报告中需要包含数据库软件安装的步骤和截图;2.实验报告中需要包含创建数据库、数据表,插入数据,查询数据等SQL语句和示例数据;3.实验报告中需要包含实验过程中遇到的问题及解决方法。
实验二:数据库的基本查询操作实验目的:1.掌握使用SQL进行简单的查询操作;2.熟悉常用的查询语句。
实验器材:1.完成实验一的数据库软件和数据表。
实验步骤:1.简单查询:编写SQL语句实现对数据表中数据的查询,包括SELECT、FROM、WHERE等关键字。
2.条件查询:使用WHERE子句实现对数据的条件查询,如通过指定字段值来筛选出符合条件的数据。
3.排序查询:使用ORDERBY子句对查询结果按照一些字段进行升序或降序排序。
4.聚合查询:使用聚合函数,如SUM、AVG、MAX、MIN等,实现对数据的合计、平均值、最大值、最小值等汇总操作。
5.分组查询:使用GROUPBY子句对查询结果按照一些字段进行分组,并应用聚合函数进行统计。
数据库系统原理及应用实验指导书(软件工程专业 09级本科)软件工程系2011年实验一认识DBMS与数据定义的实现一、实验目的1.通过对数据库管理系统的使用,了解DBMS的工作原理和系统构架。
2.搭建今后实验的平台,熟悉对DBMS的操作3.使用SQL实现数据定义功能,在SQL Server2000环境下采用Transact-SQL 实现表的定义、删除与修改,掌握索引的建立与删除方法。
二、实验平台1.操作系统:Windows 2000或者Windows XP2. 数据库管理系统:使用Microsoft公司的SQL Server,目前实验使用版本是SQL Server 2000。
(也可选择SQL Server 2005)三、实验内容及要求1. 安装和启动(1)了解数据库管理系统的安装过程。
(2)学会启动和停止数据库服务。
(3)掌握查询分析器和企业管理器的功能和使用。
2. 使用SQL实现数据定义功能(1) 在SQL Server2000中建立一个数据库SPJ,所有的SQL操作均在此建立的新库里进行。
(2)完成数据库中S、P、J及SPJ 4个基本表的定义。
其中:S(SNO,SNAME,STATUS,CITY)P(PNO,PNAME,COLOR,WEIGHT)J(JNO,JNAME,CITY)SPJ(SNO,PNO,JNO,QTY)具体内容参见教材P74(5)题。
要求定义每个基本表的实体完整性(主码)和参照完整性(外码)约束。
(3)修改基本表S,增加联系电话(TEL)属性列,类型char(12)。
(4)删除基本表SPJ。
①直接删除基本表SPJ,查看结果。
②运行CREATE TABLE SPJ,重新建立SPJ表。
③打开S,P,J及SPJ表分别录入数据:S(S1,精益,20,天津)P(P1,螺母,红,12)J(J1,三建,北京)SPJ(S1,P1,J1,200)④删除S表,查看结果。
(5)在S表SNAME列定义一个唯一索引。
数据库原理及应用实训指导书一、设计方法本次设计,提供一次在实际环境中,使用数据库工具获取实践经验的机会。
完成设计任务,将对数据库开发设计过程有更深入而系统的理解。
先导课程为:《数据库系统概论》。
设计环境和开发工具:操作系统, Windows XP(或更高版本)。
数据库管理系统,SQL server 2005开发工具自选(不是重点)1、数据库设计1)需求分析,根据设计任务书给出的背景资料,查找相关资料,结合自己的经验,对数据进行分析,编写详细的数据词典。
2)概念结构设计:在需求分析的基础上,设计E-R模型,详细描述实体的属性和实体之间的联系,消除不必要的冗余。
3)逻辑结构设计:实现E-R图向关系模型的转换,特别注意实体的1:n联系,优化数据模型。
详细说明实体、实体属性和实体之间的关系。
4)数据库结构设计:基于SQL Server完成数据库表结构的设计,并设计出具体的主键、约束、索引、存储过程、视图、触发器等数据库对象。
2、创建数据库:3、创建表4、填充一定数量的数据5、根据应用需求设计视图、存储过程、触发器、用户6、应用程序设计程序设计的基本步骤:●完成用户管理功能●设计用户登录功能●在程序中连接数据库的表或视图●完成相关数据的增加、删除、修改等功能●实现数据查询与统计功能7、设计报告要求设计报告按照以下提纲书写:1)概述。
2)需求分析。
3)数据库概念结构设计。
4)数据库逻辑结构设计。
5)数据库物理结构设计6)数据流图及程序结构框图。
7)程序原代码及其说明。
8)总结。
二、设计任务数据库设计实验题目(一):人事管理系统1、系统功能的基本要求:员工各种信息的输入,包括员工的基本信息、学历信息、婚姻状况信息、职称等。
员工各种信息的修改;对于转出、辞职、辞退、退休员工信息的删除;按照一定的条件,查询、统计符合条件的员工信息;至少应该包括每个员工详细信息的查询、按婚姻状况查询、按学历查询、按工作岗位查询等,至少应该包括按学历、婚姻状况、岗位、参加工作时间等统计各自的员工信息; 对查询、统计的结果打印输出。
实验一、数据库、表的创建和管理一.目的和要求(1)了解SQL Server数据库的逻辑结构和物理结构。
(2)了解表的结构特点。
(3)了解SQL Server的基本数据类型。
(4)了解空值的概念。
(5)学会在SQL Server Management Studio中创建数据库和表。
(6)学会使用T-SQL语句创建数据库和表。
二.实验准备(1)要明确能够创建数据库的用户必须是系统管理员,或是被授权使用CREA TE DA TABASE 语句的用户。
(2)创建数据库必须要确定数据库名、所有者(即创建数据库的用户)、数据库大小(最初的大小、最大的大小、是否允许增长及增长的方式)和存储数据的文件。
(3)确定数据库包含哪些表,各表的结构,还要了解SQL Server 的常用数据类型。
(4)了解两种常用的创建数据库、表的方法。
三.实验内容(1)使用企业管理器建立student、class course和SC 四个表,其结构为:Class(班级)数据类型可否为空含义完整性约束属性名Clno Char(5) 否班级号主码Speciality V archar(20) 否班级所在专业Inyear Char(4) 否入校年份Number Integer 可班级人数小于1,小于100Monitor Char(7) 可班长学号外部码在SQL Server 2000 的数据库中,文件夹是按数据库对象的类型建立的,文件夹名是该数据库对象名。
当在企业管理器中选择服务器和数据库文件夹,并打开己定义好的学生选课数据库后。
会发现它自动设置了关系图、表、视图、存储过程、用户、角色、规则、默认等文件夹。
要建立“student”表,先选中学生选课数据库中的表文件夹,单击鼠标右键,在弹出的菜单中选择“新建表”,随后的输入表结构对话框。
输入表结构对话框是一张表,它的列属性有列名、数据类型、长度和是否允许空4 项。
用户把新建表的结构填入对话框的表中,表中的每一行定义新建表(Course)的一列,每一列定义新建表的一个列属性。
实验1 数据库与表的创建与管理1.实验目的(1)掌握启动和停止数据库服务。
(2)熟练掌握使用SQL Server Management Studio创建和删除数据库的方法。
(3)熟练掌握使用SQL Server Management Studio创建和管理数据表的方法。
2.实验环境操作系统:WINDOWS XP/2000/2003/vista数据库管理系统:SQL SERVER 20053.实验内容(1) 启动数据库服务。
(2) 利用SQL Server Management Studio创建数据库:Warehouse1。
(3) 在Warehouse数据库中创建3张表:Receipt、Product、Storage。
(4) 在Receipt、Product、Storage表中输入数据。
4.实验步骤(1)启动SQL Server服务。
在“开始”菜单上,依次点击“程序”|“Microsoft SQL Server 2005”|“配置工具”|“SQL Server Configuration Manager”选项。
选择“SQL Server(MSSQLSERVER)”,单击鼠标右键后,选择“启动”。
(2)在SQL Server Management Studio窗口中选择“数据库”文件夹,选择“新建数据库”命令,输入新建数据库的名字Warehouse1,单击“确定”按钮。
(3)在Warehouse1数据库中建立表Receipt、Product、Storage,各表结构如下所示:表3-4 Receipt表结构表3-6 Storage表结构(4)在SQL Server Management Studio窗口中打开“表”对象,选择刚才创建的Recipt表。
(5)右击鼠标,选择“打开表”命令,打开表的数据记录窗口。
(6)输入如表3-7所示的Recipt数据记录。
表3-7 Receipt表数据(7)输入如表3-8所示的Product数据记录。
《数据库原理及应用》实验指导书中北大学经济与管理学院《数据库原理及应用》实验类别:课内实验实验课程名称:数据库原理及应用实验室名称:实验课程编号:总学时:学分:适用专业:信管先修课程:计算机导论及操作实验在教学培养计划中地位、作用:数据库原理及应用是一门理论与实践相结合的课程,上机实验环节是本课程的重要组成部分。
实验的目的是为了配合课堂教学,进一步强化对数据库原理的理解。
实验的任务是要结合数据库原理和 SQL Server 2000数据库系统,熟练掌握和深入理解课堂教学内容,实现从理论到实践的统一。
实验一 SQL的数据定义(4学时)1、实验目的(1)掌握DBMS的数据定义功能(2)掌握SQL语言的数据定义语句2、实验内容(1)创建、删除表(2)查看、修改表的定义(3)导入导出数据(4)备份和还原3、实验要求(1)熟练掌握SQL Server的基本操作(2)写出实验报告4、实验步骤设有一个学生-课程数据库,包括学生关系Student、课程关系Course和选修关系SC:学生表:student(Sno,Sname,Ssex,Sage,Sdept,Memo)课程表:course(Cno,Cname,Ccredit,Memo)学生成绩表:score(Sno,Cno,Grade)用户表:userpass(UserID,Pass)(1)创建、删除表,例如:student(Sno int,Sname varchar(20),Ssex int,Sage int,Sdept varchar(50),Memo varchar(50))Primary key (Sno)course(Cno int,Cname varchar(40),Ccredit int,Memo varchar(50))Primary key ( Cno)score(Sno int,Cno int,Grade decimal(10,2))Primary key (Sno, Cno)userpass(UserID varchar(10),Pass varchar(10),Memo varchar(50))Primary key (UserID)实验二 SQL的数据查询(4学时)1、实验目的(1)掌握DBMS的数据查询功能(2)掌握SQL语言的数据查询语句2、实验内容(1)SELECT语句的基本用法(2)使用WHERE子句进行有条件的查询(3)使用IN,NOT IN,BETWEEN等谓词查询(4)利用LIKE子句实现模糊查询(5)利用ORDER子句为结果排序(6)用SQL Server的统计函数进行统计计算(7)用GR0UP BY子句实现分组查询的方法(8)UPDATE 语句用于对表进行更新(9)DELETE 语句用于对表进行删除(10)INSERT 语句用于对表进行插入3、实验要求(1)熟练掌握SQL的数据查询语句SELECT(2)掌握多表查询的技术(3)掌握使用嵌套查询的方法(4)掌握SQL的数据更新语句INSERT、UPDATE、DELETE(5)写出实验报告4、实验步骤对学生表Student、课程表Course和选修表SC进行查询:(1)SELECT语句的基本用法例如:查询全体学生的详细记录。
数据库系统原理及应用实验指导书(本科)软件工程教研室2015年1月目录实验一数据定义语言 (1)实验二SQL Sever中的单表查询 (3)实验三SQL Serve中的连接查询 (4)实验四SQL Serve的数据更新、视图 (5)实验五数据控制(完整性与安全性) (6)实验六语法元素与流程控制 (8)实验七存储过程与用户自定义函数 (10)实验八触发器 (11)实验一数据定义语言一、实验目的1.熟悉SQL Server查询分析器。
2.掌握SQL语言的DDL语言,在SQL Server环境下采用Transact-SQL实现表的定义、删除与修改,掌握索引的建立与删除方法。
3.掌握SQL Server实现完整性的六种约束。
二、实验内容1.启动SQL Server查询分析器,并连接服务器。
2.创建数据库: (请先在D盘下创建DB文件夹)1)在SQL Server中建立一个StuDB数据库:有一个数据文件:逻辑名为StuData,文件名为“d:\db\StuDat.mdf”,文件初始大小为5MB,文件的最大大小不受限制,文件的增长率为2MB;有一个日志文件,逻辑名为StuLog,文件名为“d:\db\StuLog.ldf”,文件初始大小为5MB,文件的最大大小为10MB,文件的增长率为10%2)刷新管理器查看是否创建成功,右击StuDB查看它的属性。
3.设置StuDB为当前数据库。
4.将STUDB数据库进行分离和附加。
5.在StuDB数据库中作如下操作:设有如下关系表S:S(CLASS,SNO, NAME, SEX, AGE),其中:CLASS为班号,char(5) ;SNO为座号,char(2);NAME为姓名,char(10),设姓名的取值唯一;SEX为性别,char(2) ;AGE为年龄,int,表中主码为班号+座号。
写出实现下列功能的SQL语句。
(1)创建表S;(2)刷新管理器查看表是否创建成功;(3)插入3个记录:insert into s(CLASS,SNO, NAME, SEX, AGE)Values('95031','25','李明','男',21),('95101','10','王丽','女',20),('95131','30','郑和',null,null);(4)将年龄的数据类型改为smallint;(5)向S表添加“入学时间(comedate)”列,其数据类型为日期型(datetime);(6)对表S,按年龄降序建索引(索引名为inxage);(7)删除S表的inxage索引;(8)删除S表;6.在StuDB数据库中,(1)按照《数据库系统概论》(第四版)P82页的学生-课程数据库创建STUDENT、COURSE 和SC三张表,每一张表都必须有主码约束,合理使用列级完整性约束和表级完整性。
数据库原理与应⽤实验指导总结1实验前的准备1.1 课程实验标准《数据库原理与应⽤》是计算机科学与技术专业及相近各专业的⼀门重要基础理论课程。
课程概括性的介绍了数据库技术发展历程,详细介绍了数据库系统的基本概念、基本原理、基本⽅法,阐述了数据库设计、实现的基本过程,同时也介绍了数据库系统的最新进展。
通过本课程的学习,使学⽣牢固掌握数据库系统的基本概念和基本原理,熟悉数据库系统的主要实现⽅法,能够根据应⽤需要分析设计实⽤的数据库管理系统。
《数据库原理与应⽤》是⼀门实践性很强的课程,通过实验实践,配合课堂教学内容加深对数据库系统的基本概念、基本原理、基本⽅法的理解,掌握数据库系统设计的基本思想和基本步骤,熟悉关系数据库的标准语⾔SQL,并对关系数据库系统的某⼀典型系统(如SQL Server 2000)有较深⼊的了解,使学⽣对数据库系统有⼀个完整的、全⾯的认识。
1.课程实验的⽬标《数据库原理与应⽤》课程上机实验的主要⽬标是:(1)通过上机操作,加深对数据库系统理论知识的理解。
(2)通过使⽤具体的数据库管理系统,了解⼀种实际的数据库管理系统,并掌握其操作技术。
(3)通过实验题⽬的上机实践,提⾼学⽣的实践动⼿能⼒,提⾼学⽣的分析问题和解决问题的能⼒。
2.主要软件实验环境操作系统为Microsoft Windows 2000或更⾼级的版本。
数据库管理系统为Microsoft SQL Server 2000标准版或更⾼级的版本。
3.课程实验的基本要求(1)每次实验前,教师需要向学⽣讲清楚本次实验的⽬的和基本要求;学⽣应当先弄清楚相关的理论知识,预习实验内容、⽅法和步骤,认真准备好实验程序和数据,避免出现盲⽬上机的⾏为。
(2)实验1⼈1组,在规定的时间内,由学⽣独⽴完成,出现问题时,教师要做好指导,但不能包办代替。
(3)任课教师要在实验课前清点学⽣⼈数,实验中按要求做好学⽣实验情况及结果记录,实验后认真填写实验记录、批改实验报告。
1练习题1、在学生表Student 和学生选课表SC 中分别添加如下两表中的记录。
学生表Student 学生选课表SC2、备份Student 表到TS 中,并清空TS 表。
3、给IS 系的学生开设7号课程,建立所有相应的选课记录,成绩暂定为60分。
4、把年龄小于等于16的女生记录保存到表TS 中。
5、在表Student 中检索每门课均不及格的学生学号、姓名、年龄、性别及所在系等信息,并把检索到的信息存入TS 表中。
6、将学号为“98011”的学生姓名改为'刘华',年龄增加1岁。
7、把选修了“数据库系统”课程而成绩不及格的学生的成绩全改为空值(NULL )。
8、将Student 的前4位学生的年龄均增加1岁。
9、学生王林在3号课程考试中作弊,该课成绩改为空值(NULL )。
10、把成绩低于总平均成绩的女同学成绩提高5%。
11、在基本表SC 中修改课程号为“2”号课程的成绩,若成绩小于等于80分时降低2%,若成绩大于80分时降低1%(用两个UPDATE 语句实现)。
12、利用“SELECT INTO ……”命令来备份Student 、SC 、Course 三表,备份表名自定。
13、在基本表SC 中删除尚无成绩的选课元组。
14、把“钱横”同学的选课情况全部删去。
15、能删除学号为“98005”的学生记录吗?一定要删除该记录的话,该如何操作?给出操数据库原理与应用实验指导2作命令。
16、删除姓“张”的学生记录。
17、清空STUDENT 与Course 两表。
18、如何又从备份表中恢复所有的三表。
3参考答案:1、在学生表Student 和学生选课表SC 中分别添加如下两表中的记录。
Insert into Student values('98010','赵青江',18,'男','CS') Insert into Student values('98011','张丽萍',19, '女','CH') Insert into Student values('98012','陈景欢',20, '男','IS') Insert into Student values('98013','陈婷婷',16, '女','PH') Insert into Student values('98014','李 军',16, '女','EH')Insert into SC values('98010', '1',87)Insert into SC values('98010', '2',null)或Insert into SC(sno,cno) values('98010', '2') Insert into SC values('98010', '3',80) Insert into SC values('98010', '4',87) Insert into SC values('98010', '6',85) Insert into SC values('98011', '1',52) Insert into SC values('98011', '2',47) Insert into SC values('98011', '3',53) Insert into SC values('98011', '5',45) Insert into SC values('98012', '1',84)Insert into SC values('98012', '3',null)或Insert into SC(sno,cno) values('98012', '3') Insert into SC values('98012', '4',67) Insert into SC values('98012', '5',81)2、备份Student 表到TS 中,并清空TS 表。
Select * into TS from StudentDelete from TS 或 truncate table TS3、给IS 系的学生开设7号课程,建立所有相应的选课记录,成绩暂定为60分。
Insert into scselect sno, '7',60 from student where sdept='IS'4、把年龄小于等于16的女生记录保存到表TS 中。
INSERT INTO TS SELECT * FROM STUDENT WHERE SAGE<=165、在表Student 中检索每门课均不及格的学生学号、姓名、年龄、性别及所在系等信息,并把检索到的信息存入TS 表中。
INSERT INTO TSSELECT *FROM STUDENT WHERE SNO IN(SELECT SNO FROM SC数据库原理与应用实验指导4GROUP BY SNOHAVING MAX(GRADE)<60 )6、将学号为“98011”的学生姓名改为'刘华',年龄增加1岁。
UPDATE STUDENT SET SNAME='刘华',SAGE=SAGE+1 WHERE SNO='98011'7、把选修了“数据库系统”课程而成绩不及格的学生的成绩全改为空值(NULL )。
UPDATE SC SET GRADE=NULL WHERE GRADE<60 AND CNO IN(SELECT CNO FROM COURSEWHERE CNAME='数据库系统')UPDATE SCSET GRADE=NULL FROM COURSEWHERE SC.GRADE<60 AND O=O AND CNAME='数据库系统'8、将Student 的前4位学生的年龄均增加1岁。
Update student set sage=sage+1 where sno in (select top 4 sno from student [order by sno])9、学生王林在3号课程考试中作弊,该课成绩改为空值(NULL )。
UPDATE SC SET GRADE=NULL WHERE cno='3' AND SNO IN(SELECT SNO FROM STUDENTWHERE SNAME='王林')10、把成绩低于总平均成绩的女同学成绩提高5%。
SELECT * INTO TSC FROM SCdelete from scinsert into sc select * from tsc drop table tscselect * into tsc from scupdate sc set sc.grade=1.05*sc.gradefrom sc,(select * from student where ssex='男') as stnwhere sc.sno= stn.sno AND grade<(select avg(grade) from sc) select * from sc5update sc set sc.grade=1.05*sc.grade from sc,studentwhere ssex='男' AND grade<(select avg(grade) from sc) and sc.sno=student.sno select * from scupdate sc set sc.grade=1.05*sc.gradefrom (select * from student where ssex='男') as stnwhere sc.sno= stn.sno AND grade<(select avg(grade) from sc) select * from scupdate sc set sc.grade=1.05*sc.gradewhere sc.sno in (select sno from student where ssex='男') AND grade<(select avg(grade) from sc)select * from sc11、在基本表SC 中修改课程号为“2”号课程的成绩,若成绩小于等于80分时降低2%,若成绩大于80分时降低1%(用两个UPDATE 语句实现)。
UPDATE SC SET GRADE=GRADE*0.98 WHERE CNO='2' AND GRADE<=80 UPDATE SC SET GRADE=GRADE*0.99 WHERE CNO='2' AND GRADE>8012、利用“SELECT INTO ……”命令来备份Student 、SC 、Course 三表,备份表名自定。
SELECT * INTO TSTUDENT FROM STUDENT SELECT * INTO TSC FROM SCSELECT * INTO TCOURSE FROM COURSE13、在基本表SC 中删除尚无成绩的选课元组。
DELETE FROM SC WHERE GRADE IS NULL14、把“钱横”同学的选课情况全部删去。
DELETE FROM SC WHERE SNO IN (SELECT SNO FROM STUDENT WHERE SNAME='钱横')15、能删除学号为“98005”的学生记录吗?一定要删除该记录的话,该如何操作?给出操作命令。