基础数据库面试题_第1页
基础数据库面试题_第2页
基础数据库面试题_第3页
基础数据库面试题_第4页
基础数据库面试题_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库面试题 11. 在一个查询中,使用哪一个关键字能够除去重复列值?答案:使用distinct关键字2. 什么是快照?它的作用是什么?答案:快照Snapshot是一个文件系统在特定时间里的镜像,对于在线实时数据备份非常有用。快照对于拥有不能停止的应用或具有常打开文件的文件系统的备份非常重要。对于只能提供一个非常短的备份时间而言,快照能保证系统的完整性。3. 解释存储过程和触发器答案:存储过程是一组Transact-SQL语句,在一次编译后可以执行多次。因为不必重新编译Transact-SQL语句,所以执行存储过程可以提高性能。触发器是一种特殊类型的存储过程,不由用户直接调用。创建触发器时会对

2、其进行定义,以便在对特定表或列作特定类型的数据修改时执行。4. SQL Server是否支持行级锁,有什么好处?答案:支持动态行级锁定SQL Server 2000动态地将查询所引用的每一个表的锁定粒度调整到合适的级别。当查询所引用的少数几行分散在一个大型表中时,优化数据并行访问的最佳办法是使用粒度锁,如行锁。但是,如果查询引用的是一个表中的大多数行或所有行,优化数据并行访问的最佳办法可以是锁定整个表,以尽量减少锁定开销并尽快完成查询。SQL Serve 2000通过为每个查询中的每个表选择适当的锁定级别,在总体上优化了数据并发访问。对于一个查询,如果只引用一个大型表中的几行,则数据库引擎可以

3、使用行级锁定;如果引用一个大型表的几页中的多行,则使用页级锁定;如果引用一个小型表中的所有行,则使用表级锁定。5. 数据库日志干什么用,数据库日志满的时候再查询数据库时会出现什么情况。答案:每个数据库都有事务日志,用以记录所有事务和每个事务对数据库所做的修改。6. 存储过程和函数的区别?答案:存储过程是用户定义的一系列SQL语句的集合,涉及特定表或其它对象的任务,用户可以调用存储过程,而函数通常是数据库已定义的方法,它接收参数并返回某种类型的值并且不涉及特定用户表7. 事务是什么?答案:事务是作为一个逻辑单元执行的一系列操作,一个逻辑工作单元必须有四个属性,称为 ACID(原子性、一致性、隔离

4、性和持久性)属性,只有这样才能成为一个事务:(1) 原子性事务必须是原子工作单元;对于其数据修改,要么全都执行,要么全都不执行。(2) 一致性事务在完成时,必须使所有的数据都保持一致状态。在相关数据库中,所有规则都必须应用于事务的修改,以保持所有数据的完整性。事务结束时,所有的内部数据结构(如 B 树索引或双向链表)都必须是正确的。(3) 隔离性由并发事务所作的修改必须与任何其它并发事务所作的修改隔离。事务查看数据时数据所处的状态,要么是另一并发事务修改它之前的状态,要么是另一事务修改它之后的状态,事务不会查看中间状态的数据。这称为可串行性,因为它能够重新装载起始数据,并且重播一系列事务,以使

5、数据结束时的状态与原始事务执行的状态相同。(4) 持久性事务完成之后,它对于系统的影响是永久性的。该修改即使出现系统故障也将一直保持。8. 游标的作用?如何知道游标已经到了最后?答案:游标用于定位结果集的行,通过判断全局变量FETCH_STATUS可以判断是否到了最后,通常此变量不等于0表示出错或到了最后。9. 触发器分为事前触发和事后触发,这两种触发有何区别?语句级触发和行级触发有何区别?答案:事前触发器运行于触发事件发生之前,而事后触发器运行于触发事件发生之后。通常事前触发器可以获取事件之前和新的字段值。语句级触发器可以在语句执行前或后执行,而行级触发在触发器所影响的每一行触发一次。10.

6、 解决死锁的方法有哪些?答案:解决手段一:SQL Server自动检测和消除死锁解决手段二:设置死锁优先级解决手段三:设置锁定超时解决手段四:使用更新锁避免死锁11. 提高数据库运行效率的办法有哪些?答案:在给定的系统硬件和系统软件条件下,提高数据库系统的运行效率的办法是:(1) 在数据库物理设计时,降低范式,增加冗余, 少用触发器, 多用存储过程。(2) 当计算非常复杂、而且记录条数非常巨大时(例如一千万条),复杂计算要先在数据库外面,以文件系统方式用C+语言计算处理完成之后,最后才入库追加到表中去。这是电信计费系统设计的经验。(3) 发现某个表的记录太多,例如超过一千万条,则要对该表进行水

7、平分割。水平分割的做法是,以该表主键PK的某个值为界线,将该表的记录水平分割为两个表。若发现某个表的字段太多,例如超过八十个,则垂直分割该表,将原来的一个表分解为两个表。(4) 对数据库管理系统DBMS进行系统优化,即优化各种系统参数,如缓冲区个数。(5) 在使用面向数据的SQL语言进行程序设计时,尽量采取优化算法。总之,要提高数据库的运行效率,必须从数据库系统级优化、数据库设计级优化、程序实现级优化,这三个层次上同时下功夫。12. 通俗地理解三个范式答案:通俗地理解三个范式,对于数据库设计大有好处。在数据库设计中,为了更好地应用三个范式,就必须通俗地理解三个范式(通俗地理解是够用的理解,并不

8、是最科学最准确的理解):第一范式:1NF是对属性的原子性约束,要求属性具有原子性,不可再分解; 第二范式:2NF是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性;第三范式:3NF是对字段冗余性的约束,即任何字段不能由其他字段派生出来,它要求字段没有冗余。没有冗余的数据库设计可以做到。但是,没有冗余的数据库未必是最好的数据库,有时为了提高运行效率,就必须降低范式标准,适当保留冗余数据。具体做法是:在概念数据模型设计时遵守第三范式,降低范式标准的工作放到物理数据模型设计时考虑。降低范式就是增加字段,允许冗余。13. 简述存储过程的优缺点优点:1. 更快的执行速度:存储过程只在创造时进行编译

9、,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度;2. 与事务的结合,提供更好的解决方案:当对数据库进行复杂操作时(如对多个表进行Update、Insert、Query和Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用;3. 支持代码重用:存储过程可以重复使用,可减少数据库开发人员的工作量;4. 安全性高:可设定只有某此用户才具有对指定存储过程的使用权。缺点:1. 如果更改范围大到需要对输入存储过程的参数进行更改,或者要更改由其返回的数据,则您仍需要更新程序集中的代码以添加参数、更新 GetV

10、alue() 调用,等等,这时候估计比较繁琐了。2. 可移植性差由于存储过程将应用程序绑定到 SQL Server,因此使用存储过程封装业务逻辑将限制应用程序的可移植性。如果应用程序的可移植性在您的环境中非常重要,则将业务逻辑封装在不特定于 RDBMS 的中间层中可能是一个更佳的选择。14. 主键和唯一索引有什么区别?答案:相同点:它们都属于实体完整性约束。不同点:(1) 唯一性约束所在的列允许空值,但是主键约束所在的列不允许空值。(2) 可以把唯一性约束放在一个或者多个列上,这些列或列的组合必须有唯一的。但是,唯一性约束所在的列并不是表的主键列。(3) 唯一性约束强制在指定的列上创建一个唯一

11、性索引。在默认情况下,创建唯一性的非聚簇索引,但是,也可以指定所创建的索引是聚簇索引。(4) 建立主键的目的是让外键来引用。(5) 一个表最多只有一个主键,但可以有很多唯一键。15. 简述索引存取的方法的作用和建立索引的原则作用:加快查询速度。原则:(1) 如果某属性或属性组经常出现在查询条件中,考虑为该属性或属性组建立索引;(2) 如果某个属性常作为最大值和最小值等聚集函数的参数,考虑为该属性建立索引;(3) 如果某属性经常出现在连接操作的连接条件中,考虑为该属性或属性组建立索引;16. 简述数据库的设计过程数据库设计分为五个阶段:需求分析:主要是准确收集用户信息需求和处理需求,并对收集的结

12、果进行整理和分析,形成需求说明。概念结构设计:对用户需求进行综合、归纳、抽象,形成一个与与具体的DBMS无关概念模型(一般为ER模型)。逻辑结构设计:将概念结构设计的概念模型转化为某个特定的DBMS所支持的数据模型,建立数据库逻辑模式,并对其进行优化,同时为各种用户和应用设计外模式。物理结构设计:为设计好的逻辑模型选择物理结构,包括存储结构和存取方法等,建立数据库物理模式。实施和维护:实施就是使用DLL语言建立数据库模式,将实际数据载入数据库,建立真正的数据库。维护阶段是对运行中的数据库进行评价、调整和修改。17. 什么是内存泄漏?答案:一般我们所说的内存泄漏指的是堆内存的泄漏。堆内存是程序从

13、堆中为其分配的,大小任意的,使用完后要显示释放内存。当应用程序用关键字new等创建对象时,就从堆中为它分配一块内存,使用完后程序调用free或者delete释放该内存,否则就说该内存就不能被使用,我们就说该内存被泄漏了。18. 什么是基本表?什么是视图?答案:基本表是本身独立存在的表,在 SQL 中一个关系就对应一个表。视图是从一个或几个基本表导出的表。视图本身不独立存储在数据库中,是一个虚表19. 试述视图的优点(1) 视图能够简化用户的操作(2) 视图使用户能以多种角度看待同一数据;(3) 视图为数据库提供了一定程度的逻辑独立性;(4) 视图能够对机密数据提供安全保护。20. 所有的视图是

14、否都可以更新?为什么?答案:不是。视图是不实际存储数据的虚表,因此对视图的更新,最终要转换为对基本表的更新。因为有些视图的更新不能惟一有意义地转换成对相应基本表的更新,所以,并不是所有的视图都是可更新的。21. 哪类视图是可以更新的?哪类视图是不可更新的?各举一例说明。答案:基本表的行列子集视图一般是可更新的。若视图的属性来自集函数、表达式,则该视图肯定是不可以更新的。22. 维护数据库的完整性、一致性、你喜欢用触发器还是自写业务逻辑?为什么?答案:尽可能用约束(包括CHECK、主键、唯一键、外键、非空字段)实现,这种方式的效率最好;其次用触发器,这种方式可以保证无论何种业务系统访问数据库都能

15、维持数据库的完整性、一致性;最后再考虑用自写业务逻辑实现,但这种方式效率最低、编程最复杂,当为下下之策。23. 在为视图创建索引前,视图本身必须满足哪些条件?(1) 视图以及视图中引用的所有表都必须在同一数据库中,并具有同一个所有者(2) 索引视图无需包含要供优化器使用的查询中引用的所有表。(3) 必须先为视图创建唯一群集索引,然后才可以创建其它索引。(4) 创建基表、视图和索引以及修改基表和视图中的数据时,必须正确设置某些 SET 选项(在本文档的后文中讨论)。另外,如果这些 SET 选项正确,查询优化器将不考虑索引视图。(5) 视图必须使用架构绑定创建,视图中引用的任何用户定义的函数必须使

16、用 SCHEMABINDING 选项创建。(6) 另外,还要求有一定的磁盘空间来存放由索引视图定义的数据。24. 什么是SQL Server的确定性函数和不确定性函数?答案:只要使用特定的输入值集并且数据库具有相同的状态,不管何时调用,始终都能范围相同结果的函数叫确定性函数。几十访问的数据库的状态不变,每次书用特定的输入值都可能范围不同结果的函数叫非确定性函数。数据库面试题 2 一选择题1. 下面叙述正确的是_。A、算法的执行效率与数据的存储结构无关B、算法的空间复杂度是指算法程序中指令(或语句)的条数C、算法的有穷性是指算法必须能在执行有限个步骤之后终止D、以上三种描述都不对 2. 以下数据

17、结构中不属于线性数据结构的是_。A、队列 B、线性表 C、二叉树 D、栈 3. 在一棵二叉树上第5层的结点数最多是_。A、8 B、16 C、32 D、15 4. 下面描述中,符合结构化程序设计风格的是_。A、使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B、模块只有一个入口,可以有多个出口C、注重提高程序的执行效率D、不使用goto语句 5. 下面概念中,不属于面向对象方法的是_。A、对象 B、继承 C、类 D、过程调用 6. 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是_。A、可行性分析 B、需求分析C、详细设计 D、程序编码 7. 在软件开发中,下面任

18、务不属于设计阶段的是_。A、数据结构设计 B、给出系统模块结构C、定义模块算法 D、定义需求并建立系统模型 8. 数据库系统的核心是_。A、数据模型 B、数据库管理系统C、软件工具 D、数据库 9. 下列叙述中正确的是_。A、数据库是一个独立的系统,不需要操作系统的支持B、数据库设计是指设计数据库管理系统C、数据库技术的根本目标是要解决数据共享的问题D、数据库系统中,数据的物理结构必须与逻辑结构一致 10. 下列模式中,能够给出数据库物理存储结构与物理存取方法的是_。A、内模式 B、外模式C、概念模式 D、逻辑模式 11. Visual FoxPro数据库文件是_。A、存放用户数据的文件B、管

19、理数据库对象的系统文件C、存放用户数据和系统的文件D、前三种说法都对 12. SQL语句中修改表结构的命令是_。A、MODIFY TABLEB、MODIFY STRUCTUREC、ALTER TABLED、ALTER STRUCTURE 13. 如果要创建一个数据组分组报表,第一个分组表达式是”部门”,第二个分组表达式是”性别”,第三个分组表达式是”基本工资”,当前索引的索引表达式应当是_。A、部门+性别+基本工资B、部门+性别+STR(基本工资)C、STR(基本工资)+性别+部门D、性别+部门+STR(基本工资) 14. 把一个项目编译成一个应用程序时,下面的叙述正确的是_。A、所有的项目文

20、件将组合为一个单一的应用程序文件B、所有项目的包含文件将组合为一个单一的应用程序文件C、所有项目排除的文件将组合为一个单一的应用程序文件D、由用户选定的项目文件将组合为一个单一的应用程序文件 15. 数据库DB、数据库系统DBS、数据库管理系统DBMS三者之间的关系是_。A、DBS包括DB和DBMSB、DBMS包括DB和DBSC、DB包括DBS和DBMSD、DBS就是DB,也就是DBMS 16. 在”选项”对话框的”文件位置”选项卡中可以设置_。A、表单的默认大小B、默认目录C、日期和时间的显示格式D、程序代码的颜色 17. 要控制两个表中数据的完整性和一致性可以设置”参照完整性”,要求这两个

21、表_。A、是同一个数据库中的两个表B、不同数据库中的两个表C、两个自由表D、一个是数据库表另一个是自由表 18. 定位第一条记录上的命令是_。A、GO TOP B、GO BOTTOMC、GO 6 D、SKIP 19. 在关系模型中,实现”关系中不允许出现相同的元组”的约束是通过_。A、候选键 B、主键C、外键 D、超键 20. 设当前数据库有10条记录(记录未进行任何索引),在下列三种情况下,当前记录号为1时;EOF()为真时;BOF()为真时,命令?RECN()的结果分别是_。A、1,11,1 B、1,10,1C、1,11,0 D、1,10,0 21. 下列表达式中结果不是日期型的是_。A、

22、CTOD(“2000/10/01)B、99/10/01+365C、VAL(“2000/10/01)D、DATE() 22. 只有满足联接条件的记录才包含在查询结果中,这种联接为_。A、左联接 B、右联接C、内部联接 D、完全联接 23. 索引字段值不唯一,应该选择的索引类型为_。A、主索引 B、普通索引C、候选索引 D、唯一索引 24. 执行SELECT 0选择工作区的结果是_。A、选择了0号工作区 B、选择了空闲的最小号工作区C、关闭选择的工作区 D、选择已打开的工作区 25. 从数据库中删除表的命令是_。A、DROP TABLEB、ALTER TABLEC、DELETE TABLED、US

23、E 26. DELETE FROM S WHERE 年龄>60语句的功能是_。A、从S表中彻底删除年龄大于60岁的记录B、S表中年龄大于60岁的记录被加上删除标记C、删除S表D、删除S表的年龄列 27. SELECT-SQL语句是_。A、选择工作区语句 B、数据查询语句C、选择标准语句 D、数据修改语句 28. SQL语言是_语言。A、层次数据库 B、网络数据库C、关系数据库 D、非数据库 29. 在SQL中,删除视图用_。A、DROP SCHEMA命令 B、CREATE TABLE命令C、DROP VIEW命令 D、DROP INDEX命令 30. 以下属于非容器类控件的是_。A、Fo

24、rm B、LabelC、page D、Container 31. 将查询结果放在数组中应使用_短语。A、INTO CURSOR B、TO ARRAYC、INTO TABLE D、INTO ARRAY32. 在命令窗口执行SQL命令时,若命令要占用多行,续行符是_。A、冒号(:) B、分号(;)C、逗号(,) D、连字符(-) 33. 设有图书管理数据库:图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2)读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)借阅(借书证号C(4),总编号C(6),借书日

25、期D(8)对于图书管理数据库,查询0001号借书证的读者姓名和所借图书的书名。SQL语句正确的是_。SELECT 姓名,书名 FROM 借阅,图书,读者 WHERE;借阅.借书证号=”0001 AND;_A、图书.总编号=借阅.总编号 AND;读者.借书证号=借阅.借书证号B、图书.分类号=借阅.分类号 AND;读者.借书证号=借阅.借书证号C、读者.总编号=借阅.总编号 AND;读者.借书证号=借阅.借书证号D、图书.总编号=借阅.总编号 AND;读者.书名=借阅.书名 34. 设有图书管理数据库:图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N

26、(6,2)读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)借阅(借书证号C(4),总编号C(6),借书日期D(8)对于图书管理数据库,分别求出各个单位当前借阅图书的读者人次。下面的SQL语句正确的是_。SELECT 单位,_ FROM 借阅,读者 WHERE;借阅.借书证号=读者.借书证号 _A、COUNT(借阅.借书证号) GROUP BY 单位B、SUM(借阅.借书证号) GROUP BY 单位C、COUNT(借阅.借书证号) ORDER BY 单位D、COUNT(借阅.借书证号) HAVING 单位 35. 设有图书管理数据库:图书(总编号C

27、(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2)读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)借阅(借书证号C(4),总编号C(6),借书日期D(8)对于图书管理数据库,检索借阅了现代网络技术基础一书的借书证号。下面SQL语句正确的是_。SELECT 借书证号 FROM 借阅 WHERE 总编号=;_A、(SELECT 借书证号 FROM 图书 WHERE 书名=”现代网络技术基础”)B、(SELECT 总编号 FROM 图书 WHERE 书名=”现代网络技术基础”)C、(SELECT 借书证号 FROM

28、 借阅 WHERE 书名=”现代网络技术基础”)D、(SELECT 总编号 FROM 借阅 WHERE 书名=”现代网络技术基础”) 二、填空题36. 算法的复杂度主要包括_复杂度和空间复杂度。37. 数据的逻辑结构在计算机存储空间中的存放形式称为数据的_。38. 若按功能划分,软件测试的方法通常分为白盒测试方法和_测试方法。39. 如果一个工人可管理多个设施,而一个设施只被一个工人管理,则实体”工人”与实体”设备”之间存在_联系。40. 关系数据库管理系统能实现的专门关系运算包括选择、连接和_。41. 命令?LEN(“THIS IS MY BOOK”)的结果是_。42.SQL SELECT语

29、句为了将查询结果存放到临时表中应该使用_短语。43. 多栏报表的栏目数可以通过_来设置。44. 在打开项目管理器之后再打开”应用程序生成器”,可以通过按ALT+F2键,快捷菜单和”工具”菜单中的_。45. 数据库系统的核心是_。46. 查询设计器中的”联接”选项卡,可以控制_选择。 47. 设有图书管理数据库:图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2)读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)借阅(借书证号C(4),总编号C(6),借书日期D(8)用SQL的CREATE命令建立借阅

30、表(字段顺序要相同),请对下面的SQL语句填空:_ 48. 设有图书管理数据库:图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2)读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)借阅(借书证号C(4),总编号C(6),借书日期D(8)对图书管理数据库,查询由”清华大学出版社”或”电子工业出版社”出版,并且单价不超出20元的书名。请对下面的SQL语句填空:SELECT 书名,出版单位,单价 FROM 图书;WHERE_ AND;_ 49. 设有图书管理数据库:图书(总编号C(6),分类号C(8),

31、书名C(16),作者C(6),出版单位C(20),单价N(6,2)读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)借阅(借书证号C(4),总编号C(6),借书日期D(8)对图书管理数据库,求共借出多少种图书。请对下面的SQL语句填空:SELECT _ FROM 借阅 参考答案:一、选择题1-5 C C B A D6-10 B D B C A11-15 D C B A A16-20 B A A B A21-25 C C B B A26-30 B B C C B31-35 D D A A B二、填空题36. 时间 37. 模式或逻辑模式38. 黑盒39

32、. 一对多或 1对多或 一对n或 1:N或 1:n或 1:n或 1:N或 一对m或 1:M或 1:m或 1:m或 1:N40. 投影41. 1542. Into cursor 或 Into cursor cursorname43. 页面设置 或 列数44. 应用程序生成器45. 数据库管理系统 或 DBMS46. 联接类型 或 联接条件47. CREATE TABLE 借阅(借书证号 C(4),总编号 C(6),借书日期 D(8)或 CREA TABL 借阅(借书证号 C(4),总编号 C(6),借书日期D(8)或 CREATE TABLE 借阅(借书证号 C(4),总编号 C(6),借书日期

33、 D)或 CREA TABL 借阅(借书证号 C(4),总编号 C(6),借书日期 D) 48. 单价<=20或 (出版单位=”清华大学出版社” OR 出版单位=”电子工业出版社”)或 (出版单位=”电子工业出版社” OR 出版单位=”清华大学出版社”)或 (出版单位=清华大学出版社 OR 出版单位=电子工业出版社) 与 (出版单位=”清华大学出版社” OR 出版单位=”电子工业出版社”)或 (出版单位=清华大学出版社) 49. COUNT(DISTINCT 总编号)或 COUN(DISTINCT 总编号) 或 COUNT(DIST 总编号) 或 COUN(DIST 总编号)数据库面试题

34、 3一、 选择题1. 以下数据结构中不属于线性数据结构的是_。A、队列 B、线性表 C、二叉树 D、栈2. 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是_。A、可行性分析 B、需求分析 C、详细设计 D、程序编码3. 结构化程序设计主要强调的是_。A、程序的规模 B、程序的易读性 C、程序的执行效率 D、程序的可移植性4. 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是_。A、概要设计 B、详细设计 C、可行性分析 D、需求分析5. 下列关于栈的叙述中正确的是_。A、在栈中只能插入数据B、在栈中只能删除数据C、栈是先进先出的线性表D、栈是先进后

35、出的线性表6. 下面不属于软件设计原则的是_。A、抽象 B、模块化 C、自底向上 D、信息隐蔽7. 对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为_。A、N+1 B、N C、(N+1)/2 D、N/28. 视图设计一般有3种设计次序,下列不属于视图设计的是_。A、自顶向下 B、由外向内 C、由内向外 D、自底向上9. 下列有关数据库的描述,正确的是_。A、数据库是一个DBF文件B、数据库是一个关系C、数据库是一个结构化的数据集合D、数据库是一组文件 10. 下列说法中,不属于数据模型所描述的内容的是_。A、数据结构 B、数据操作 C、数据查询 D、数据约束11. 在下面的Vis

36、ual FoxPro表达式中,运算结果是逻辑真的是_。A、EMPTY(.NULL.)B、LIKE(acd,'ac?)C、AT(a,123abc)D、EMPTY(SPACE(2)12. 表达式VAL(SUBS(“奔腾586,5,1)*Len(“visual foxpro”)的结果是_。A、13.00 B、14.00 C、45.00 D、65.0013. 以下关于自由表的叙述,正确的是_。A、全部是用以前版本的FOXPRO(FOXBASE)建立的表B、可以用Visual FoxPro建立,但是不能把它添加到数据库中C、自由表可以添加到数据库中,数据库表也可以从数据库中移出成为自由表D、自由

37、表可以添加到数据库中,但数据库表不可从数据库中移出成为自由表14. 下面关于数据环境和数据环境中两个表之间的关系的陈述中,_是正确的。A、数据环境是对象,关系不是对象B、数据环境不是对象,关系是对象C、数据环境是对象,关系是数据环境中的对象D、数据环境和关系均不是对象15. 在”报表设计器”中,可以使用的控件是_。A、标签、域控件和线条 B、标签、域控件和列表框C、标签、文本框和列表框 D、布局和数据源16.用二维表数据来表示实体及实体之间联系的数据模型称为_。A、实体联系模型B、层次模型C、网状模型D、关系模型 17. 用来指明复选框的当前选中状态的属性是_。A、Selected B、Cap

38、tion C、Value D、ControlSource18. 使用菜单操作方法打开一个在当前目录下已经存在的查询文件zgjk.qpr后,在命令窗口生成的命令是_。A、OPEN QUERY zgjk.qpr B、MODIFY QUERY zgjk.qprC、DO QUERY zgjk.qpr D、CREATE QUERY zgjk.qpr19. 可以伴随着表的打开而自动打开的索引是_。A、单一索引文件(IDX)B、复合索引文件(CDX)C、结构化复合索引文件D、非结构化复合索引文件20. 在数据库设计器中,建立两个表之间的一对多联系是通过以下索引实现的_。A、”一方”表的主索引或候选索引,”多

39、方”表的普通索引B、”一方”表的主索引,”多方”表的普通索引或候选索引C、”一方”表的普通索引,”多方”表的主索引或候选索引D、”一方”表的普通索引,”多方”表的候选索引或普通索引21. 下列函数中函数值为字符型的是_。A、DATE() B、TIME() C、YEAR() D、DATETIME()22. 下面对控件的描述正确的是_。A、用户可以在组合框中进行多重选择B、用户可以在列表框中进行多重选择C、用户可以在一个选项组中选中多个选项按钮D、用户对一个表单内的一组复选框只能选中其中一个 23. 确定列表框内的某个条目是否被选定应使用的属性是_。A、Value B、ColumnCount C、

40、ListCount D、Selected24. 设有关系R1和R2,经过关系运算得到结果S,则S是_。A、一个关系B、一个表单C、一个数据库D、一个数组 25. DBAS指的是_。A、数据库管理系统B、数据库系统C、数据库应用系统D、数据库服务系统 26. 设X=”ABC”,Y=”ABCD”,则下列表达式中值为.T.的是_。A、X=Y B、X=Y C、X$Y D、AT(X,Y)=0 27. 在表结构中,逻辑型、日期型、备注型字段的宽度分别固定为_。A、3,8,10B、1,6,4C、1,8,任意D、1,8,4 28. 在标准SQL中,建立视图的命令是_。A、CREATE SCHEMA命令B、CR

41、EATE TABLE命令C、CREATE VIEW命令D、CREATE INDEX命令 29. 有关SCAN循环结构,叙述正确的是_。A、SCAN循环结构中的LOOP语句,可将程序流程直接指向循环开始语句SCAN,首先判断EOF()函数的真假B、在使用SCAN循环结构时,必须打开某一个数据库C、SCAN循环结构的循环体中必须写有SKIP语句D、SCAN循环结构,如果省略了子句FOR和WHILE条件子句,则直接退出循环 30. 设有图书管理数据库:图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2)读者(借书证号C(4),单位C(8),姓名C(

42、6),性别C(2),职称C(6),地址C(20)借阅(借书证号C(4),总编号C(6),借书日期D(8)对于图书管理数据库,要查询所藏图书中,各个出版社的图书最高单价、平均单价和册数,下面SQL语句正确的是_。SELECT 出版单位,_,_,_;FROM 图书管理!图书 _ 出版单位A、MIN(单价) AVGAGE(单价) COUNT(*) GROUP BYB、MAX(单价) AVG(单价) COUNT(*) ORDER BYC、MAX(单价) AVG(单价) SUM(*) ORDER BYD、MAX(单价) AVG(单价) COUNT(*) GROUP BY 31. 设有图书管理数据库:图书

43、(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2)读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)借阅(借书证号C(4),总编号C(6),借书日期D(8)对于图书管理数据库,求CIE单位借阅图书的读者的人数。下面SQL语句正确的是_。SELECT _ FROM 借阅 WHERE;借书证号 _A、COUNT (DISTINCT 借书证号)IN (SELECT 借书证号 FROM 读者 WHERE 单位=”CIE”)B、COUNT (DISTINCT 借书证号)IN (SELECT 借书证号 FROM

44、借阅 WHERE 单位=”CIE”)C、SUM (DISTINCT 借书证号)IN (SELECT 借书证号 FROM 读者 WHERE 单位=”CIE”)D、SUM (DISTINCT 借书证号)IN (SELECT 借书证号 FOR 借阅 WHERE 单位=”CIE”) 32. 查询订购单号(字符型,长度为4)尾字符是”1的错误命令是_。A、SELECT * FROM 订单 WHERE SUBSTR(订购单号,4)”1B、SELECT * FROM 订单 WHERE SUBSTR(订购单号,4,1)”1C、SELECT * FROM 订单 WHERE “1$订购单号D、SELECT * F

45、ROM 订单 WHERE RIGHT(订购单号,1)”1 33. 在关系模型中,为了实现”关系中不允许出现相同元组”的约束应使用_。A、临时关键字 B、主关键字C、外部关键字 D、索引关键字 34. 根据”职工”项目文件生成emp_sys.exe应用程序的命令是_。A、BUILD EXE emp_sys FROM 职工B、BUILD APP emp_sys.exe FROM 职工C、LIKE EXE emp_sys FROM 职工D、LIKE APP emp_sys.exe FROM 职工 35. 当前盘当前目录下有数据库:学院.dbc,其中有”教师”表和”学院”表。“教师”表:“学院”表:有

46、SQL语句:SELECT DISTINCT 系号 FROM 教师 WHERE 工资>=;ALL (SELECT 工资 FROM 教师 WHERE 系号=”02)与如上语句等价的SQL语句是_。A、SELECT DISTINCT 系号 FROM 教师 WHERE工资>=;(SELECT MAX(工资) FROM 教师 WHERE 系号=”02)B、SELECT DISTINCT 系号 FROM 教师 WHERE 工资>=;(SELECT MIN(工资) FROM 教师 WHERE 系号=”02)C、SELECT DISTINCT 系号 FROM 教师 WHERE 工资>=

47、;ANY(SELECT 工资 FROM 教师 WHERE 系号=”02)D、SELECT DISTINCT 系号 FROM 教师 WHERE 工资>=;SOME (SELECT 工资 FROM 教师 WHERE 系号=”02) 二、 填空题36. 若按功能划分,软件测试的方法通常分为白盒测试方法和_测试方法。37. 数据库系统的三级模式分别为_模式、内部级模式与外部级模式。38. 在最坏情况下,冒泡排序的时间复杂度为_。39. 在面向对象方法中,信息隐蔽是通过对象的_性来实现的。40. 关系模型的数据操纵即是建立在关系上的数据操纵,一般有_、增加、删除和修改四种操作。41.要把帮助文件设

48、置为复制到硬盘上的Foxhelp.chm文件,需要在”选项”对话框的_选项卡上设置。42. TIME( )的返回值的数据类型是_类型。43. 在定义字段有效性规则中,在规则框中输入的表达式中类型是_。44. 设计报表通常包括两部分内容:_和布局。45. _是指只有满足联接条件的记录才包含在查询结果中。46. 设有图书管理数据库:图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2)读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)借阅(借书证号C(4),总编号C(6),借书日期D(8)检索书价在15元

49、至25元(含15元和25元)之间的图书的书名、作者、书价和分类号,结果按分类号升序排序。SELECT 书名,作者,单价,分类号 FROM 图书;WHERE_;ORDER BY_; 47. 设有如下关系表R、S和T:R(BH,XM,XB,DWH)S(SWH,DWM)T(BH,XM,XB,DWH)实现RT的SQL语句是_。 48. 设有如下关系表R:R(NO,NAME,SEX,AGE,CLASS)主关键字是NO其中NO为学号,NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。写出实现下列功能的SQL语句。插入”95031班学号为30,姓名为”郑和”的学生记录;_。 49. 设有如下关系

50、表R:R(NO,NAME,SEX,AGE,CLASS)主关键字是NO其中NO为学号(数值型),NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。写出实现下列功能的SQL语句。删除学号为20的学生记录;_。 参考答案:一、选择题1-5 C B B D D6-10 C B B C C11-15 D D C C A16-20 D C B C A21-25 B B D A C26-30 C D C B D31-35 A C B B A 二、填空题36. 黑盒37. 概念或概念级38. n(n-1)/239. 封装40. 查询41. 文件位置42. 字符 或 C43. 逻辑表达式44. 数据

51、源45. 内部联接46. 单价 BETWEEN 15 AND 25或 单价 BETW 15 AND 25或 单价 BETWE 15 AND 25或 单价>=15 and 单价<=25或 单价>=15 and 单价=<25或 单价=>15 and 单价<=25或 单价=>15 and 单价=<25 与 分类号 ASC或 分类号 47. SELECT * FROM R UNION SELECT * FROM T或 SELE * FROM R UNIO SELE * FROM T或 SELECT * FROM R UNIO SELECT * FROM

52、T或 SELE * FROM R UNION SELE * FROM T 48. INSERT INTO R(NO,NAME,CLASS) VALUES(30,”郑和”,”95031)或 INSE INTO R(NO,NAME,CLASS) VALUES(30,”郑和”,”95031) 49. DELETE FROM R WHERE NO=20或 DELE FROM R WHERE NO=20或 DELE FROM R WHER NO=20或 DELETE FROM R WHER NO=20数据库面试题 4第一章:1)E-R模型的组成包括以下的元素,除了(C)。(选择一项)a) 实体b) 属性

53、c) 记录d) 关系2) 你为公司开发了一个逻辑模型:公司有10个部门,每个部门有6-7个员工,但每个员工可能会不止一个部门工作。下面所给的模型正确的是(B)。(选择一项)a) 部门和员工之间是一种确定的一对多的关系b) 建立一个关联表,从该关联表到员工建立一个一对多的关系,然后再从该关联表到部门表建立一个一对多的关系c) 建立一个关联表,从员工表到该关联表建立一个一对多的关系,然后再从部门表到该关联表建立一个一对多的关系d) 这种情况不能建立正常的数据库模型3) 下面(C)不是数据库规范化要达到的效果.(选择一项)a) 改善数据库的设计b) 实现最小的数据冗余c) 可以用一个表来存储所有数据

54、,使设计及存储更加简化d) 防止更新,插入及删除的时候,产生数据丢失4) (A)是个人能看到的相关数据库部分的数据库视图。(选择一项)a) 外部级别b) 逻辑级别c) 用户级别d) 物理级别5) 在某ERD里有“客户”和“订单”两个实体,他们的关系是“客户”发出“订单”,在“订单”这个实体里又有“订购数量”、“产品代码”等属性,“产品”与“产品代码”之间的关系应该是(B)。(选择一项)a) 一对一b) 一对多c) 多对多d) 循环对应6) 在ACCESS数据库表设计的时候,某用户在设计视图的有效性规则中设置为get score>average score,则此用户用的是(C)类型的检查约束。(选择一项)a) 字段值b) 记录级c) 表级d) 平

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论