数据库复习资料docWord文件下载.docx
- 文档编号:18471446
- 上传时间:2022-12-17
- 格式:DOCX
- 页数:7
- 大小:21.87KB
数据库复习资料docWord文件下载.docx
《数据库复习资料docWord文件下载.docx》由会员分享,可在线阅读,更多相关《数据库复习资料docWord文件下载.docx(7页珍藏版)》请在冰豆网上搜索。
本质上是一个用计算机存储数据的系统,一般由数据库、数据库管理系统(及相关实用工具)、应用程序、数据库管理员组成。
主要作用除保存数据外,还提供对数据进行各种管理和处理:
安全管理、数据共享、数据查询。
3、什么是数据库管理系统,作用是什么?
是一个专门用于实现对数据进行管理和维护的系统软件。
主要作用包括:
数据库的建立与维护;
数据定义;
数据组织、存储和管理;
数据操作;
事务的管理和运行。
4、数据独立性答:
指应用程序不会因数据的物理表示方式和访问技术的改变而改变,即应用程序不依赖于任何特定的物理表示方式和访问技术,包含两个方面:
逻辑独立性和物理独立性5、关系模型、关系和关系模式。
用关系(表格数据)表示实体和实体之间联系的模型称为关系数据模型
-1-
关系:
关系就是二维表。
并满足如下性质:
关系表中的每一列都是不可再分的基本属性;
表中的行、列次序并不重要。
关系模式:
二维表的结构称为关系模式,即,关系模式是二维表的表框架或表头结构。
6、元组、属性、主码、域答:
元组:
表中的每一行称作是一个元组,它相当于一个记录值。
属性:
表中的每一列是一个属性值的集合,列可以命名,称为属性名。
主码:
表中用于惟一地确定一个元组的一个属性或最小的属性组。
域:
属性的取值范围。
7、实体完整性、参照完整性和用户定义完整性答:
实体完整性是保证关系中的每个元组都是可识别的和惟一的。
而且表中不允许存在如下的记录:
无主码值的记录和主码值相同的记录。
参照完整性用于描述实体之间的联系。
参照完整性一般是指多个实体(表)之间的关联关系。
一般用外码实现。
外码:
取作本表(子表)属性之一的外表(父表,主表)主码。
主码值先在主表中生成,后在子表中引用。
用户定义完整性也称为域完整性或语义完整性。
按应用语义,属性数据有:
类型与长度限制:
方便计算机操作。
取值范围限制:
防止属性值与应用语义矛盾8、数据模式答:
在数据模型中有关数据结构及其相互间关系的描述称为数据模式(Dataschema)。
9、信息技术答:
信息技术(InformationTechnology简称IT)是指在信息科学的基本原理和方法的指导下扩展人类信息功能的技术。
一般说,信息技术是以电子计算机和现代通信为主要手段实现信息的获取,加工,传递和利用等功能的技术总和。
10、信息技术的四大基本技术是哪些?
传感技术、通信技术、计算机技术和控制技术是信息技术的四大基本技术,其主要支柱是通讯(Communication)技术、计算机(Computer)技术和控制(Control)技术,即“3C”技术。
11、数据、信息与知识答:
数据是使用约定俗成的关键词,对客观事物的数量、属性、位置及其相互关系进行抽象表示,以适合在这个领域中用人工或自然的方式进行保存、传递和处理。
信息是具有时效性的有一定含义的,有逻辑的、经过加工处理的、对决策有价值的数据流。
知识就是沉淀并与已有人类知识库进行结构化的有价值信息。
12、数据库技术答:
数据库是数据管理的最新技术,主要研究内容是如何对数据进行科学的管理,以提供可共享、安全、可靠的数据。
数据库技术一般包含数据管理和数据处理两部分。
13、视图及其作用答:
视图由基本表构成的虚表(满足用户需求的表结构)。
它的主要作用包括:
简化数据查询语句,使用户能从多角度看待同一数据,提高了数据的安全性,提供了一定程度的逻辑独立性。
SQL命令执行结果题在SQLSERVER查询分析器中执行如下SQL操作:
-2-
以上命令正确执行完成后,请写出如下SQL语句的执行结果。
(如果没有找到相应记录,则写没有找到记录)数据库设计题(共20分)假设有如下数据管理要求,请你根据上述要求,按下步骤完成一个数据库的设计。
要求满足第三范式。
1、画出系统E-R图
2、画出系统数据库的逻辑图(如下图所示样式)
班级PK班级编号班级名称PK学生学号姓名性别年龄班级编号PK教员工号姓名年龄教龄职称编号PK职称职称编号职称
FK1
选课PKFK1FK2ID学号课程号FK1PK
课程课程号名称课时学分工号
通知PKID标题内容
3、
写出各关系在SQLSERVER中的物理结构定义。
(结构如下表所示)表1student表(学生表)序号12字体名称SNOSNAME数据类型INTVARCHAR(50)约束PRIMARYKEYNOTNULL说明学号学生姓名
操作题。
按下要求,完成相应的SQL语句。
(共20分)/*综合实验二*//*1.新建一个数据库名为SAMPLE,选择其,在“新建查询”窗口中,用CREATETABLE语句创建如下表。
(1)STUDENT(SNOVARCHAR(3)NOTNULL,SNAMEVARCHAR(4)NOTNULL,SSEXVARCHAR
(2)NOTNULL,SBIRTHDAYDATETIME,CLASSVARCHAR(5))*/
-3-
createdatabasesampleusesamplecreatetablestudent(SNOVARCHAR(3)primarykey,SNAMEVARCHAR(4)NOTNULL,SSEXVARCHAR
(2)NOTNULL,SBIRTHDAYDATETIME,CLASSVARCHAR(5))/*
(2)COURSE(CNOVARCHAR(5)NOTNULL,CNAMEVARCHAR(10)NOTNULL,TNOVARCHAR(10)NOTNULL)*/createtablecourse(CNOVARCHAR(5)primarykey,CNAMEVARCHAR(10)NOTNULL,TNOVARCHAR(10)NOTNULL)/*(3)SCORE(SNOVARCHAR(3)NOTNULL,CNOVARCHAR(5)NOTNULL,DEGREENUMERIC(10,1)NOTNULL)*/createtablescore(SNOVARCHAR(3)NOTNULL,CNOVARCHAR(5)NOTNULL,DEGREENUMERIC(10,1)NOTNULL,primarykey(sno,cno))/*(4)TEACHER(TNOVARCHAR(3)NOTNULL,TNAMEVARCHAR(4)NOTNULL,TSEXVARCHAR
(2)NOTNULL,TBIRTHDAYDATETIMENOTNULL,PROFVARCHAR(6),DEPARTVARCHAR(10)NOTNULL)*/createtableteacher(NOVARCHAR(3)primarykey,TNAMEVARCHAR(4)NOTNULL,TSEXVARCHAR
(2)NOTNULL,
-4-
TBIRTHDAYDATETIMENOTNULL,PROFVARCHAR(6),DEPARTVARCHAR(10)NOTNULL)/*2.用INSERT语句,添加如下数据。
(1)在STUDENT表中插入如下数据:
(108,&
#39;
曾华&
&
男&
1977-09-01,95033);
(105,&
匡明&
1975-10-02,95031);
(107,&
王丽&
女&
1976-01-23,95033);
(101,&
李军&
1976-02-20,95033);
(109,&
王芳&
1975-02-10,95031);
(103,&
陆君&
1974-06-03,95031);
*/insertintostudentvalues(108,&
1977/09/01&
95033)insertintostudentvalues(105,&
1975/10/02&
95031)insertintostudentvalues(107,&
1976/01/23&
95033)insertintostudentvalues(101,&
1976/02/20&
95033)insertintostudentvalues(109,&
1975/02/10&
95031)insertintostudentvalues(103,&
1974/06/03&
95031)/*
(2)在COURSE表添加如下数据:
(&
3-105&
计算机导论&
825)(&
3-245&
操作系统&
804);
6-166&
数据电路&
856);
9-888&
高等数学&
100);
(‘3-109’,‘数据库技术及应用’,825);
*/insertintocoursevalues(&
&
825&
)insertintocoursevalues(&
804&
856&
100&
)altertablecoursealtercolumncnamevarchar(40)insertintocoursevalues(&
3-109&
数据库技术及应用&
)
-5-
/*(3)在表SCORE中添加如下数据:
(103,&
86);
(105,&
75);
(109,&
68);
92);
88);
76);
(101,&
64);
(107,&
91);
(108,&
78);
85);
6-106&
79);
81);
*/insertintoscorevalues(103,&
86)insertintoscorevalues(105,&
75)insertintoscorevalues(109,&
68)insertintoscorevalues(103,&
92)insertintoscorevalues(105,&
88)insertintoscorevalues(109,&
76)insertintoscorevalues(101,&
64)insertintoscorevalues(107,&
91)insertintoscorevalues(108,&
78)insertintoscorevalues(101,&
85)insertintoscorevalues(107,&
79)insertintoscorevalues(108,&
81)/*(4)在表TEACHER中添加如下数据:
(804,&
李诚&
1958-12-02&
副教授&
计算机系&
);
(856,&
张旭&
1969-03-12&
讲师&
电子工程系&
(825,&
王萍&
1972-05-05&
助教&
(831,&
刘冰&
1977-08-14&
-6-
*/insertintoteachervalues(804,&
)insertintoteachervalues(856,&
)insertintoteachervalues(825,&
)insertintoteachervalues(831,&
)/*3.完成下列SQL操作。
1)查询Student表中的所有记录的Sname、Ssex和Class列。
*/selectsname,ssex,classfromstudent/*2)查询教师所有的单位即不重复的Depart列。
*/selectdistinctdepartfromteacher/*3)查询Student表的所有记录。
*/select*fromstudent/*4)查询Score表中成绩在60到80之间的所有记录。
*/select*fromscorewheredegreebetween60and80/*5)查询Score表中成绩为85,86或88的记录。
*/select*fromscorewheredegreein(85,86,88)/*6)查询Student表中“95031”班或性别为“女”的同学记录。
*/select*fromstudentwhereclass=&
95031&
orssex=&
/*7)以Class降序查询Student表的所有记录。
*/select*fromstudentorderbyclassdesc/*8)以Cno升序、Degree降序查询Score表的所有记录。
*/select*fromscoreorderbycno,degreedesc/*
-7-
9)查询“95031”班的学生人数。
*/selectcount(*)fromstudentwhereclass=&
/*10)查询Score表中的最高分的学生学号和课程号。
*/selectsno,cnofromscorewheredegreein(selectmax(degree)fromscore)
SELECTA.SNO,B.CNOFROMSCOREA,SCOREBWHEREB.DEGREEIN(SELECTMAX(DEGREE)FROMSCOREGROUPBYCNO)ANDA.SNO=B.SNOANDA.CNO=B.CNO/*11)查询‘3-105’号课程的平均分。
*/selectavg(degree)fromscorewherecno=&
/*12)查询Score表中至少有5名学生选修的并以3开头的课程的平均分数。
*/selectcno,avg(degree)fromscoregroupbycnohavingcount(*)&
gt;
4andcnolike&
3%&
/*13)查询最低分大于70,最高分小于90的Sno列。
*/selectsnofromscoregroupbysnohavingmin(degree)&
70andmax(degree)&
lt;
90/*14)查询所有学生的Sname、Cno和Degree列。
*/selectsname,cno,degreefromstudents,scorescwheres.sno=sc.sno/*15)查询所有学生的Sno、Cname和Degree列。
*/selectsno,cname,degreefromscoresc,coursecwhereo=o/*16)查询所有学生的Sname、Cname和Degree列。
*/selectsname,cname,degreefromstudents,scoresc,coursecwheres.sno=sc.snoando=o/*17)查询“95033”班所选课程的平均分。
*/selectavg(degree)fromscorewheresnoin(selectsnofromstudentwhereclass=&
95033&
)/*18)假设使用如下命令建立了一个grade表:
createtablegrade(lownumber(3,0),uppnumber(3),rankchar
(1));
insertintogradevalues(90,100,’A’);
insertintogradevalues(80,89,’B’);
-8-
insertintogradevalues(70,79,’C’);
insertintogradevalues(60,69,’D’);
insertintogradevalues(0,59,’E’);
commit;
现查询所有同学的Sno、Cno和rank列。
*/createtablegrade(lownumeric(3,0),uppnumeric(3,0),rankchar
(1))insertintogradevalues(90,100,&
A&
)insertintogradevalues(80,89,&
B&
)insertintogradevalues(70,79,&
C&
)insertintogradevalues(60,69,&
D&
)insertintogradevalues(0,59,&
E&
)commit;
selectsno,cno,rankfromscore,gradewheredegreebetweenlowandupp/*19)查询选修“3-105”课程的成绩高于“109”号同学成绩的所有同学的记录。
*/selects.sno,sname,ssex,sbirthday,classfromstudents,scorescwheres.sno=sc.snoandsc.snoin(selectsnofromscor
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 复习资料 doc
![提示](https://static.bdocx.com/images/bang_tan.gif)