《数据库原理与应用》实验报告书修改版1.docx
- 文档编号:8783613
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:34
- 大小:64.74KB
《数据库原理与应用》实验报告书修改版1.docx
《《数据库原理与应用》实验报告书修改版1.docx》由会员分享,可在线阅读,更多相关《《数据库原理与应用》实验报告书修改版1.docx(34页珍藏版)》请在冰豆网上搜索。
《数据库原理与应用》实验报告书修改版1
《数据库原理与应用》
实验报告书
(2011—2012学年第二学期)
班级:
学号:
姓名:
教师:
郑先容
医药信息工程学院·数据决策
2012年2月
实验一利用ACCESS创建数据库及熟悉SQLServer开发环境
一、实验目的
1、熟知机房用机安全规则和实验报告的书写。
2、掌握SQLServer2005的安装,卸载以及相关服务的启动、退出。
3、熟悉SQLServerManagementStudio环境。
4、掌握创建服务器组合注册服务器。
5、初步了解数据库的概念;
6、初步了解SQLServer联机丛书的使用。
7、用ACCESS创建数据库,体会数据库的功能。
注意:
每次实验的指导视频,上课所需要的软件、数据库还有ppt。
都可以在ftp:
//10.81.40.222的“数据决策”->“数据库”->“2011-2012
(2)”文件夹下找到,以后每次实验相关的文件和数据库,老师上课的课件,sql2005安装环境,都可以在这个ftp上寻找。
二、实验内容
1、上网搜索能够正常安装的SQLServer2005的软件。
或者在ftp上下载,有条件的同学,课后可在个人电脑上安装SQLServer2005,建议XP操作系统安装个人版,Server操作系统安装企业版。
SQLServer2005的安装说明见《SQLServer2005精简版的安装》或上网搜索相应电子教程。
安装过程请参看实验指导或者相关视频。
2、观看视频“数据库概念.swf”,了解数据库的相关概念。
3、参看实验指导或者视频“使用SQLServerManagementStudio.swf”,通过实践初步了解使用SQLServerManagement的使用。
4、观看视频“SQLServer联机丛书.swf”,了解如何通过系统本身来学习使用SQLServer。
请根据联机丛书查询如何“创建数据库”,查询内容包括创建数据库前的准备工作,创建数据库的命令,以及数据库文件的组成。
请把你的结果写在下面。
5、参看实验指导或者视频,创建服务器组,在此组上查看有哪些数据库及数据库对象,请记录下来。
6、利用ACCESS创建数据库。
(1)、在ACCESS中创建一个“学生-课程数据库”,含以下三个表:
学生(学号,姓名,性别,年龄,所在系)课程(课程号,课程名)选课(学号,课程号,成绩)
每个表输入10条数据。
(2)、数据库保存在以“自己学号+名字”命名的文件夹中。
请掌握ACCESS创建数据库的方法,体会数据库的二维结构,请写下建立数据库的主要步骤。
7、掌握SQLServer2005的启动、退出、暂停,组成配置,基本工具及常用操作。
请简要叙述SQLServer2005的组成配置,基本工具。
三、实验小结
结合本次实验,思考以下问题:
1、通讯录为什么要采用这种由行和列二维结构组成的格式?
其中每一列表示什么意思,每一行又表示什么意思?
2、 假如通讯录里面有1000000个人的信息,怎么样快速找到某个特定的人?
3、比较分析ACCESS和SQLSERVER两种数据库,各适用于什么情况?
四、作业
1、选择题
1.数据库系统是采用了数据库技术的计算机系统,数据库系统由数据库、数据库管理系统、应用系统和()。
A.系统分析员B.程序员C.数据库管理员D.操作员
2.数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是()。
A.DBS包括DB和DBMSB.DBMS包括DB和DBS
C.DB包括DBS和DBMSD.DBS就是DB,也就是DBMS
3.下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是()。
I.人工管理阶段II.文件系统阶段III.数据库阶段
A.I和IIB.只有IIC.II和IIID.只有I
4.下列四项中,不属于数据库系统特点的是()。
A.数据共享B.数据完整性C数据冗余度高D.数据独立性高
5.数据库系统的数据独立性体现在()。
A.不会因为数据的变化而影响到应用程序
B.不会因为数据存储结构与数据逻辑结构的变化而影响应用程序
C.不会因为存储策略的变化而影响存储结构
D.不会因为某些存储结构的变化而影响其他的存储结构
6.描述数据库全体数据的全局逻辑结构和特性的是()。
A.模式B.内模式C.外模式
7.要保证数据库的数据独立性,需要修改的是()。
A.模式与外模式B.模式与内模式C.三级模式之间的两层映射D.三层模式
8.要保证数据库的逻辑数据独立性,需要修改的是()。
A.模式与外模式之间的映射B.模式与内模式之间的映射
C.模式D.三级模式
9.用户或应用程序看到的那部分局部逻辑结构和特征的描述是()模式。
A.模式B.物理模式C.子模式D.内模式
10.下述()不是DBA数据库管理员的职责。
A.完整性约束说明B.定义数据库模式C.数据库安全D.数据库管理系统设计
11.概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是()。
A.网状模型B.关系模型C.层次模型D.实体-关系模型
12.区分不同实体的依据是()。
A.名称B.属性C.对象D.概念
13.关系数据模型是目前最重要的一种数据模型,它的三个要素分别是()。
A.实体完整性、参照完整性、用户自定义完整性
B.数据结构、关系操作、完整性约束
C.数据增加、数据修改、数据查询
D.外模式、模式、内模式
14.在()中一个结点可以有多个双亲,结点之间可以有多种联系。
A.网状模型B.关系模型C.层次模型D.以上都有
15.()的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。
A.网状模型B.关系模型C.层次模型D.以上都有
2、简述题
1.试述数据、数据库、数据库管理系统、数据库系统的概念。
2.试述数据库系统的特点。
3.数据库管理系统的主要功能有哪些?
4.谈谈你对数据库学习的意见、建议和期望达到的水平。
实验三数据库、表的创建
一、实验目的
1、进一步掌握ManagementStudio的使用。
2、了解SQLServer数据库的逻辑结构和物理结构。
3、掌握SQL图形用户界面创建、修改、删除数据库、表。
4、掌握如何在表中添加、修改、删除数据。
5、掌握SQL中CreateDatabase、DropDatabase命令的使用。
6、掌握SQL中CreateTable、AlterTable、DropTable命令的使用。
7、理解SQL中的标识列、计算列和各种约束。
8、了解表的结构特点。
9、了解SQLServer的基本数据类型。
10、了解空值概念。
注意:
每次实验过程中创建的各种数据库及其他一切档案,同学们都保存好,以备接下来的实验课中使用。
每次上课前,请也请带上之前实验课的数据备份。
二、实验内容
1.用ManagementStudio创建数据库,请参看实验指导或者视频。
(1)创建数据库bookdb,bookdb数据库采用系统提供的默认设置。
(2)查看数据库相关参数设置:
采用系统默认设置
(3)将数据库bookdb的相关属性,填入下表:
项目
内容
数据库所有者
数据库名称
数据库逻辑文件名
数据文件物理存放位置
数据库初始大小
可用空间(数据文件最大值)
数据文件增长量
日志逻辑文件名
日志文件物理存放位置
日志文件初始大小
日志文件可用空间
日志文件增长量
(4)删除bookdb数据库。
2.使用T-SQL命令创建数据库EDUC,EDUC如下表:
数据文件
日志文件
逻辑名
EDUC_dat
EDUC_log
物理文件名
C:
\EDUC_DAT.MDF
C:
\EDUC_LOG.LDF
初始长度
2MB
1MB
最大长度
10MB
无限制
增量
1MB
10%
在EDUC中创建三个表,分别为Student,Course,SC。
三个表的的字段名、类型以及长度请参看下表:
Student:
字段名
类型
长度
主键
允许空
含义
Sno
Varchar
20
Y
N
学号
Sname
Varchar
10
N
姓名
Ssex
Varchar
2
性别
Sage
Int
4
年龄
Sdept
Varchar
30
所在系
Course:
字段名
类型
长度
主键
允许空
含义
Cno
Varchar
15
Y
N
课程号
Cname
Varchar
30
课程名
Cpno
Varchar
15
先行课
Ccredit
Int
4
学分
SC:
字段名
类型
长度
主键
允许空
含义
Sno
Varchar
20
Y
N
学号
Cno
Varchar
15
Y
N
课程号
Grade
Dec
9,2
成绩
2.请在各表中添加数据,参看实验指导或者视频
对于student表,请自行输入如下数据
3.请把student表中的0110号同学的年龄改为25,参看实验指导或者视频。
4.请删除学号为0106号的同学,参看实验指导或者视频。
以下实验请使用SQL语句语句完成,并把代码填入题目下面的空白处。
6.请在查询分析器中使用SQL语句创建数据库EDUC。
7.请在查询分析器中使用SQL语句创建数据表student。
8.请在查询分析器中使用SQL语句创建数据表course。
9.请在查询分析器中使用SQL语句创建数据表sc。
10.请在查询分析器中使用命令删除bookdb数据库。
11.在成功完成实验EDUC数据库中已经成功建立了各表。
在此基础上完成下列实验内容:
(一)、修改基本表的定义
1)修改列属性
(1)用SSMS将Student表中的Birthday字段设为不能为空(notnull)。
(2)用SQL语句将Student表中的属性Snovarchar(20)改成char(8)类型。
2)添加列
(1)用SSMS在Course表中添加一列year,类型为varchar(4),默认置为空。
(2)用SQL语句在year字段添加约束,year的属性值在2006-2012之间。
3)删除列
(1)用SQL语句将Course表中的year字段删除。
三、实验小结
体会创建数据库、表的两种方式,有什么不同?
各有什么优缺点?
各适用于什么情况?
四、作业
1、试述关系模型的3个组成部分。
2、名词解释
域:
笛卡尔积:
关系:
元组:
属性:
主码:
候选码:
外部码:
关系模式:
关系数据库:
3、试述关系模型的完整性规则。
在参照完整性中,为什么外部码属性的值也可以为空?
什么情况下才可以为空?
4、选择题
1.下面的选项不是关系数据库基本特征的是()。
A.不同的列应有不同的数据类型 B.不同的列应有不同的列名
C.与行的次序无关D.与列的次序无关
2.一个关系只有一个()。
A.候选码 B.外码C.超码D.主码
3.关系模型中,一个码是()。
A.可以由多个任意属性组成B.至多由一个属性组成
C.由一个或多个属性组成,其值能够惟一标识关系中一个元组D.以上都不是
4.现有如下关系:
患者(患者编号,患者姓名,性别,出生日期,所在单位)医疗(患者编号,医生编号,医生姓名,诊断日期,诊断结果)其中,医疗关系中的外码是()。
A.患者编号 B.患者姓名C.患者编号和患者姓名 D.医生编号和患者编号
5.关系代数运算是以()为基础的运算。
A.关系运算B.谓词演算C.集合运算D.代数运算
6.关系数据库管理系统应能实现的专门关系运算包括()。
A.排序、索引、统计B.选择、投影、连接C.关联、更新、排序D.显示、打印、制表
7.五种基本关系代数运算是()。
A.∪-×σπB.∪-σπC.∪∩×σπD.∪∩σπ
8.关系数据库中的投影操作是指从关系中()。
A.抽出特定记录B.抽出特定字段 C.建立相应的影像D.建立相应的图形
9.从一个数据库文件中取出满足某个条件的所有记录形成一个新的数据库文件的操作是()操作。
A.投影 B.连接C.选择 D.复制
10.关系代数中的连接操作是由()操作组合而成。
A.选择和投影B.选择和笛卡尔积C.投影和笛卡尔积D.投影、选择、笛卡尔积
11.一般情况下,当对关系R和S进行自然连接时,要求R和S含有一个或者多个共有的()。
A.记录B.行C.属性 D.元组
12.假设有关系R和S,关系代数表达式R-(R-S)表示的是()。
A.R∩SB.R∪SC.R-SD.R×S
9.学生关系模式S(S#,Sname,Sex,Age),S的属性分别表示学生的学号、姓名、性别、年龄。
要在表S中删除一个属性“年龄”,可选用的SQL语句是()。
A.DELETEAgefromSB.ALTERTABLESDROPAge
C.UPDATESAgeD.ALTERTABLES‘Age’
实验五连接查询和嵌套查询
一、实验目的
1、复习简单查询。
2、掌握SQL中连接查询和嵌套查询的使用。
3、理解连接查询和嵌套查询的执行过程。
4、掌握简单的多表连接查询,了解多表查询的目的。
5、掌握嵌套查询的用法。
6、掌握带有IN谓词、ANY、SOME、ALL谓词、EXISTS谓词实现嵌套查询的区别。
7、理解嵌套查询时,=和IN的区别。
8、掌握外连接的使用方法和目的。
9、理解嵌套查询和连接查询的区别和效率。
10掌握利用AS给表重新命名的方法和目的。
二、实验内容及要求
用SQL语句完成下列查询。
使用数据库为SCHOOL数据库。
1.找出所有任教“数据库”的教师的姓名。
2.取出学号为“980101011”的学生选修的课程号和课程名。
3.“涂杰杰”所选修的全部课程号及成绩。
(注意:
school中有同名,即有两名学生叫“涂杰杰”。
)
4.C语言成绩比数据结构成绩好的学生(自身连接)。
5.显示所有课程的选修情况(外连接)。
6.检索选修课程号为0109或0111的学生学号、姓名和所在班级。
7.查询“0203”课程的最高分的学生的学号。
8.没有选修以“01”开头的课程的学生信息。
(用子查询完成。
提示notin或notexists)
9.找出“苏贤兴”同学所学课程的名称和成绩。
(请使用连接查询和嵌套查询分别来完成)
10.使用嵌套查询方法,查询课程最低分大于70,最高分小于90的学生学号和姓名
11.从选修’0511’课程的同学中,选出成绩高于’艾添’的学生的学号和成绩。
12.查询选修了'0511'课程但没有选修'0506'课程的学生学号。
13.查询同时选修了'0511'课程和选修'0506'课程的学生学号。
三、实验小结
1.思考简单查询、连接查询与嵌套查询有什么不同?
连接查询与嵌套查询有何区别与联系?
2.此次实验中得到的哪些经验教训、疑难问题?
有什么心得或总结?
四、作业
1、试述SQL的特点。
2、设有一个SPJ数据库,包含S、P、J、SPJ4个关系模式:
S(SNO,SNAME,STATUS.CITY)、P(PNO,PNAME,COLOR,WEIGHT)、J(JNO,JNAME,CITY)、SPJ(SNO,PNO,JNO,QTY),具体表内容如教材P75面所示。
请用sql完成下列查询:
1)求供应工程J1零件的供应商号码SNO;
2)求供应工程J1零件P1的供应商号码SNO;
3)求供应工程J1零件为红色的供应商号码SNO;
4)求没有使用天井供应商生产的红色零件的工程号JNO;
5)求至少使用了供应商S1所供应的全部零件的程号JNO;
6)求使用了红色零件带没有使用蓝色零件的工程号;
7)求供应了蓝色零件工程项目在北京的供应商的姓名和所在城市。
8)检索至少使用了两种零件的工程号。
9)检索J1号工程不使用的零件号。
4、选择题
1.有关系S(S#,SNAME,SAGE),C(C#,CNAME),SC(S#,C#,GRADE)。
其中S#是学生号,SNAME是学生姓名,SAGE是学生年龄,C#是课程号,CNAME是课程名称。
要查询选修“ACCESS”课的年龄不小于20的全体学生姓名的SQL语句是SELECTSNAMEFROMS,C,SCWHERE子句。
这里的WHERE子句的内容是()。
A.S.S#=SC.S#andC.C#=SC.C#andSAGE>=20andCNAME=‘ACCESS’
B.S.S#=SC.S#andC.C#=SC.C#andSAGEin>=20andCNAMEin‘ACCESS’
C.SAGEin>=20andCNAMEin‘ACCESS’
D.SAGE>=20andCNAME=’ACCESS’
2.在SQL语言中,子查询是()。
A.返回单表中数据子集的查询语言 B.选取多表中字段子集的查询语句
C.选取单表中字段子集的查询语句D.嵌入到另一个查询语句之中的查询语句
3.有关系S(S#,SNAME,SEX),C(C#,CNAME),SC(S#,C#,GRADE)。
其中S#是学生号,SNAME是学生姓名,SEX是性别,C#是课程号,CNAME是课程名称。
要查询选修“数据库”课的全体男生姓名的SQL语句是SELECTSNAMEFROMS,C,SCWHERE子句。
这里的WHERE子句的内容是()。
A.S.S#=SC.S#andC.C#=SC.C#andSEX=’男’andCNAME=’数据库’
B.S.S#=SC.S#andC.C#=SC.C#andSEXin’男’andCNAMEin’数据库’
C.SEX’男’andCNAME’数据库’
D.S.SEX=’男’andCNAME=’数据库’
4.假设学生关系S(S#,SNAME,SEX),课程关系C(C#,CNAME),学生选课关系SC(S#,C#,GRADE)。
要查询选修“Computer”课的男生姓名,将涉及到关系()。
A.S B.S,SC C.C,SCD.S,C,SC
实验七数据的插入、修改、删除
一、实验目的
1、学会在企业管理器中对数据库表进行插入、修改和删除数据操作。
2、学会使用T-SQL语句对数据库表进行单个数据插入、成批数据插入、修改和删除数据操作,掌握删除表的方法。
3、掌握在子查询的基础上创建新表。
4、了解数据更新操作时要注意数据完整性。
二、实验内容及要求
用SQL语句完成下列功能。
使用数据库为SCHOOL数据库。
l、新开设一门课程,名叫网络安全与防火墙,学时40,编号为0118,主要介绍网络的安全与主要的防火墙软件。
2、先建立monitor表,其结构与student表大致一样.包含student表的学号、姓名、性别和班级编号,然后把班级编号为“0101”的学生的相应资料插入到monitor表中。
3、更新所有职称为“助教”的教师职称为“助理教师”。
4、在所有经济系班级的名称前加上“经济系”三个字。
5、学号为980101005的学生的数据结构课程成绩改为80分。
6、删除studentgrade表中所有成续不及格的记录。
7、删除studentgrade表中学号以99开头的学生选修课程的记录。
8、删除课程名为“计算机导论”的课程信息和所有这门课的选课信息。
9、将学号尾数为‘4’的同学成绩加2。
10、删除成绩为空的选课记录。
三、实验小结
1.有没有发现在更新或者删除的时候报告错误,但是你的指令没有错误的,请记录,并分析原因。
若没有,请把“000503001”同学的选课表中的学号设为空值,看能否成功,为什么?
2.此次实验中得到的哪些经验教训、疑难问题?
有什么心得或总结?
四、作业
1.若要在基本表S中增加一列CN(课程名),可用()。
A.ADDTABLES(CNCHAR(8))B.ADDTABLESALTER(CNCHAR(8))
C.ALTERTABLESADD(CNCHAR(8))D.ALTERTABLES(ADDCNCHAR(8))
2.设关系数据库中一个表S的结构为S(SN,CN,grade),其中SN为学生名,CN为课程名,二者均为字符型;grade为成绩,数值型,取值范围0-100。
若要把“张二的化学成绩80分”插入S中,则可用()。
A.ADDINTOSVALUES(’张二’,’化学’,’80’)
B.INSERTINTOSVALUES(’张二’,’化学’,’80’)
C.ADDINTOSVALUES(’张二’,’化学’,80)
D.INSERTINTOSVALUES(’张二’,’化学’,80)
3.设关系数据库中一个表S的结构为:
S(SN,CN,grade),其中SN为学生名,CN为课程名,二者均为字符型;grade为成绩,数值型,取值范围0-100。
若要更正王二的化学成绩为85分,则可用()。
A.UPDATESSETgrade=85WHERESN=’王二’ANDCN=’化学’
B.UPDATESSETgrade=’85’WHERESN=’王二’ANDCN=’化学’
C.UPDATEgrade=8
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库原理与应用 数据库 原理 应用 实验 报告书 修改