版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《数据库应用技术》作业及答案第一章思考与练习题一、选择题1.三级模式间存在两种映射,它们是(C)。A.模式与子模式间,模式与内模式间B.子模式与内模式间,外模式与内模式间C.外模式与模式间,模式与内模式间D.模式与内模式间,模式与模式间2.SQLServer系统中的所有系统级信息存储于哪个数据库(A)。A.masterB.modelC.tempdbD.msdb3.下面关于tempdb数据库描述不对的的是(D)。A.是一个临时数据库B.属于全局资源C.没有权限限制D.是用户建立新数据库的模板4.在数据库技术中,面向对象数据模型是一种(B)。A.概念模型B.结构模型C.物理模型D.形象模型5.数据库管理系统常见的数据模型有(B)。A.网状、关系和语义B.层次、关系和网状C.环状、层次和关系D.网状、链状和层次6.用户看到的数据表,属于数据库系统三级模式中的(D)。A.外模式B.内模式C.子模式D.模式7.对数据的插入属于数据库管理系统(B)的功能。A.数据定义B.数据操纵C.数据库的运营管理D.数据库的建立和维护8.保持数据的完整性属于数据库管理系统(C)的功能。A.数据定义B.数据操纵C.数据库的运营管理D.数据库的建立和维护9.在SQLServer数据库中,默认情况下Sys通常是(C)。A.数据文献的后缀B.事务日记文献的后缀C.系统表表名的前缀D.辅助文献的后缀二、填空题1.计算机数据解决技术大体经历了(人工管理)、(文献管理)、(数据库管理)等不同的发展阶段。2.数据库系统由(外模式)、(模式)和(内模式)三级抽象模式构成。3.数据库管理系统的重要功能涉及(数据定义)、(数据操纵)、(数据库的运营管理)、(数据库的建立和维护)。4.关系模型由三部分组成(数据结构)、(关系操作集合)和(关系的完整性)。5.SQLServer提供了大量易用的管理工具,比较常用的重要有(服务管理器)、(公司管理器)和(查询分析器)。6.数据文献的后缀是(mdf)。7.事务日记文献的后缀是(ldf)。8.SQLServer数据库分为(系统数据库)和(用户数据库)两种类型。三、简答题1.什么是数据和数据解决?数据与信息的区别联系是什么?参考答案:数据(Data)是一组表达数量、行动和目的的非随机的可鉴别的符号。数据解决通常涉及查找、记录、分类、修改、计算、汇总等各种方法。数据(Data)是一组表达数量、行动和目的的非随机的可鉴别的符号。信息(Information)是通过加工的,能对接受者的行为和决策产生影响的、有价值的数据。假如将数据比方为原料,那么信息就是数据通过加工而生产的产品,是有价值的数据。与原料和产品的概念相似,一个系统的产品也许是另一个系统的原料,那么一个系统的信息也许成为另一个系统的数据。2.数据库、数据库管理系统、数据库系统之间到底是什么关系?参考答案:数据库就是各种相关数据的集合和容器。数据库所保存的数据是指长期储存在计算机内、有组织的、可共享的数据集合。数据库中的数据必须按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可以被一定范围内的各种用户共享。数据库管理系统是对数据库进行管理的系统软件,位于用户和操作系统之间,为用户或应用程序提供访问数据库的方法和工具。广义上,数据库系统就是采用了数据库技术的计算机系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。狭义上讲,数据库系统重要指数据库和数据库管理系统,由于这两者在应用中的互相依赖性,所以在一般不引起混淆的情况下经常把数据库系统简称为数据库。3.请描述一下SQLServer数据库的存储结构。参考答案:SQLServer数据库的存储结构涉及物理存储结构和逻辑存储结构两个层面。在物理层面上,SQLServer数据库是由两个操作系统文献组成的,即数据文献和事务日记文献,它们的后缀分别是MDF和LDF。数据文献重要用于存储数据,事务日记文献重要用于存储数据库的更新情况等事务日记信息。在逻辑层次上,数据库是由表、视图、存储过程等一系列数据对象组成的。当采用SQLServer公司管理器将上述数据库文献“打开”后,就能看到数据库的逻辑结构了,如图XXX所示。数据库中的数据分别存储在几个不同的对象中,而这些对象是用户在操作数据库时,实际可以看到和接触到的,属于逻辑存储结构。常用的数据库对象重要涉及:表(Table)、索引(Index)、视图(Views)、触发器(Triggers)、存储过程(StoreProcedures)、缺省(Default)、约束(Constraints)、用户(Users)以及图表(Diagram)和用户自定义的数据类型等。在以后的章节中,我们将逐步学习这些对象的使用方法。4.简述关系模型的组成。参考答案:系模型是目前最重要的一种数据模型。关系数据库系统采用关系模型作为数据的组织方式。关系模型由三部分组成:数据结构、关系操作集合和关系的完整性。数据结构是指在关系模型中,无论是数据还是数据之间的联系都是以二维表(关系)这一种简朴的结构表达的,这即符合人们使用数据的习惯,同时也便于计算机实现。关系操作是指关系代数(或等价的关系演算)中并、交、差、选择、投影、连接等。关系模型给出了关系操作的能力和特点,但不对DBMS的语言给出具体的语法规定。关系语言的特点是高度的非过程化。其操作方式的特点是集合操作,即操作的对象和结果是集合,称为一次一集合的方式,而不是一次一个记录的方式。关系完整性涉及实体完整性、参照完整性和用户自己定义的完整性。实体完整性是保证数据库中记录的惟一性,即每个记录的主键不能为空值,也不能与其他记录的主键相同。参照完整性是保证表与表之间语意上的完整性,即当一个表引用在另一个表中定义的实体时,要保证这个实体的有效性。这两种完整性是关系模型必须满足的约束条件,应当由关系系统自动支持。而用户自定义完整性反映了用户的规定,是用户自行定义的。第二章思考与练习题一、选择题1.下述关于索引的描述,对的的是(B)。A.撤消索引会同时撤消数据库中与之相关的内容B.建立索引后,会影响基本表的插入速度C.基本表的记录数量越多,越不应当建立索引D.基本表的记录越长,越不应当建立索引2.下述关于视图的描述,对的的是(C)。A.视图仅由一个基本表导出B.执行视图比在客户端直接执行SELECT语句的速度要慢C.在SQLServer中,可以像基本表同样对视图进行查询操作D.视图存储在客户端的数据库中3.假如希望从学生表中查询出所有姓“张”的同学,那么条件语句应当是(B)。A.Where姓名%‘张’B.Where姓名LIKE‘张%’C.Where姓名%‘LIKE张’D.Where姓名LIKE‘张’4.下列SQL语句中,可以完毕求某列最大值的是(B)。A.SELECTAVG(Age)FROMStudentB.SELECTMAX(Age)FROMStudentC.SELECTMIN(Age)FROMStudentD.SELECTCOUNT(*)FROMStudent二、填空题1.SQL数据定义语言的重要作用是创建存储数据的结构,而数据操纵语言的重要作用则是向数据库中填写数据,具体涉及增长、删除、修改等操作。2.当需要对查询结果进行排序时,可以指定其排序方式,字段后使用ASC表达升序,DESC表达降序。三、简答题1、什么是SQL,请简要说明它的组成和特点。参考答案:结构化查询语言,StructuredQueryLanguage,简称SQL,是关系数据库的标准语言。SQL语言共分为四大类:数据定义语言,数据查询语言,数据操纵语言,数据控制语言。它的特点涉及:非过程化语言,统一的语言,是所有关系数据库的公共语言。2、索引的作用是什么?SQLServer有哪几类索引,各自的特点是什么?参考答案:索引(Index)提供了一种快速访问数据的途径,索引是在基本表的列上建立的一种数据加对象,索引是为了加速查询速度而创建的。实际的索引通常是这两大类5种方式的组合。(1)单列索引:对基本表的某一单独的列进行索引,是最简朴和最常用的索引类型,通常情况下,应对每个基本表的主关键字建立单列索引。(2)惟一索引:一旦在一个或多个列上建立了惟一索引,则不允许在表中相应的列上插入任何相同的取值。使用惟一索引不仅能提高查询性能,还可以维护数据的完整性。(3)复合索引:是针对基本表中两个或两个以上列建立的索引。(4)聚集索引:会改变基本表中记录的物理存储顺序。即表中记录的物理排序顺序不再按插入的先后排列,而是根据索引列重新排序。(5)非聚集索引:表中记录的物理顺序与索引顺序不同,表中的记录仍按实际插入的先后顺序排列,不按索引列排序。3、什么是基本表?什么是视图?视图有什么特点?在什么情况下需要创建视图?参考答案:表是一个由行、列组成的二维结构,通常把行称做记录,把列称为字段。视图是由查询数据库表产生的,它其实是一个虚拟的表,它限制了用户能看到和修改的数据。视图的特点是在基本表或其他视图上建立的表,它的结构和内容都来自某个基本表,是依据基本表存在而存在的。删除一个视图时,不会对基本表产生任何影响,但当删除一张基本表时,与之相关联的视图就会自动被删除。假如要限制用户可以看到的数据库中的信息,可以使用视图。4、谓词LIKE的作用是什么?参考答案:拟定给定的字符串是否与指定的模式匹配。模式可以包含常规字符和通配符字符。模式匹配过程中,常规字符必须与字符串中指定的字符完全匹配。5、假如创建一个数据库其SQL语句是什么?参考答案:CREATEDATABASE数据库名称6、存储过程的含义是什么?创建存储过程的SQL语句是什么?参考答案:存储过程(StoredProcedure)是一组预先编译好的,以一种可执行的形式永久地存储在数据中的SQL代码,在master数据库中存储了一些SQLServer事先定义好的系统存储过程,通常以sp_xxxx做为存储过程的名字。当用户创建数据库时,也会自动生成一些事先定义好的存储过程,通常以dt_xxxx做为名字。创建存储过程的SQL语句是:(1)语句格式:CREATEPROC[EDURE]<存储过程名>AS<SQL语句>(2)语句功能:创建一个存储过程,<SQL语句>多数是指运用SQLServer的Transact-SQL编写的程序。7、什么是事务?举例说明事务解决的作用是什么?参考答案:事务(Transaction)是并发控制的基本单位,它反映了现实世界中需要以一个完整的单位提交的一项工作。SQLServer通过事务机制,将逻辑相关的一组操作捆绑在一起,以便服务器保持数据的完整性。它是SQL复杂程序设计必不可少的内容。事务需要用户根据实际业务规则定义,有一定的难度,但其原理比较简朴。举例说,假如我们正在使用UPDATE语句同时对学生表、成绩表中的学号”20230001”改为”20230001”。这个任务需要两条UPDATE语句组成,即:UPDATE学生表SET学号=’20230001’WHERE学号=’20230001’UPDATE成绩表SET学号=’20230001’WHERE学号=’20230001’假如在执行完第一个语句后,计算机忽然断电,而第二条语句还没来得急执行,数据出现了不一致怎么办?这时候就需要用到SQL的事务控制功能了。假如使用了SQLServer的事务控制机制,以上两个问题均可获得很了的解决。在使用事务的情况下,SQLServer可以保证,要么所有的记录要么所有解决,要么一行也不解决。假如修改了所有记录的一半时服务器犯错了,SQLServer会返回到以前未执行UPDATE操作前的位置,清除它已经修改过的数据,这就是事务解决的作用。8、SQLServer有哪些数据类型,它们的重要用途是什么?参考答案:SQLServer提供了数值型、字符型、日期型、二进制型、位型、双字节型等6大类数据类型。数据类型是数据的一种属性,表达数据所表达信息的类型。任何一种计算机语言都定义了自己的数据类型。9、假设某教学管理数据库有以下三张表,请写出下列问题的SQL语句:学生(学号,姓名,年龄,性别)课程(课程号,课程名,任课教师)成绩(学号,课程号,成绩)(1)如何在SQLServer上创建这三张表;参考答案:学生表:createtable学生表(学号char(8)primaryKey,姓名char(8),年龄int,性别bit)课程表:createtable课程表(课程号char(7)primaryKey,课程名char(20),任课教师char(8))成绩表:createtable成绩表(学号char(8),课程号char(7),成绩Numeric(4,2))(2)查询刘峰教师所授课程号,课程名;参考答案:Select课程号,课程名from课程表where任课教师=’刘峰’(3)查询年龄大于20岁的所有男同学的学号、姓名;参考答案:Select学号,姓名from学生表where性别=1and年龄>20(4)查询至少选修了两门课程(含两门)的学生学号;参考答案:select学号from成绩groupby学号havingcount(学号)>=2(5)查询王文芳同学选修的所有课程的课程号;参考答案:Select课程号from成绩表,学生表Where学生表.姓名=’王文芳’and学生表.学号=成绩表.学号(6)查询王文芳同学不学的课程的课程号;参考答案:select课程号from成绩表where课程号notin(select课程号from学生表,成绩表where学生表.姓名="王文芳"and学生表.学号=成绩表.学号)(7)查询所有上刘峰老师课程的学生学号;参考答案:Select学号from成绩表,课程表,学生表Where课程表.任课教师="刘世峰"and课程表.课程号=成绩表.课程号and课程表.学号=成绩表.学号(8)查询所有选修“数据库原理”的学生的学号;参考答案:Select学号from成绩表,课程表where课程表.课程名="数据库技术"and课程表.课程号=成绩表.课程号(9)向学生表中插入一条记录(’2023001’,’吴红’,21,’女’);(1表达女,0表达男)参考答案:insertinto学生表values("2023001","吴红","21",1)(10)删除三张表中所有学号为20230231的学生信息;参考答案:Deletefrom学生表where学号=’>20230231’Deletefrom学生表where学号=’20230231’(11)把学号为20230002的学生的年龄改为22岁;参考答案:Update学生表set年龄=’22’where学号=’20230002’第三章思考与练习题一、选择题1.设一个关系为R,假如它的每个属性都是不可再分的,则称这个关系是符合(A)。A、第一范式B、第二范式C、第三范式D、BNC范式2.在第一个关系中出现,在第二个关系中不出现的记录组成的关系称为两个关系的(C)。A、交B、并C、差D、笛卡儿积二、简答题1.设关系模式R有N个属性,在模式R上也许成立的函数依赖有多少个?参考答案:函数依赖有N×(N-1)个2.设有关系模式R(职工号,职工名,项目号,项目名,工资),假设一个职工可参与多个项目,在每个项目中各领一份工资。那么请回答以下问题:(1)请写出这个关系模式的函数依赖和主关键字;函数依赖涉及:职工号→职工名,项目号→项目名,(职工号,项目号)→工资主键为(职工号,项目号)(2)这个关系符合第几范式,为什么?这个关系符合第一范式,由于它的每个属性都不可再分。(3)请举例说明,这个关系存在哪些问题;这个关系没有达成第二范式,也许出现数据冗余和操作异常。例如,某个职工参与了多个项目的工作,他的职工号、职工名会反复多次存储。同样,假如一个项目有多名职工参与,项目号和项目名也会反复我次存储。此外,假如现在增长了一个新的项目,但暂时还没有安排职工参与,那么由于主键是(职工号,项目号),这个项目的信息也许无法插入。(4)请把这个关系模式分解成3NF,并说明理由。修改后的各个关系如下:职工关系=(职工号,职工名)项目关系=(项目号,项目名)职工选择项目关系=(职工号,项目号,工资)(注:此处的工资是指职工参与某个项目得到的劳动报酬)3.关系完整性的重要内容是什么?为什么要保证关系的完整性?参考答案:关系完整性就是关系模型中数据的对的性、一致性和有效性。关系完整性又涉及实体完整性、参照完整性和用户定义的完整性三个方面。只有保证了关系的完整性,才干使数据库中的数据对的、一致和有效。4.SQLServer中进行关系完整性的重要方法是什么,请写出相应的SQL语句。参考答案:1)SQLServer通过约束机制来实现数据库完整性保护。重要涉及:PrimaryKey约束、ForeignKey约束、Default约束、Unique约束、Check约束等。PrimaryKey约束:学号char(8)NOTNULLPRIMARYKEY(学号)ForeignKey约束:学号char(8)NOTNULLREFERENCES学生表(学号)Default约束:成绩numeric(9,2)DEFAULT0.00Unique约束:学号char(8)NOTNULLUNIOQUE(学号)Check约束:年龄intCHECK(年龄)17and年龄<25)2)使用规则实行数据的完整性。创建规则的语法结构如下:CREATERULE规则名AS条件表达式3)使用默认实行数据完整性管理。创建默认的语法如下:CREATEDEFAULT默认名AS默认值5.为什么要进行规范化?规范化的相关理论是什么?请简要说明。参考答案:为保证数据库设计的对的性,在数据库逻辑设计阶段,常使用关系规范化理论来指导关系型数据库的设计。其基本思想是,每个关系都应满足一定的规范,才干使关系模式设计合理,达成减少冗余,提高查询效率的目的。一个好的数据库关系,应当没有数据冗余、更新异常、插入异常、删除异常问题的存在,这就必须进行规范化解决。规范化使用的理论是函数依赖。6.什么是一个“好”的关系模式,一个“不好”的关系模式有什么缺陷?参考答案:“好”的关系模式通常是指符合第三范式规定的关系,“不好”的关系模式会存在数据冗余、更新异常、插入异常、删除异常等问题。7.请写出一个符合第三范式的关系模式,并说明理由。参考答案:学生=(学生号,姓名,性别,专业)课程=(学生号,课程号,成绩)选课=(课程号,课程名,课程学分)第四章思考与练习题一、填空题1.数据库设计一般涉及需求分析、概念设计、逻辑设计、物理设计、数据库实行和运营维护等阶段。2.数据库应用系统的建设涉及结构设计和行为设计两个方面。3.数据库设计的重要原则涉及表设计原则、字段设计原则和其他原则。4.E-R图的设计关键在于对实体、联系的选择和表达。5.物理设计的重要内容涉及存储记录的格式设计、存储方法设计、访问方法设计以及完整性和安全性考虑。二、简答题1.请简要说明数据库应用系统设计的环节。参考答案:数据库应用系统设计的环节涉及需求分析、概念设计、逻辑设计和物理设计。2.数据库设计的目的是什么,请谈谈你的理解。参考答案:数据库设计指的是设计数据库及其应用系统的技术,是指对于一个给定的应用环境,涉及硬件环境和操作系统、数据库管理系统(DBMS)等软件环境,如何使用这个环境来表达用户的规定,构造最优的数据库模式,建立数据库及围绕数据库展开的应用系统,使之可以有效地收集、存储、操作和管理数据,满足公司组织中各类用户的应用需求(信息需求和解决需求)。3.基本表设计的重要原则是什么,坚持这些原则有什么好处?参考答案:基本表设计最重要的原则是关系规范化,尽也许达成第三范式。规范化有助于消除数据库中的数据冗余,减少更新异常。规范化有好几种形式,但第三范式通常被认为在性能、扩展性和数据完整性方面达成了最佳平衡。简朴来说,遵守第三范式标准的数据库的表设计原则是:“OneFactinOnePlace”(一个事实相应一个地方),即某个表只涉及其自身基本的属性,当不是它们自身所具有的属性时需进行分解。表之间的关系通过外键相连接。4.进行SQLServer数据库设计时,一般有哪些命名规则?参考答案:一方面,命名的长度应尽量充足。假设某公司现有职工在一千人以内,假如用数字表达职工号的话,职工号的长度为3位即可,它最大可以表达999个职工。但是,假如考虑到公司未来的发展,那么职工号最佳设为4位,当公司职工数目突破千人时,主线无需重构整个数据库。另一方面,小心保存词。要保证字段名没有与SQL等保存词或者常用访问方法名发生冲突。最后,慎用使用触发器。触发器在保证数据完整性方面发挥着积极作用,但它同时也会带来效率方面的问题,因此要慎用。触发器的功能通常可以用其他方式实现。5.什么是数据流程图,数据字典的重要作用是什么,谈谈你的理解。参考答案:数据流图(DataFlowDiagram,简记DFD),是在业务流程分析基础上,描述实际数据流动和加工过程的图形表达法,它一般有4种符号,即外部实体、数据流、加工和存储。外部实体数据的来源和去向;数据流用带箭头的连线表达,反映数据的流动方向;加工用椭圆、圆或方框代表(本教材运用圆形表达加工),表达对数据的加工解决动作;存储表达数据的存档情况。数据字典(DataDictionary,简记DD),是对数据流程图中数据流和存储结构的描述。在数据库应用系统设计中,数据字典是表、视图设计的重要依据。6.什么是E-R图,它的作用是什么?参考答案:E-R图是E-R(实体-关系)方法的重要组成部分。E-R方法是描述概念模型的有力工具。E-R图方法是一种有效的信息抽象方法。在E-R图中,用长方形表达实体,用椭圆形表达属性,用菱形表达联系。在图形内标记它们的名字,它们之间用无向线段相连,表达联系的线段上标明是哪种联系。它的作用是采用E-R图模型将现实世界的信息结构统一用实体、属性以及实体之间的联系来描述。7.简要说明需求分析阶段的重要任务和目的。参考答案:需求分析阶段的重要目的是回答“干什么”的问题。需要从多方面对拟开发数据库应用系统的企事业单位进行调查,收集和分析各项应用对信息和解决两方面的需求。了解和掌握数据库应用系统开发对象(或称用户)的工作业务流程和每个岗位、每个环节的职责,了解和掌握信息从开始产生或建立,到最后输出、存档或消亡所通过的传递和转换过程,了解和掌握各种人员在整个系统活动过程中的作用;通过同用户充足地交流和沟通,决定那些工作应由计算机来做,哪些工作仍由手工来做,决定各种人员对信息和解决各有什么规定,对视屏操作界面和报表输出格式各有什么规定,对数据(信息)的安全性(保密性)和完整性各有什么规定等等。需求分析阶段的重要工作就是,通过调查从用户处获得对数据库的下列需求。信息需求:用户将从数据库中获得的信息的内容和性质,有信息规定导出数据规定,即在数据库中存储哪些数据。解决需求:用户要完毕什么解决功能,对某种解决的执行频度、用户规定的响应时间,以及解决的方式是联机解决还是批解决等。安全性和完整性的约束第五章思考与练习题一、简答题1.请简要说明数据库安全机制?参考答案:一个用户访问SQLServer必须要通过4个层次的安全控制,操作系统的安全性;服务器的安全性;数据库的安全性;表和列的安全性。从上述流程可以看出,用户使用SQLServer时,需要通过两个安全性阶段:身份验证和权限认证。身份验证阶段系统只检查用户是否有连接SQLServer实例的权力,假如身份验证通过了,只表达用户可以连接SQLServer实例,否则系统将拒绝用户的连接。然后需要检查用户是否有访问服务器上数据库的权限,为此需要授予每个数据库中映射到用户登录的账号访问权限,权限认证就可以控制用户在数据库中进行的操作。2.登录账号和用户账号的含义是什么?它们有什么区别联系?参考答案:登录账号用于身份验证,使得用户到达登录到SQLServer服务器,属于服务器层面,相称于大门的钥匙;用户账号用于权限验证,属于数据库层面,相称于自己房间的钥匙。用户账号在定义时便与一个登录账号相关联,即任何一个用户账号背后都有一个登录账号。3.请简要说明使用公司管理创建登录账号和用户账号的过程。参考答案:(1)在SQLServer的公司管理器下,展开“SQLServer组”文献夹,找到需要建立登录账号的服务器并展开其文献夹,再展开“安全性”文献夹,在“登录”选项上右击鼠标,在出现的快捷菜单中单击“新建登录”菜单命令,打开“SQLServer登录属性->新建登录”对话框。(2)SQLServer支持“Windows身份验证”和单击“SQLServer身份验证”两种认证模式。选择“SQLServer身份验证”单选钮,在“名称”文本框中输入要创建的登录账号名称,例如“mysa”,在“身份验证”选项组中,并输入密码。(3)设立完毕后,单击“拟定”按钮,即可完毕登录账号的创建。接下来,开始创建用户账号,基本方法是:(1)在公司管理器中,展开SQLServer组及其服务器,在“数据库”文献夹中,展开某一数据库,例如“进销存”的文献夹,然后在“用户”选项上右击,在弹出的快捷菜单中选择“新建数据库用户”命令,打开新建用户对话框。(2)单击“登录名”下拉列表框右端的下拉箭头,会看到刚刚创建的“mysa”登录帐号。选择“mysa”登录账号,此时“用户名”文本框中自动显示为“mysa”。可以更改“用户名”文本框中的用户名,也可以在“数据库角色成员”列表框中选择新建用户应当属于的数据库角色。(3)设立完毕后,单击“拟定”按钮,即可在“进销存”数据库中创建一个新的用户账号。假如不想创建用户账号,单击“取消”按钮即可。4.如何对用户账号进行授权管理,一般有哪些权限,请简要说明。参考答案:(1)展开服务器组,然后展开服务器;展开“数据库”项,然后找到相关的数据库,比如“进销存”;(2)展开“进销存”数据库,根据对象类型,单击表、视图、存储过程等对象,找到需要进行授权管理的数据库对象,比如“物资台账”表。(3)右击授予权限所在的对象,从弹出菜单中选择“所有任务->管理权限”选项;单击“列出所有用户/用户定义的数据库角色/public”选项,然后选择授予每位用户的权限。其中,选中标记表达授予权限。进一步,通过本界面可完毕列级的授权管理。此外,也可以采用GRANT(授予权限)、DENY(拒绝权限)和REVOKE(撤消权限)等SQL语句完毕授权管理。5.为什么要进行数据备份?数据库备份涉及哪些重要内容?参考答案:任何系统都不可避免会出现各种形式的故障,而某些故障也许会导致数据库劫难性的损坏,所以做好数据库的备份工作极为重要。备份可以创建在磁盘、磁带等备份设备上,与备份相应的是还原。数据库备份就是在某种介质上(磁带、磁盘等)存储数据库(或者其中一部分)的拷贝的过程。更严格意义上讲,备份应当是一种把数据从硬盘上复制到其他可移动介质上的操作过程。一个完整的备份通常要涉及三部分内容,即系统数据库、用户数据库和事务日记。6.什么是备份设备,请谈一谈SQLServer中创建备份设备的重要环节和方法。参考答案:备份设备是用来存储数据库、事务日记或文献和文献组备份的存储介质。SQLServer支持3种备份设备,即磁盘设备、磁带设备和命名管道设备。在SQLServer中,可以采用两种方法创建备份设备,一是运用公司管理器;二是使用系统存储过程sp_addumpdevice。其环节如下:在公司管理器中展开服务器组,展开指定的服务器,展开“管理”文献夹,右击“备份”,在弹出的快捷菜单中选择“新建备份设备”选项,打开“备份设备属性-新设备”对话框。在“名称”文本框中输入逻辑设备的名称,在下面选择磁带或者磁盘备份设备,并设立物理位置。当使用磁盘时,SQLServer允许将本地主机硬盘和远程主机上的硬盘作为备份设备,备份设备在硬盘中是以文献的方式存储的。完毕后,单击“拟定”按钮即可。缺省情况下,备份设备的全途径为“C:\ProgramFiles\MicrosoftSQLServer\MSSQL\BACKUP\进销存数据库备份.BAK”,备份设备文献名为“进销存数据库备份.BAK”,缺省途径为SQLServer安装目录的BACKUP文献夹。7.事务日记文献有什么用途?是否也需要备份?为什么?参考答案:SQLServer数据库是由两个操作系统文献组成的,即数据文献和事务日记文献。事务日记文献重要用于存储数据库的更新情况等事务日记信息。事务日记文献非常重要,所有对数据库的更改操作都会记录于此,当数据库损坏时,数据库管理员可使用事务日记恢复数据库。从事务日记文献的作用上可以看出,它是非常有用和重要的,因此也需要备份。8.请按以下操作练习一下数据库备份操作,并体会一下数据库备份的的效果。(1)创建一个数据库;(2)使用CREATETABLE语句在数据库中创建一张表;(3)使用INSERT语句向表中插入若干条数据;(4)进入公司管理器,对数据库进行备份操作;(5)使用DROPTABLE语句删除已创建的表;(6)使用公司管理器,对数据库进行还原操作。参考答案:CREATEDATABASE学生库学生表:createtable学生(学号char(8)primaryKey,姓名char(8),年龄int,性别bit)insertinto学生values("2023001","王丽","19",1)insertinto学生values("2023002","张华","20",0)insertinto学生values("2023003","李敏","19",1)DROPTABLE学生第六章思考与练习题一、简答题1.什么是嵌入式SQL,它有哪些特点和用途?参考答案:嵌入式SQL语言是将SQL语句直接嵌入到程序的源代码中,与其他程序设计语言语句混合。嵌入式SQL的用途:它是数据库应用程序的一种开发方法。是一种应用程序进行数据库访问时所采用的编程式数据库语言。嵌入式SQL的特点是,数据库管理系统DBMS一般会采用预编译的解决办法,即由DBMS的预解决程序对源程序进行扫描,辨认出SQL语句,把它们转换成宿主语言调用语句,以使宿主语言编译程序可以辨认它,最后再由宿主语言的编译程序将整个源程序编译成目的码。嵌入SQL语句完毕的功能也可以通过应用程序接口(API)实现。2.请简述C/S和B/S的重要原理,并说明它们各自的优缺陷。参考答案:C/S模式就是基于公司内部网络的应用系统。传统的C/S模式是一种两层结构的系统,第一层是在客户机系统上结合了表达与业务逻辑;第二层是通过网络结合了数据库服务器。优点是:C/S模式的应用系统最大的好处是不依赖公司外网环境,即无论公司是否可以上网,都不影响应用。缺陷是应用程序的维护、移植和互操作变得复杂。B/S模式,即浏览器/服务器模式,是一种从传统的二层C/S模式发展起来的新的网络结构模式,其本质是三层结构C/S模式。B/S网络结构模式是基于Intranet的需求而出现并发展的。在B/S模式中,客户端运营浏览器软件。优点是:B/S占有优势的是其异地浏览和信息采集的灵活性。任何时间、任何地点、任何系统,只要可以使用浏览器上网,就可以使用B/S系统的终端。缺陷是:采用B/S结构,客户端只能完毕浏览、查询、数据输入等简朴功能,绝大部分工作由服务器承担,这使得服务器的承担很重。3.请简要说明运用VB开发数据库应用系统的一般环节。参考答案:运用VB开发数据类应用程序的基本框架如下:1)通常要声明一个全局数据库连接对象2)一般要创建Main子过程,并将它设立为启动对象。在其中顺序完毕以下操作:(1)以非模态方式显示飞溅窗。(2)创建全局数据库连接对象,并连接SQLServer或Access等数据库。(3)以模态方式显示登录窗,等待用户登录。(4)登录成功后,以非模态方式显示主窗体,否则退出程序。3)主窗体一般均提供增长、删除、修改、查询等对数据库的管理功能,所有操作均使用全局数据库连接对象作为与数据库交互的通道,通过SQL语句对数据进行解决,其中涉及增长功能、删除功能、修改功能和查询功能。4)其他功能。比如数据库备份和恢复功能、用户权限管理功能等。4.什么是数据库引擎?VB数据库应用系统访问数据库的重要机理是什么?参考答案:VB提供了三种数据库访问引擎,即Jet引擎、ODBC和OLEDB,目前重要使用OLEDB。在VB应用程序中重要用这个对象建立与数据库的连接,一般的方法是:①声明并创建对象DimADOcnAsNewConnection②建立数据库连接ADOcn.Open连接字符串假如要连接SQLServer数据库,那么连接字符串一般应具有以下组成:Provider=SQLOLEDB;Server=<服务器名>;UserID=<登录账号>;Password=<登录口令>;Database=<数据库名>③对数据表进行更新操作5.ADO对象模型的重要对象是什么?假如连接后台数据库?参考答案:ADO对象模型的重要对象是:Connection、Command、Recordset、Parameter、Property、Field和Error。①声明并创建对象DimADOcnAsNewConnection②建立数据库连接ADOcn.Open连接字符串假如要连接SQLServer数据库,那么连接字符串一般应具有以下组成:Provider=SQLOLEDB;Server=<服务器名>;UserID=<登录账号>;Password=<登录口令>;Database=<数据库名>6.请写出VB中编写增、删、改、查功能的重要环节和语句。参考答案:ADOcn.ExecuteSQL语句字符串要增长学生成绩表中学号为20230008的记录,可以采用以下语句实现:ADOcn.Execute“insertinto学生成绩表(学号,课程号,成绩)Value(‘20230008’,’101’,’85’)”要删除学生成绩表中学号为001的记录,可以采用以下语句实现:ADOcn.Execute“DELETEFROM学生成绩表WHERE学号=‘001’”要修改学号为20230008学生课程号为101的成绩为89。ADOcn.Execute“UPDATE学生成绩表SET成绩=’89’WHERE学号=‘20230008’AND课程号=’101’”要查找所有的学生的成绩ADOcn.Execute“SELECT*FROM学生成绩表”一、单项选择题(每个题只有一个答案是对的的。)1.假如希望从学生表中查询出所有姓“李”的同学,那么条件语句应当是(B)。A、Where姓名%‘李’B、Where姓名LIKE‘李%’C、Where姓名%‘LIKE李’D、Where姓名LIKE‘李’2.在一个教师关系中,可以成为主关键字(或称主码)的属性是(B)。A、教师姓名B、教师编号C、教师年龄D、教师性别3.从最终用户应用程序的视角看,数据库系统的三级模式结构是(C)。A、模式、外模式和内模式B、内模式、外模式和模式C、外模式、模式和内模式D、外模式、内模式和模式4.在一个学生关系中,可以成为主关键字(或称主码)的属性是(C)。A、性别B、年龄C、学号D、班级5.有严格的数学基础的数据模型是(A)。A、关系模型B、网状模型C、层次模型D、面向对象模型6.下列关于索引的说明不对的的是(A)。A、索引必须创建在主关键字之上B、索引与基本表分开存储C、索引是为了提高查询速度而创建的D、索引会在一定限度上影响增删改操作的效率7.设关系R是满足第一范式的,若R中不存在非主属性对主键的部分函数依赖,则R符合(A)。A、第二范式B、第三范式C、BNC范式D、第四范式8.下列符合第三范式的关系是(D)。A、学生(学号,姓名,课程号,课程名)B、学生(学号,姓名,课程名,成绩)C、学生(学号,姓名,课程号,成绩)D、学生(学号,姓名,性别)9.在第一个关系中出现,而在第二个关系中不出现的记录组成的新关系称为(D)。A、两个关系的积B、两个关系的并C、两个关系的交D、两个关系的差10.数据库应用程序开发中,需求分析阶段的重要目的是(A)。A、回答“干什么”的问题B、回答“怎么干”的问题C、建立逻辑数据模型D、建立最佳物理存储结构11.用户使用SQLServer时,通常需要依次通过两个安全性阶段(C)。A、登录验证、操作验证B、操作验证、登录验证C、身份验证、权限认证D、权限认证、身份验证12.SQLServer数据库中的一个完整的备份通常要涉及(A)。A、系统数据库、用户数据库和事务日记B、系统数据库、系统表和数据字典C、系统数据库、用户数据库和数据字典D、用户数据库和事务日记13.下列哪些不属于索引的类型(D)。A、单列索引B、惟一索引C、聚集索引D、事务日记索引14.下列SQL语句中,可以完毕并运算的是(A)。A、SELECT*FROM篮球爱好者UNIONSELECT*FROM足球爱好者B、SELECT*FROM篮球爱好者INTERSECTSELECT*FROM足球爱好者C、SELECT*FROM篮球爱好者EXCEPTSELECT*FROM足球爱好者D、SELECT*FROM篮球爱好者,足球爱好者15.设学生表和课程表的结构分别为(学号,姓名)和(学号,课程号,成绩),假如希望查询出“成绩大于90分的学生姓名”,则相应的SQL语句是(D)。A、SELECT姓名FROM学生表WHERE学生表.学号=课程表.学号AND课程表.成绩>90B、SELECT姓名FROM课程表WHERE学生表.学号=课程表.学号AND课程表.成绩>90C、SELECT姓名FROM学生表,课程表WHERE学生表.学号=课程表.学号OR课程表.成绩>90D、SELECT姓名FROM学生表,课程表WHERE学生表.学号=课程表.学号AND课程表.成绩>90二、填空题1.数据库系统的三级模式结构是指数据库系统由外模式、模式和内模式三级抽象模式构成。2.备份是指将数据从硬盘复制到可移动媒体上的过程。3.“实体一联系”方法是描述数据库概念模型的重要方法,一般称这种方法为E-R方法(或E-R图方法)。4.用户使用SQLServer数据库时,一般需要通过两个安全性阶段:身份验证和权限认证。5.E-R图设计一般在数据库设计的概念设计阶段使用。三、判断题(对的的在括号内打上“√”,错误的打上“╳”。)1.可以惟一表达数据表中的每条记录的字段或者字段的组合称为主码或主键(√)。2.SQLServer数据库中的NULL值(空值)表达的是“空格”或“0”值(╳)3.一个不规范的关系模式通常会引发插入异常、删除异常和更新异常,导致大量的数据冗余。(√)4.根据索引的特点,应当对那些数据量大、查询频度较高、实时性规定强的基本表创建索引,(√)5.数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息规定和解决规定。(√)6.参照完整性规则通常是指在两个参照和被参照关系中,参照关系中每条记录的外键或者为空,或者等于被参照关系中某条记录的主键。(√)四、简述题1.请简要说明视图的概念和作用参考答案:视图是在基本表或其他视图上建立的表,它的结构和内容都来自某个基本表,是依据基本表存在而存在的。删除一个视图时,不会对基本表产生任何影响,但当删除一张基本表时,与之相关联的视图就会自动被删除。其作用重要是:(1)视图是通过预编译的SELECT语句,存储在数据库服务器端,因此执行视图比从客户端直接执行SELECT语句速度更快、效率更高一些。(2)视图属于用户模式范畴,在实际中,一般的用户不一定具有SELECT语句方面的专门知识,从用户和谐性角度来说,视图更便于用户使用。(3)运用视图可以简化的形式表达复杂的SELECT语句组,如嵌套查询等。2.什么是函数依赖与函数决定,请举例说明参考答案:设一个关系为R,X和Y是它的两个属性集。若对于X上的每个值都有Y上的一个惟一值与之相应,则称X和Y具有函数依赖关系,并称X函数决定Y,或称Y函数依赖于X,称X为决定因素。假设一个职工关系为(职工号,姓名,性别,年龄,职务),职工号用来标记每个职工,选作该关系的主键。我们可以从以下两方面理解函数依赖的概念:一方面,对于该关系中每个职工的职工号,都相应着姓名属性中的惟一值,即该职工的姓名,或者说一个职工的姓名由其职工号惟一拟定,所以称职工号函数决定姓名,或称姓名函数依赖于职工号。另一方面,除职工号外,其他属性都不能成为决定因素形成函数依赖,由于对于它们的每个属性值,都也许相应另一属性的多个不同的取值,比如对于性别属性的一个取值“男”就会相应多个而不是一个职工号。3.请简要说明存储过程的概念和优点。参考答案:存储过程(StoredProcedure)是一组预先编译好的,以一种可执行的形式永久地存储在数据中的SQL代码。使用存储过程的好处可归纳为以下几点:(a)执行速度快。在通过第一次调用以后,就驻留在内存中,不必再通过编译和优化;(b)模块化的程序设计。通过了一次创建以后,可以被调用无数次;(c)减少网络流量;(d)保证系统的安全性。五、综合应用题1.设有有以下基本表:(1)供应商表(供应商编号,供应商名称,供应商所在城市);(2)零件表(零件编号,零件名称,零件颜色,零件重量);(3)工程项目表(工程编号,工程名称,工程所在城市);(4)工程供货表(工程编号,供应商编号,零件编号,零件数量)。用SQL语言写出下列查询语句,(1)查询所有工程的所有细节:SELECT*FROM工程项目表(2)查询所在城市为上海的所有工程的所有细节SELECT*FROM工程项目表WHERE工程所在城市=’上海’(3)查询重量最轻的零件代号SELECT零件编号FROM零件表WHERE零件重量=(SELECTMIN(零件重量)FROM零件表)(4)查询为工程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《喂-出来》课程设计
- 2023年陕西省事业单位教师类考试真题
- 业务员工作述职报告(20篇)
- 2023年南宁市旅发大健康产业集团有限公司招聘员工考试真题
- 2023年来宾市金秀瑶族自治县参加师范类毕业生就业考试真题
- 构建家校社育人共同体突破乡村学校育人困境
- 端午主题发言稿(3篇)
- 万能铣床起课程设计
- 暖气劳务承包合同
- 美食节的活动总结
- 铸牢中华民族共同体意识-形考任务2-国开(NMG)-参考资料
- GB/T 44667-2024重大自然灾害与事故中遗体处理
- 2024秋期国家开放大学《当代中国政治制度》一平台在线形考(任务一至四)试题及答案
- 心衰患者的容量管理中国专家共识-共识解读
- 心力衰竭患者体液容量管理相关知识试题及答案
- 篮球球性练习教案
- (项目管理)高速公路PPP项目运营方案
- EMC电磁兼容测试报告2
- 郦波 一生不可错过的唯美诗词
- 城市生活垃圾处理收费工作总结
- 浅谈鲁迅《野草》的象征主义--毕业论文
评论
0/150
提交评论