专升本《数据库系统原理》_试卷_答案
- 格式:docx
- 大小:51.98 KB
- 文档页数:4
计算机专升本试题详解数据库系统原理与应用数据库系统是计算机科学中非常重要的一门课程,它涉及到数据的存储、管理和应用等方面。
本文将详细解析计算机专升本试题中涉及数据库系统原理与应用的相关内容,旨在帮助读者更深入地理解与掌握这门课程。
一、数据库系统概述数据库系统是指在计算机系统中,将大量数据组织起来,经过适当的管理和处理,以方便用户使用的一种计算机应用系统。
它具有数据的共享性、数据的独立性、数据的持久性等特点。
数据库系统主要由数据库、数据库管理系统(DBMS)以及应用程序组成。
1. 数据库数据库是指按照一定的数据模型组织、描述和存储的数据集合。
它是数据的集合,可以用表格的方式展示,每个表格称为一个关系,每个关系由多个属性组成。
数据库中的数据通常具有结构化的特点,能够通过关系型数据库管理系统来进行管理和查询。
2. 数据库管理系统(DBMS)数据库管理系统是指对数据库进行管理的软件系统,它提供对数据库的管理、查询、更新等功能。
常见的DBMS有MySQL、Oracle、SQL Server等。
它是数据库系统的核心组成部分,通过与用户和应用程序的交互,实现对数据库的操作。
二、数据库系统原理数据库系统原理是数据库系统中最基本的理论和方法,是数据库系统研究的核心内容。
它包括数据模型、数据结构、数据库语言、数据库设计等方面的知识。
1. 数据模型数据模型是数据库中数据的抽象和描述方法,是数据库系统中最基本的概念之一。
常见的数据模型有层次模型、网状模型和关系模型等。
其中,关系模型是应用最广泛的数据模型,它将数据组织成表格的形式,通过一对一、一对多、多对多等关系建立不同表之间的联系。
2. 数据结构数据结构是指在数据库中如何组织和存储数据的方法。
常见的数据结构有线性表、树、图等。
在关系型数据库中,数据结构通常是由表格、索引、视图等构成,通过各种数据结构的组合和关联,实现对数据的高效存储和查询。
3. 数据库语言数据库语言是用户与数据库进行交互的桥梁,包括数据定义语言(DDL)、数据操纵语言(DML)、数据控制语言(DCL)等。
自考数据库系统原理真题及答案(附解析)自考数据库系统原理真题及答案(附解析)导言:数据库系统原理是计算机科学与技术专业的一门核心课程,掌握数据库系统的基本原理对于学生提升专业能力具有重要意义。
为了帮助自考的学生更好地备考,本文将介绍一些自考数据库系统原理的真题,并提供详细的答案和解析。
一、概述数据库系统原理是指数据库的基本概念、数据库系统的组成以及数据库的设计与实现等内容的理论基础。
下面列举了一些自考数据库系统原理的真题,供学生们参考。
1. 真题一:关系数据库中,主键的作用是什么?请举例说明。
答案及解析:主键是用于唯一标识关系中的元组的一个属性或属性集合。
主键在关系模型中具有唯一性和非空性的特点,可以保证关系中的每个元组都能被唯一地标识出来。
例如,在一个学生信息表中,学号可以作为主键,因为每个学生的学号都是唯一的,通过学号就能准确地找到对应的学生信息。
2. 真题二:请简要介绍数据库事务的特性,并解释原子性和持久性的含义。
答案及解析:数据库事务具有ACID特性,即原子性、一致性、隔离性和持久性。
其中,原子性指事务是不可分割的最小执行单位,要么全部执行,要么全部不执行;持久性表示一旦事务提交,其对数据库的修改将永久保存。
例如,当转账操作发生时,如果转账成功,那么转出账户的余额减少,转入账户的余额增加,这些修改将永久保存在数据库中,即持久性的体现。
二、数据库系统原理的真题及答案1. 真题三:请简要解释数据库系统的三级模式结构,并描述其各个层次的特点。
答案及解析:数据库系统的三级模式结构包括外模式、概念模式和内模式。
外模式是用户与数据库系统交互的最高层次,每个外模式定义了用户能够看到和操作的数据的逻辑结构和访问方式;概念模式是数据库整体的逻辑结构和特征的描述,是数据库中全体数据的集合;内模式是数据在存储介质上的物理结构和存储方式的描述,是数据库中实际存储数据的层次。
三级模式结构的设计使得用户与数据库系统的交互更加灵活,提高了数据库的安全性和数据的独立性。
(完整版)专升本数据库练习题及答案一.关系代数运算1.选择σ(1)查询年龄小于20岁的学生σsage<20(student)(2)查询学号为201215122的学生σsno=201215122(student)2.投影(1)查询学生姓名,和所在系same,sdept(student)(2)查询选修了2号课程的学生学号sno(σcno=‘2’2(student))SQL语句学生-课程数据库学生表:学生(学号,姓名,性别,年龄,所在系)课程表:课程(课程号,课程名,先行课,学分)学生选课表:选课(学号,课程号,成绩)二.创建数据库SQL1.创建数据库Create database 数据库名On( name =逻辑文件名,Filename=’物理文件名’,Size=初始文件大小,Maxsize=最大文件大小,Filegrowth=文件自动增量)Log on( name =逻辑文件名,Filename=‘物理文件名’,Size=初始文件大小,Maxsize=最大文件大小,Filegrowth=文件自动增量)例创建‘教务管理数据库’Create database 教务管理数据库On( name =教务管理_dat,Filename=‘E:\SQL\教务管理_dat.mdf’,Size=2,Filegrowth=1 )Log on( name =教务管理.log,Filename=‘E:\SQL\教务管理_log.ldf’,Size=5M,Filegrowth=10% )1.查看数据库属性1)使用sp_helpdb查看数据库信息:sp_helpdb [数据库名](2)使用sp_databases 查看可使用的数据库信息:sp_databases(显示所有可以使用的数据库名称和大小)(3)使用sp_helpfile查看数据库文件信息sp_helpfile [文件名]1.设置数据库选项Alter database 数据库名Set 选项例设置教务管理数据库自动收缩Alter database 教务管理数据库Set auto_shrink on (自动收缩)1.修改数据库大小Alter database 数据库名Add file 增加数据文件Add log file 增加日志文件Remove file 删除文件Modify file 修改文件()例 1.修改教务管理数据库,增加数据文件jwgl_dat1 Alter database 教务管理数据库Add file (Name=jwgl_dat1,Filename=‘E:\SQL\jwgl_dat1.ndf’,Size=2MB,Filegrowth=1MB )2.修改教务管理数据库Alter database 教务管理数据库Modify file (Name=jwgl_dat1,Size=5MB )2.删除教务管理数据库中次要数据文件jwgl_dat1 Alter database 教务管理数据库Remove file jwgl_dat11.数据库更名1)更改数据库名Alter database 数据库名Modify name = 新数据库名例将数据库test更名为mytestAlter database testModify name = mytest1)更改数据库的逻辑文件名Alter database 数据库名Modify file(Name=逻辑文件名,Newname=新逻辑文件名)例将数据库逻辑文件test更名为mytest Alter database mytestModify file(Name = test,Newname = mytest )GoAlter database mytestModify file(Name = test_log,Newname = mytest_log )1)更改数据库的物理文件名Alter database 数据库名Modify file(Name=逻辑文件名,Filename =‘新路径\操作系统文件名’)例将数据库物理文件test更名为mytest Alter database mytestModify file(Name=mytest,Filename =‘E:\sql\mytest.mdf’)GOAlter database mytestModify file(Name=mytest_log,Filename =‘E:\sql\mytest_log.ldf’)1.删除数据库Drop database 数据库名例删除数据库名为test和数据库sales Drop database test,sales1.数据库分离Sp_detach_db 数据库名1.数据库附加Create database 数据库名On (Filename=‘主文件的物理文件名’)For attach三.基本表操作1.创建表Create table 表名()例创建一个学生表Create table 学生表(学号char(6)primary key,姓名char(20)unique,性别char(2),年龄smallint,所在系char(20))1.修改表Alter table 表名Add 列名数据类型()//增加列(alter column 列名数据类型()//对原有的基础上修改列)(drop column 列名//对原有的基础上删除列,可一次删除多列)例1. 添加一新列电子邮箱char型长度20Alter table 学生表Add 电子邮箱char(20)例2. 修改学生表列电子邮箱数据类型长度为22Alter table 学生表alter column 电子邮箱varchar(22)例3.删除学生表的电子邮箱列Alter table 学生表drop column 电子邮箱3.删除表Drop table 表名例删除学生表Drop table 学生表四.数据更新1.插入数据InsertInto 表名()Values 值()例1 插入一行数据到学生表的学生InsertInto 学生表(学号,姓名,性别,年龄,所在系)Values (‘201215126’,‘张成民’,‘男’,18,‘计算机系’)1.修改数据Update 表名Set 列名=表达式Where 条件1)修改某元祖的值例将学生201215121的年龄改为22Update 学生表Set 年龄=22Where 学号=‘*********‘1)修改多个元祖的值例将所有学生年龄增加一岁Update 学生表Set 年龄=年龄+11)带子查询的修改语句例将计算机科学系全体学生成绩置零Update 选课表Set 成绩=0Where 学号in(select 学号From 学生表Where 所在系=‘计算机科学系’)1)修改表名Sp_rename 旧对象名,新对象名例课程表更名为课程信息表Sp_rename 课程表,课程信息表3.删除数据Deletefrom 表名Where 条件例将课程信息表中c程序设计课程信息删除DeleteFrom 课程信息表Where 课程名=‘c程序设计’五.使用约束1.非空约束(NOT NULL)例创建一个学生表使姓名,性别为非空约束学号为主键Create table 学生表(学号char(6)primary key,姓名char(20)NOT NULL,性别char(2)NOT NULL,年龄smallint,所在系char(20))1.唯一约束(UNIQUE)Create table 学生表(学号char(6)primary key,姓名char(20)UNIQUE,性别char(2)UNIQUE,年龄smallint,所在系char(20))1.Check约束(检查列值是否满足一个条件表达式)1.完整性约束命令子句Constraint 完整性约束条件名(包括非空主键唯一外键check约束等)约束条件例1创建一个学生表使性别只允许为‘男’或‘女’,年龄在20到30之间Create table 学生表(学号char(6)primary key,姓名char(20)UNIQUE,性别char(2)CHECK((性别=‘男’)or (性别=‘女’)),年龄smallint CHECK(年龄between 20 and 30),所在系char(20))2 利用T-SQL命令设置课程表中的考核方式只能取值‘考试’或‘考查’,学分的值为1-6之间Alter table 课程表with checkAdd constraint CK_课程表_1 check(考核方式in (‘考查’,‘考试’))Alter table 课程表with nocheckAdd constraint CK_课程表_2 check(学分between 1 and 6)1.主键约束(PRIMARY KEY)Create table 学生表(学号char(6)primary key,(在列定义后设置主键)姓名char(20)UNIQUE,性别char(2)UNIQUE,年龄smallint,所在系char(20))1.外键约束(FOREIGN KEY)Constraint 约束名FOREIGN KEY(列名)Reference 被引用表(列名)[on delete cascade(级联删除)|on update cascade(级联更新)]例创建选课表设置选课表的课程号为外键引用课程表课程号Create table 选课表(学号char(6)primary key,课程号char(11)Reference 课程表(课程号)on update cascade,成绩numeric(5,1))7.默认约束(DEFAULT)Constraint 约束名DEFAULT 常量表达式可在创建表中数据类型后直接加例修改课程表设置考核方式默认值为‘考试’Alter table 课程表Add constraint df_课程表_考核DEFAULT‘考试’)for 考核方式六.数据查询1.单表查询1)选择列查询例查询全体学生姓名学号Select 姓名,学号From 学生表1)查询全部列例查询全体学生姓名学号Select *From 学生表1)查询经过计算的值例查询全体学生姓名及出生年份Select 姓名,2017-年龄From 学生表1)消除取值重复的行(distinct)例查询选修了课程的学生学号结果取消重复行Select distinct 学号From 学生表1)查询满足条件的元祖(where子句)比较大小(> = < 等)例查询选修了课程为‘计算机’的学生学号结果取消重复行Select distinct 学号From 学生表Where 课程=‘计算机’确定查找范围(between and)例查询成绩为80-90的学生学号结果取消重复行Select distinct 学号From 选课表Where 成绩between 80 and 90确定集合(in)例查询成绩为80,90,100的学生学号结果取消重复行Select distinct 学号From 选课表Where 成绩in(80,90,100)字符匹配(like )%:任意长度的字符串_(下划线):任意单个字符例1查询所有姓刘的学生姓名学号结果取消重复行Select distinct 姓名,学号From 学生表Where 姓名like‘刘%’2查询名字中第二个字是阳学生姓名学号结果取消重复行Select distinct 姓名,学号From 学生表Where 姓名like‘_阳%’空值查询(is null/not null)例查询成绩为空的中第二个字是阳学生姓名学号结果取消重复行Select distinct 姓名,学号From 学生表Where 姓名like‘_阳%’多重条件查询(and or in)例查询成绩为80以上的女同学的姓名学号结果取消重复行Select distinct 姓名,学号From 学生表,选课表Where 学生表.学号=选课表.学号And 成绩>=80 AND 性别=‘女’6)设置字段别名(as)表达式as 别名或字段别名= 表达式例查询学生姓名性别年龄Select 姓名as学生姓名,性别,datediff(year,出生日期,getdate())as年龄From 学生表或Select 学生姓名=姓名,性别,年龄=datediff(year,出生日期,getdate())From 学生表2.Order by子句(对查询结果默认升序(asc)降序(desc))例查询选修了3号课程的学生学号成绩结果按分数降序排列Select 成绩,学号From 选课表Where 课程号=‘3’Order by成绩desc2.聚集函数(count 统计个数,sum 求和,avg 求平均数,max 最大数,min 最小数)只能用于select,group by,having 子句中不能用于where条件句中例查询选修课程号为1的学生最高成绩Select max(成绩)From 选课表Where 课程号=‘1’2.Group by ...... having子句(功能为分组)例1.求各个课程号及相应的选课人数Select 课程号,count(学号)From 选课表Group by课程号2.查询选修了三门以上课程的学生学号Select 学号From 选课表Group by学号having count(*)> 3(having子句作用范围为Group by后)3.查询平均成绩大于等于90分的学生学号和平均成绩Select 学号avg(成绩)From 选课表Group by学号having avg(成绩)>=90七.多表查询1.表连接用where子句连接两个表Where 表一.列名(比较运算符>,=,<)表2.列名例查询每个学生及选修课程的情况(用到学生表,选课表)Select 学生表.*,选课表.*(如查询的属性在两个表不唯一则不用加表前缀)From 学生表,选课表where学生表.学号=选课表.学号1.多表连接例查询每个学生的学号,姓名,选修的课程名及成绩(用到学生表,课程表选课表)Select 学生表.学号,姓名,课程名,成绩(查询的属性在两个表不唯一则不用加表前缀)From 学生表,课程表,选课表where学生表.学号=选课表.学号and 课程表.课程号=选课表.课程号1.带in的子查询(嵌套查询)例查询与‘刘晨’在同一个系学习的学生的学号,姓名Select 学号,姓名,系名From 学生表Where系名in(Select 系名From 学生表Where姓名=‘刘晨’)1.带比较运算符的子查询(>,<,=,>=,<=,!=)例查询与‘刘晨’在同一个系学习的学生的学号,姓名Select 学号,姓名,系名From 学生表Where系名in(Select 系名From 学生表Where姓名=‘刘晨’)八.建立索引1.建立索引Create [unique(唯一)][clustered ( 聚集) ][nonclustered ( 非聚集)]Index 索引名On (表/视图)(列名[asc(升序)][desc(降序)])With [pad_index][fillfactor=填充因子][drop_existing]例在学生表上创建一个名为XS XM的非唯一性非聚簇索引索引关键字为姓名升序填充因子为50%Create nonclusteredIndex XS XMOn 学生表(姓名asc)With fillfactor=502.删除索引Drop index 表名.索引名九.视图1.定义视图1)建立视图Create view 视图名列名AsSelect(在视图后加上with check option子句以后对该视图进行增删改时则自动添加)例建立信息系学生的视图Create view 信息系学生AsSelect 学号,姓名,年龄From 学生表Where 系别=‘信息系’1)删除视图Drop view 视图名(如选择级联删除视图名后加cascade)例删除视图BT_S和视图IS_S1Drop view BT_SDrop view IS_S1(拒绝执行因为与另一个视图有连接所以后面加cascade)2.查询视图!同表查询唯一区别在于from中添加的为视图名!2.更新视图(指对视图进行增删改,由于对视图修改最后都归结于对表的修改所以修改视图数据=修改表数据)函数1、标量值create function函数名(@变量类型)returns返回值类型beginreturnend例:给专业名求男女比例CREATE FUNCTION某专业男女比例(@专业名varchar(20))RETURNS numeric(6,2)ASBEGINdeclare@man intdeclare@woman intselect@man=count(*)from学生表,专业表,班级表where学生表.学号=班级表.班号and班级表.专业=专业表.专业号and性别='男'and 专业名=@专业名select@woman=count(*)from学生表,专业表,班级表where学生表.学号=班级表.班号and班级表.专业=专业表.专业号and性别='女'and 专业名=@专业名return cast(@man as float)/cast(@woman as float)END执行select dbo.某专业男女比例('数据库')2、表值函数给班名和课程名求某班某课成绩单CREATE FUNCTION某班某课成绩单(@班名char(20),@课程名varchar(20))RETURNS TABLEASRETURN(select班名,学生表.学号,姓名,课程名,成绩from学生表,课程表,班级表,选课表where课程表.课程号=选课表.课程号and学生表.学号=选课表.学号and学生表.班号=班级表.班号and班名=@班名and课程名=@课程名)GO执行select*from dbo.某班某课成绩单('嵌入式班','java程序设计')3、CREATE FUNCTION某班平均函数(@班号char(5))RETURNS TABLEASRETURN(SELECt课程号,avg(成绩)平均成绩from选课表,学生表where学生表.学号=选课表.学号and班号=@班号group by课程号)GO调用select*from dbo.某班平均函数('1001')十.存储过程1.存储过程创建与执行(1)创建存储过程Create proc[edure] 存储过程名[ @参数数据类型[output(指明返回参数)] ]AsBeginSql语句[ ]End说明:存储过程可以带参数也可不带参数可以输入也可输出例1. 创建“学生名单”存储过程功能为输出所有学生名单Create procedure 学生名单AsBeginSelect 学号,姓名From 学生表End例2.创建“某班学生名单”存储过程其功能查看某个班级学生名单结果按学号排序Create procedure 某班学生名单@班名varchar (20)AsBeginSelect 学号,姓名From 学生表,班级表Where 学生表.班号= 班级表.班号and班名=@班名Order by 学号End例3.创建“查询学生”存储过程功能根据学号查询学生姓名年龄Create procedure 查询学生@学号char(11),@姓名nchar(5)output,@年龄int outputAsBeginSelect @姓名= 姓名,@年龄=datediff(year,出生日期,getdate())From 学生表Where 学号=@学号End(2)执行存储过程Execute 存储过程名@参数=[值]例1 查看学校学生名单Execute 学生名单例2 查看计算机应用071班学生名单Execute 某班学生名单@班级=‘计算机应用071班’例3 查看学号为“***********”的学生姓名年龄declare@姓名nchar(5)declare@年龄intexec查询学生'15999015',@姓名output,@年龄output print@姓名print@年龄查看存储过程(1)查看存储过程的定义Exec sp_helptext “”(2)查看存储过程的参数和数据类型信息Exec sp_help “ ”(3)查看存储过程的依赖关系Exec sp_depends “ ”2.修改存储过程Alter proc[edure] 存储过程名[ @参数数据类型[output(指明返回参数)] ]AsBeginSql语句[ ]End例修改“学生名单”存储过程结果按学号排序alter procedure 学生名单AsBeginSelect 学号,姓名From 学生表Order by 学号End2.删除存储过程Drop procedure 存储过程名例将存储过程“学生名单”删除Drop procedure 学生名单十一.触发器1.创建触发器Create trigger 触发器名On 表名/视图名{ for / after / instead of }{ [ insert ] [ update ] [ delete ] 指定表/视图执行哪条语句时激活触发器关键字} AsSql 语句例1.对学生表创建插入触发器当有新纪录插入表时更新班级表中相应班级人数Create trigger 增加学生On 学生表after insertAsBeginSet nocount onIf update(班级)BeginUpdate 班级表Set 学生人数=学生人数+1From insertedWhere 班级表.班号=inserted.班级EndEnd例2.对学生表创建删除触发器当删除一条纪录时减少班级表中相应班级人数Create trigger 删除学生On 学生表。
广州大学2016--2017学年第一学期试卷(A)科目:《数据库原理》一、选择题(共24分,每选2 分)1.设属性A是关系R的主属性,则属性A不能取空值,这是【】。
A.实体完整性规则B.参照完整性规则C.用户定义完整性规则D.域完整性规则答案:A2.数据库系统与文件系统的主要区别是【】。
A.数据库系统复杂,而文件系统简单B.文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决C.文件系统只能管理程序文件,而数据库系统能够管理各类型的文件D.文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量答案:B3.在关系代数的专门关系运算中,从表中取出满足条件的属性的操作称为【①】,从表中选出满足某种条件的元组的操作称为【②】,将两个关系中具有共同属性值的元组连接到一起构成新表的操作称为【③】。
A.选择B.投影C.连接D.扫描答案:①B②A ③C4.在数据库设计中,将E-R图转换成关系数据模型的过程属于【】。
A.需求分析阶段B.概念设计阶段C.逻辑设计阶段D.物理设计阶段答案:C5.关系数据模型【】。
A.只能表示实体间的1:1联系B.只能表示实体间的1:n联系C.只能表示实体间的m:n联系D.可以表示实体间的上述三种联系答案:D6.设关系R(A,B,C)和S(B,C,D),下列各关系代数表达式不成立的是【】A.ПA(R)♦❖∏D(S) B.R∪S C.∏B(R)∩∏B(S) D.R♦❖S答案:A7.在数据库的三级模式结构中,内模式有【】。
A.1个B.2个C.3个D.任意多个答案:A8.现有关系模式:EMP(empno,ename,mgr,sal,workday)DEPT(deptno,dname,loc)在以下视图中,不可能更新的视图为【】。
A.视图V1:由1970年以后参加工作的雇员组成B.视图V2:由部门号和各部门的平均工资组成C.视图V3:由雇员姓名和其领导者姓名组成D.视图V4:由薪金超出所有雇员平均薪金以上的雇员组成答案:B9.数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是【】。
计算机数据库系统专升本试题精选一、选择题1. 在关系数据库中,以下哪种关系不符合第一范式要求?a) 存在部分依赖b) 存在传递依赖c) 属性值唯一d) 属性之间没有重复2. 在数据库中,查询语句使用的是:a) DDLb) DMLc) DCLd) TCL3. 在数据库事务的ACID特性中,A代表的是:a) Atomicity(原子性)b) Consistency(一致性)c) Isolation(隔离性)d) Durability(持久性)4. 哪个操作可以用于在关系数据库中添加新的记录?a) SELECTb) INSERTc) UPDATEd) DELETE5. 在数据库中,下列哪种语言是用于操作和管理数据库的标准查询语言?a) SQLb) XMLc) HTMLd) JSON二、填空题1. 数据库系统中,______是用于存储和组织数据的数据结构。
2. 数据库中,______用于定义数据类型、表、视图、索引等数据库对象。
3. 数据库的______模式定义了数据库结构的逻辑视图。
4. 数据库系统的______层负责控制和管理数据库的完整性和安全性。
5. 在数据库中,______用于查询、插入、更新和删除数据。
三、简答题1. 数据库中事务的特性有哪些?简要介绍每个特性的含义。
2. 什么是数据库的ACID属性?请详细解释每个属性的含义。
3. 什么是数据库的三级模式?请分别说明每个模式的作用。
4. 数据库中的触发器是什么?它们有什么作用?5. 解释什么是数据库的范式,列举并简要介绍前三个范式的要求。
四、应用题某公司的数据库中有两张表,一张是员工信息表(Employee),包含员工ID、姓名、部门ID、薪资等字段;另一张是部门信息表(Department),包含部门ID、部门名称、部门负责人等字段。
1. 请编写SQL语句查询所有薪资大于5000的员工信息。
2. 请编写SQL语句查询所有部门名称以"A"开头的部门信息。
数据库管理系统专升本试题详解数据库管理系统是现代计算机科学与技术中的关键领域之一。
对于专升本考生而言,精通数据库管理系统的理论和实践至关重要。
本文将详细解析数据库管理系统专升本试题,帮助考生更好地掌握相关知识和技能。
一、数据库基础1. 数据库的定义和特点数据库是指按照数据模型组织、存储和管理数据的集合。
它具有数据的持久化存储、数据的共享和数据的独立性等特点。
2. 数据库管理系统的作用数据库管理系统(DBMS)是一种用于管理数据库的软件系统。
它提供了数据定义、数据操纵、数据查询和数据控制等功能,是实现高效、安全和可靠数据管理的重要工具。
二、数据库设计与规范化1. 数据库设计步骤数据库设计是指根据用户需求和系统功能,将逻辑设计转化为物理设计的过程。
其步骤包括需求分析、概念设计、逻辑设计和物理设计。
2. 数据库规范化数据库规范化是指将一个不符合设计规范的数据库模式转化为若干个符合设计规范的数据库模式的过程。
常用的规范化形式有第一范式、第二范式和第三范式。
三、SQL语言1. SQL语言概述SQL(Structured Query Language)是一种用于管理关系数据库的语言。
它包括数据定义语言(DDL)、数据操纵语言(DML)、数据查询语言(DQL)和数据控制语言(DCL)等部分。
2. 常用SQL语句常用的SQL语句包括创建表(CREATE TABLE)、插入数据(INSERT INTO)、更新数据(UPDATE)、删除数据(DELETE FROM)、查询数据(SELECT)等。
四、数据库安全与备份恢复1. 数据库安全性管理数据库安全性管理是指采取措施保护数据库的完整性、机密性和可用性。
包括用户管理、权限控制、数据加密、审计和防火墙等。
2. 数据库备份与恢复数据库备份是指将数据库的副本存储在其他位置以防止数据丢失。
数据库恢复是指在数据库损坏或故障后,通过备份文件还原数据库到正常工作状态。
五、数据库性能优化1. 数据库性能优化的意义数据库性能优化是指通过改善数据库的设计、配置和操作来提高数据库的运行效率和响应速度。
2022年天津大学数据科学与大数据技术专业《数据库系统原理》科目期末试卷A(有答案)一、填空题1、数据仓库创建后,首先从______中抽取所需要的数据到数据准备区,在数据准备区中经过净化处理______,再加载到数据仓库中,最后根据用户的需求将数据发布到______。
2、在SQL语言中,为了数据库的安全性,设置了对数据的存取进行控制的语句,对用户授权使用____________语句,收回所授的权限使用____________语句。
3、“为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库设计中的______阶段。
4、完整性约束条件作用的对象有属性、______和______三种。
5、某在SQL Server 2000数据库中有两张表:商品表(商品号,商品名,商品类别,成本价)和销售表(商品号,销售时间,销售数量,销售单价)。
用户需统计指定年份每类商品的销售总数量和销售总利润,要求只列出销售总利润最多的前三类商品的商品类别、销售总数量和销售总利润。
为了完成该统计操作,请按要求将下面的存储过程补充完整。
6、SQL Server中数据完整性包括______、______和______。
7、如果多个事务依次执行,则称事务是执行______;如果利用分时的方法,同时处理多个事务,则称事务是执行______。
8、在SQL Server 2000中,数据页的大小是8KB。
某数据库表有1000行数据,每行需要5000字节空间,则此数据库表需要占用的数据页数为_____页。
9、数据库系统是利用存储在外存上其他地方的______来重建被破坏的数据库。
方法主要有两种:______和______。
10、关系模型由______________、______________和______________组成。
二、判断题11、投影操作是对关系表进行水平方向的分割。
()12、在SQL中,ALTERTABLE语句中MODIFY用于修改字段的类型和长度等,ADD用于添加新的字段。
数据库原理及应用专升本试卷(总分100分,考试时长90分钟)一、单项选择题(每小题2 分,共 40分)1、______是位于用户和操作系统之间的一层数据管理软件。
A、数据库B、数据库系统C、数据库应用系统D、数据库管理系统2、简单地说,分布式数据库的数据()A、逻辑上分散,物理上统一B、物理上分散,逻辑上统一C、逻辑上和物理上都统一D、逻辑上和物理上都分散3、子模式是()。
A、模式的副本B、模式的逻辑子集C、多个模式的集合D、以上三者4、人工管理阶段,计算机主要应用于A、数据集成B、过程控制C、故障恢复D、科学计算5、在“tEmployee” 表中,“姓名”字段的字段大小为10,在此列输人数据时,最多可以输人的汉字数和英文字符数分别是( )A、55B、5 10C、10 10D、10 206、phpMyadmin作为MySQL的一种图形化管理工具,其工作模式为______。
A、脚本方式B、B/S模式C、C/S模式D、命令行方式7、在SQL语句中,给用户授权的命令是()。
A、GRANTB、SETC、REVOKED、FROM8、如果希望employee表原有的列name非空,应该使用以下哪条语句?()A、Alter TABLE employee Alter name NOT NULL;B、Alter TABLE employee Drop name NOT NULL;C、Alter TABLE employee ADD name NOT NULL;D、Alter TABLE employee MODIFY name NOT NULL;9、以下()sql语句用来查看SGA信息。
A、SHOW SGAB、SHOW PARAMETER SGAC、LIST SGAD、SHOW CACHE10、数据库表中的主键具有________的特性。
A、唯一性且不能取空值B、能取空值C、NULLD、唯一性11、下列不属于关系语言的特点是( )。
2022年浙江工商大学数据科学与大数据技术专业《数据库系统原理》科目期末试卷A(有答案)一、填空题1、在一个关系R中,若每个数据项都是不可再分割的,那么R一定属于______。
2、在SQL语言中,为了数据库的安全性,设置了对数据的存取进行控制的语句,对用户授权使用____________语句,收回所授的权限使用____________语句。
3、数据库内的数据是______的,只要有业务发生,数据就会更新,而数据仓库则是______的历史数据,只能定期添加和刷新。
4、完整性约束条件作用的对象有属性、______和______三种。
5、对于非规范化的模式,经过转变为1NF,______,将1NF经过转变为2NF,______,将2NF 经过转变为3NF______。
6、数据仓库是______、______、______、______的数据集合,支持管理的决策过程。
7、视图是一个虚表,它是从______导出的表。
在数据库中,只存放视图的______,不存放视图对应的______。
8、有两种基本类型的锁,它们是______和______。
9、从外部视图到子模式的数据结构的转换是由______________实现;模式与子模式之间的映象是由______________实现;存储模式与数据物理组织之间的映象是由______________实现。
10、如图所示的关系R的候选码为;R中的函数依赖有;R属于范式。
一个关系R二、判断题11、连接是数据库最耗时的操作。
()12、在一个关系中,不同的列可以对应同一个域,但必须具有不同的列名。
()13、在SELECT语句中,需要对分组情况满足的条件进行判断时,应使用WHERE子句。
()14、在数据库恢复中,对已完成的事务进行撤销处理。
()15、可以用UNION将两个查询结果合并为一个查询结果。
()16、有了外模式/模式映象,可以保证数据和应用程序之间的物理独立性。
()17、视图是可以更新的。
数据库原理与应用专升本试题解析专升本考试对于数据库原理与应用的考察主要包括数据库基本概念、数据库管理系统、SQL语言以及数据库应用等方面的知识。
下面将对这些内容进行详细解析。
一、数据库基本概念数据库是指按照数据模型组织、描述和存储数据的集合。
它包括数据的组织、存储和管理等功能。
数据库中最基本的单位是表,表由行和列组成。
数据库中的数据可以进行增、删、改、查等操作。
数据库的基本概念还包括实体、属性和关系等。
实体是指现实世界中的独立存在的对象,比如一个学生、一本书等。
属性是实体的某个特征或者描述,比如学生有姓名、年龄等属性。
关系是不同实体之间的联系,有一对一、一对多和多对多等不同类型的关系。
二、数据库管理系统数据库管理系统(DBMS)是指用于管理和操作数据库的软件系统。
常用的数据库管理系统包括MySQL、Oracle、SQL Server等。
DBMS具有数据定义、数据操作、数据控制和数据查询等功能。
数据库管理系统中的核心语言为结构化查询语言SQL。
SQL语言可以用于创建表、插入数据、修改数据、查询数据以及删除数据等操作。
同时,SQL语言也支持数据查询的条件限制、数据排序和数据统计等功能。
三、SQL语言SQL(Structured Query Language)是关系数据库管理系统用于管理和操作数据库的标准语言。
SQL语言分为DDL(数据定义语言)、DML(数据操作语言)、DQL(数据查询语言)和DCL(数据控制语言)等不同类型。
DDL用于定义数据库表的结构,包括创建表、修改表结构、删除表等操作。
DML用于操作数据库表中的数据,包括插入数据、修改数据、删除数据等操作。
DQL用于查询数据库中的数据,比如SELECT语句用于查询满足条件的数据。
DCL用于控制数据库的访问权限,包括GRANT和REVOKE等操作。
四、数据库应用数据库在各行各业中都有广泛的应用,比如教育管理系统、人力资源管理系统、物流管理系统等。
专升本《数据库系统原理》 一、 (共 53 题,共 150 分) 1. 数据库管理系统 DBMS 中用来定义模式、内模式和外模式的语言是( )。 ( 2 分)
A.DML B.C C.DDL D.Basic
标准答案: C
2. 保证数据库系统正常工作的的核心软件是( )。 (2 分) A. 编译系统 B. 数据库 C.操作系统 D. 数据库管理系统 标准答案: D
3. 数据库( DB. 、数据库系统( DBS )和数据库管理系统( DBMS )三者之间的关系是( ) ( 2 分)
A.DBS 包括 DB 和 DBMS B.DBMS 包括 DB 和 DBS C.DB 包括 DBS 和 DBMS D.DBS 就是 DB ,也就是 DBMS 标准答案: A
4. 事务的原子性是指( ) ( 2 分)
A. 事务中包括的所有操作要么都做,要么都不做 B. 事务一旦提交,对数据库的改变是永久的 C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的 D.事务必须是使数据库从一个一致性状态变到另一个一致性状态 标准答案: A
5. 系统能把数据库从被破坏、不正确的状态,恢复到最近一个正确的状态, DBMS 的这种能力称为 ()(2分)
A. 完整性控制 B. 安全性控制 C. 可恢复性 D. 并发控制 标准答案: C
6. 有两个实体集,并且它们之间存在着一个 M:N 联系,那么按照 E— R 模型转换成关系数据库的规 则,这个 E — R 结构转换成表的个数为( )。(2分) A.1 B.2 C.3 D.4 标准答案: C
7. 把 E-R 图转换为关系模型的过程,属于数据库设计的( )(2分) A. 概念设计 B. 逻辑设计 C.需求分析 D. 物理设计 标准答案: B
8. 若用如下的 SQL 语句创建一个 student 表 : 可以插入
到 student 表中的记录是( )。 ( 2 分)
A.(,1031? , ,曾华 ?,男, 23) B.(,1031? , ,曾华 ?, NULL , NULL) C.(NULL , ,曾华 ?, ,男 ?, ,23?)
C.(,1031? ,NULL , ,男 ?, 23) 标准答案: B
9. SQL 语言中,删除一个视图的命令是( )。 ( 2 分)
A.DELETE B.DROP C.CLEAR D.REMOVE 标准答案: B
10. 在 SQL 语言中的视图 VIEW 是数据库的( )。 ( 2 分)
A. 外模式 B. 模式 C. 内模式 D. 存储模式 标准答案: A
11. ( )构成了关系模型的三要素。 ( 3 分)
A. 三级模式 B. 关系数据结构 C.专门的关系操作和传统的集合操作 D.关系的三类完整性约束条件 标准答案: B,C,D
12. 如果不进行控制,事务的 ACID 特性可能在( )情况下遭到破坏。 (3 分) A. 多个事务并发执行 B. 多个事务顺序执行 C.事务在运行过程中强行终止 D. 事务运行一半被撤销。 标准答案: A,C
13. 下列 SQL 命令中属于数据控制的有( )。 (3 分) A.SELECT B.UPDATE C.GRANT D.REVOKE 标准答案: C,D
14. 数据库领域中常用的数据模型有( )。 (3 分) A. 层次模型 B. 网状模型 C.关系模型 D. 面向对象模型 标准答案: A,B,C,D
15. 现有关系模式 : EMP(empno , ename, mgr , sal, workday) , DEPT(deptno ,dname, loC. 在
视图中,不可能更新的视图为 ()。(3分) A. 视图 V1 ,由 1970 年以后参加工作的雇员组成 B. 视图 V2 ,由部门号和各部门的平均工资组成 C.视图 V3 ,由雇员姓名和其领导者姓名组成 D.视图 V4 ,由薪金超出所有雇员平均薪金以上的雇员组成 标准答案: B,D
16. 简述数据库系统的三级模式两级映象结构?这种结构的优势何在? (5 分) 标准答案:数据库系统的三级模式结构是指外模式,模式和内模式。两级映象是指外模式 象,模式 /内模式映象。三级模式两级映像结构是数据库实现数据独立性的关键,包括逻辑独立性 和物理独立性。 数据逻辑独立性是指局部逻辑数据结构 (外模式即用户视图 )与全局逻辑数据结构 ( 模式 )之间性。当数据库的全局逻辑数据结构 (模式 ) 发生变化 (数据定义的修改、数据之间联系的变更或增的数据类型等 )时,它不影响某些局部的逻辑结构的性质,应用程序不必修改。 物理数据独立性是指数据的存储结构与存取方法 (内模式 )改变时,对数据库的全局逻辑结构 和应用程序不必作修改的一种特性,也就是说,数据库数据的存储结构与存取方法独立与之上的应 用程序和模式。 数据库系统的三级模式之间存在二级映象,外模式 /模式映象,模式 /内模式映象,这两层映象了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。
17. 什么是数据的安全性?数据库常用的安全性控制方法有哪些? (5 分) 1 第1页共 4页 标准答案:数据库的安全性是指保护数据库 ,防止因用户非法使用数据库造成数据泄露、更改或破坏。这包含两层含义 :一是防止非法的用户使用、更改甚至破坏数据库中的数据;其二是防止合法的用户使用、更改或破坏超过其权限范围内的数据。 数据库安全控制常用的方法有 :用户识别;存取控制;定义视图;审计;数据加密。
18. 并发控制的主要技术是封锁,什么是封锁? ( 5 分)
标准答案:锁是 DBMS 为数据库中数据添加的一种标志信息。所谓封锁就是事务 T 在对某个数据
对象例如表,记录等操作之前,先向系统发出请求,对其加锁的过程。加锁后事务 T 就对该数据对 象有了一定的控制,在事务 T 释放它的锁之前,其他的事务不能更新此数据对象。封锁协议是指系 统中的每一个事务都必须遵从的关于何时对数据项加何种锁,何时解锁的一组规则。
19. 在概念设计中将现实世界中客观存在的事物称为( ) ( 2 分)
A. 实体 B. 记录 C.对象 D. 结点
标准答案: A
20. 已知在一个工厂中有多个车间,每一个车间有多名职工,工厂的产品要经过多个车间的多道工序加工。具体来说,一个产品要经过多个工人加工,一位工人要加工多个产品。工厂与车间之间属 于一对多联系,车间与工人之间属于一对多联系,工人与产品之间属于( )联系。 ( 2 分)
A. 一对多 B. 一对一 C. 未知 D. 多对多
标准答案: D
21. ( )是存储在计算机内的有结构的数据集合。 (2分) A. 网络系统 B. 数据库系统 C.操作系统 D. 数据库 标准答案: D
22. 如果有两个事务,同时对数据库中同一数据进行操作,不会引起冲突的操作是( )(2分) A. 其中有一个是 DELETE
B. 一个是 SELECT ,另一个是 UPDATE C.两个都是 SELECT D.两个都是 UPDATE 标准答案: C
23. 表达用户使用观点的数据库局部逻辑结构的在三级模式结构中是( )(2分) A. 概念模式 B. 模式 C.外模式 D. 内模式 标准答案: C
24. 若关系模式 R∈ 3NF ,则下面最正确的说法是( )(2分) A. 某个主属性不传递依赖于码 B. 某个非主属性不部分依赖于码 C.所有的非主属性都不传递依赖于码 D.所有的非主属性都不部分依赖于码 标准答案: C 25. 在关系数据库系统中,为了简化用户的查询操作,而又不增加数据的存储空间,常用的方法是创建( ) (2 分) A. 另一个表 B. 视图 C.索引 D. 模式 标准答案: B 26. 事务的隔离性是指( ) ( 2 分) A. 事务中包括的所有操作要么都做,要么都不做 B. 事务一旦提交,对数据库的改变是永久的 C.一个事务内部的操作及使用的数据对并发的其他事务是无关的 D.事务必须是使数据库从一个一致性状态变到另一个一致性状态标准答案: C 27. 若要在基本表 S 中增加一列 CN (课程名),可用( )。 ( 2 分) A.ADD TABLE S ( CN CHAR (8)) B.ADD TABLES ALTER ( CNCHAR (8)) C.ALTER TABLE S ADD ( CN CHAR (8)) D.ALTER TABLE S ( ADD CN CHAR (8))标准答案: C 28. 设关系数据库中一个表S 的结构为 S( SN, CN , grade),其中 SN 为学生名, CN 为课程名 二者均为字符型; grade 为成绩,数值型,取值范围 0- 100 。若要把 “张二的化学成绩 80 分 中,则可用( )命令。 ( 2 分) A.ADD INTO S VALUES ( ?张二 ?, ?化学 ?, ?80?) B.INSERT INTO S VALUES ( ?张二 ?, ?化学 ?, ?80?) C.ADD INTO S VALUES ( ?张二 ?, ?化学 ?, 80) D.INSERT INTO S VALUES ( ?张二 ?, ?化学 ?, 80) 标准答案: D 29. SQL 语言具有( )等功能。 ( 4 分) A. 数据操纵 B. 数据定义 C. 数据控制 D. 关系规范化 标准答案: A,B,C 30. 下面列出的条目中,哪些是数据库技术的主要特点( )(4分) A. 数据共享度高 B. 数据的冗余小 C.较高的数据独立性 D. 数据的安全性高 标准答案: A,B,C,D 31. 在以下各条叙述中,正确的叙述有( )(4分) A. 数据库避免了一切数据冗余 B. 数据库减少了数据冗余 C.数据库中,如果逻辑模式改变,则需将与其有关的外模式做相应改变,否则应用程序需改写D.数据库中的内模式如有改变,逻辑模式可以不变标准答案: B,D 32. 三级模式间存在两种映射,它们是( ) ( 4 分) A. 外模式与内模式间的映射 B. 模式与用户间的映射
C.模式与外模式间的映射 D. 模式与内模式间的映射 标准答案: C,D
33. 简述数据库系统由哪几部分组成?( 5 分) 标准答案:数据库系统一般由数据库、数据库管理系统、应用系统、数据库管理员、系统分析员、应用程序员和终端用户等部分组成。
34. 简述数据库系统所具有的数据与程序的独立性? (5分) 标准答案:数据与程序的独立性简称为数据独立性,包括逻辑独立性和物理独立性。 数据逻辑独立性是指局部逻辑数据结构 (外模式即用户视图 )与全局逻辑数据结构 ( 模式 )之间