第一套
1.程序流程图中带有箭头的线段表示的是:控制流
数据流图中带有箭头的线段表示:数据流
2.结构化程序设计思想:自顶向下、逐步求精、模块化、限制使用goto语句,不包括多态性
面向对象方法,对象的基本特点:标识唯一性、分类性、多态性、封装性、模块独立性好,不包括一致性
3软件设计中.模块划分遵循的原则:高内聚低耦合
耦合性是指模块间互相连接的紧密程度的度量,内聚性一个模块内部各元素间彼此结合的紧密程度。高内聚低耦合,有利于提高模块之间的独立性。
4.需求分析阶段产生的主要文档:软件需求规格说明书
使用的工具:数据流图DFD图、数据字典DD、判定树与树定表
软件设计中不使用的工具是:数据流图DFD图
5.长度为n的线性表排序,最坏情况下,比较次数不是n(n-1)/2的排序方法是:堆排序(nlog2n)
长度为n的有序线性表中进行二分查找,最坏情况下,比较次数为O(log2n)
冒泡排序平均执行时间:O(n2),快速排序法O(log2n)
6.栈(支持子程序调用):先进后出的线性表 队列:先进先出的线性表 循环队列是线性结构的线性表
有序线性表既可以采用顺序存储结构,也可以采用链式链式存储结构
树是简单的非线性结构
7.E-R图转换成关系数据模型的过程是:逻辑设计阶段
数据库设计阶段工作:概念结构设计、逻辑结构设计、物理结构设计
一个多对多只能转换成一个独立的关系模式,
一个一对一的联系可以转换成一个独立的关系模式,也可以与任意一端实体对应的关系合并
一个一对多的联系可以转换成一个独立的关系模式,也可以与n端实体对应的关系合并
三个实体间的一个联系可以转化为一个关系模型
一个实体型转换成一个关系模式
8.数据库管理系统提供的数据控制功能包括:数据完整性、恢复和并发控制、数据安全性
9.关系模型:用二维表表示实体和实体之间的联系
外键作用:建立和加强两个表数据之间的链接的一列或多列
关系表中的一列数据类型必须相同
主键是表中能够唯一标识元组的一个属性或一个属性组,主键可以是一个属性,也可以是若干个属性的组合
10.一个数据库有三级模式结构:外模式(用户模式,可以多个)、模式、内模式
11.模式/内模式映像:物理独立性 外模式/模式映像:逻辑独立性
12.SQL是关系数据库通用的结构化查询语言,非过程化语言(一次处理一个记录,对数据提供自动导航),可以以交互式和嵌入式对数据库进行操作
13.指定外键:FOREIGN KEY 指定主键:PRIMARY KEY 用于各种完整性约束的定义说明:CONSTRANT 指定限制条件约束:CHECK
14.查询一个表中总记录数的SQL语句语法格式是 select count(*) from table
15.drop、truncate、delete 都能删除数据表中的数据
drop删除表中内容和定义,释放空间 truncate删除表中内容、释放空间,不删除定义 delete删除表中内容,不删除定义,不释放空间
删除 | 数据内容 | 定义 | 空间 |
drop | √ | √ | √ |
truncate | √ | √ | |
delete | √ |
16.空值null表示没有值,无值
17.列自增属性设置为整型
18.关于MySQL基本表和视图的描述,能对基本表和视图进行更新操作,但对视图的更新操作是受限制的。
视图是由一张表或多张表导出的表,是一个虚表(能对表和视图进行查询、更新操作),只能对行列子集视图进行更新。视图不保存数据,可以嵌套使用,可与基本表一起使用,不能在视图上创建索引。
19.一张表中,PRIMARY KEY是主码约束(一个),UNIQUE是唯一性约束 (可以多个,允许属性值为空) ,两者作用不一样
20.激活触发器的命令有:插入insert、删除delete、更新update
触发器的执行是自动的,触发器多用来保证数据的完整性,一个触发器只能定义在一个基本表上,触发器不可以创建在表或视图上
当触发器设计对表自身的更新操作时,只能使用before update触发器
查看触发器的语法格式是 show triggers[{from|in}db-name]
Alter命令可以修改:事件、存储过程、存储函数、基本表、索引、视图等(触发器不能)
Alter database 语句可以修改数据库的默认字符集和字符集的校对规则,影响数据库中现有对象
21.call调用存储过程 select调用存储函数 触发器和事件在某些事情发生的时候启动
被应用程序和其他SQL语句调用 | 拥有参数输出 | 调用 | Return语句 | |
存储过程 | √ | √ | 使用call | 不允许包含 |
存储函数 | √ | 直接调用 | 必须包含 |
所有在存储过程中使用的SQL语句在存储函数中同样适用,包括局部变量、SET语句流程控制语句、游标等。
存储过程是一段存放在数据库中的代码,可以有参数可以无参数,其参数的输入输出类型包括输入参数in、输出参数out、输入输出参数inout
在存储过程体中,使用游标的具体步骤包括声明游标、打开游标、读取游标、关闭游标
存储过程、存储函数、触发器均可以声明和使用游标,不可以的是交互式SQL查询
声明游标的语法格式:declare cur_name curson for select_statement
22.now()返回:系统当前日期和时间
23.授予用户权限命令是grant,撤销用户权限命令为remove,alter对数据库或数据库对象进行修改,drop删除数据库或数据库对象
grant | 授予用户权限 with grant option用于实现权限的转移或限制(允许该用户将此权限转移授予其他用户) | mysqldump | 备份数据表的结构、备份一个数据库甚至整个数据库系统 |
remove | 撤销用户权限,但用户仍保留在系统中 | mysql | 恢复一个损坏的数据库 |
alter | 对数据库或数据库对象进行修改 | mysqlimport Lode data…infile | 恢复数据表中的数据 |
drop | 删除数据库或数据库对象 | mysqlbackup | 数据库的热备份 |
DBS | 数据库系统 | memory | 存储引擎速度非常快,适用于存储临时数据的临时列表 |
DBA | 数据库管理员 | myisam | 不支持事务处理应用 |
DBMS | 数据库管理系统 | innodb | 存储引擎是事务安全,支持外键 |
DDL | 数据定义语言 | csv | 存储引擎操作的是一个标准的csv报表文件,不支持事务处理 |
24.MySQL中,可以对属性值、数据表、视图、存储过程和存储函数授权
第二套
1.循环队列有队头和队尾两个指针,但是循环队列仍是线性结构
循环队列需要队头指针和队尾两个指针共同反映队列中元素的动态变化,所以。循环队列中元素的个数是由队头指针和队尾指针共同决定
2.链式存储结构既可以针对线性结构也可以针对非线性结构。链式存储结构中每个结点都由数据域与指针域两部分组成,增加了存储空间。顺序存储结构的存储是连续的,链式存储结构的存储空间不一定是连续的
3.在数据管理技术发展的三个阶段(人工管理、文件系统、数据库系统),数据共享最好的是:数据库系统阶段
4.索引:提高查询效率;可以建立在单列上,也可以建立多列上(会降低更新数据表的速度)
需占据物理空间,不存储在内存;一个表可以有多个索引,但只能有一个聚簇索引,只有唯一性索引要求索引列值不能重复;索引通常可减少表扫描,从而提高检索的效率;
5.视图:使用视图,能够屏蔽数据库的复杂性;视图是一张虚表,更新受到一定的限制;视图不能索引;使用视图,更新数据的速度会降低
6.创建表的同时添加check约束,不允许单独执行
7.不是所有用户都能执行创建表的命令,用户权限授权享有的权限不一。Mysql中建立的表一定属于某个数据库,允许建立临时表。
8.curdate()函数返回当前日期不是创建之时
9.root用户拥有操作和管理mysql的所有权限;删除用户不会影响到他们之前创建的表、索引或者其他数据库对象;系统允许给用户授予与root相同的权限;创建用户时必须经授权才能访问数据库
10.mysql数据库中可以对基本表、数据库、用户、基本表中的列进行授权,列是组成基本表的属性
11.3306是MySQL服务器使用TCP/IP网络的默认端口号
第三套
1.二叉树基本性质:任意一颗二叉树中,度为0的叶子节点总是比度为2的叶子节点多一个,所以,某二叉树有5个度为2的结点,则该二叉树的叶子节点数是6
2.系统软件:编译软件、操作系统、汇编语言 应用软件:教务管理系统
3.软件测试的目的是:发现错误,不涉及改正错误
程序调试(debug,即排错)的基本步骤:错误定位、修改设计和代码,以排除错误、进行回归测试,防止引进新的错误。
4.数据库应用系统中的核心问题是数据库的设计。
5.常见的数据库系统运行与应用结构主要有客户/服务器(C/S)和浏览器/服务器(B/S)
6.数据模型可以分为概念层、逻辑层、物理层
7.实体可以包含多个属性、联系也可以包含自己的属性;联系存在于多个实体之间,联系可以分为一对一、一对多、多对多三种;通常使用E-R图建立数据库的概念模型
8.inf是无重复的列,2nf是在1nf的基础上建立起来的,即满足2nf必须先满足1nf,inf不一定是2nf,满足3nf必须满足2nf, (对表的约束要求最严格的是BCNF)
9.SQL语言按功能分类:DDL、DML、DCL
10.判断一个字段是否为空值时,使用的表达式是 is null
11.limit作用是限制输出记录的个数,类似分页功能的效果
12.alter table修改表结构时,change 和 modify 的描述
change | Alter table tb_name change 原字段名 新字段名 数据类型[约束条件] |
modify | Alter table tb_name modify 字段名 数据类型[约束条件][first|after 已有字段名] |
Modify (修改表的列属性)只会修改指定列的数据类型,不会干涉它的列命
Change后面需要写两次列名,而modify后面只写一次
两种方式都可以用于修改某个列的数据类型
都可以使用first|after来修改列的排列顺序
13.group by 对查询结果按字段列表进行分组,字段值相等的记录分为一组,可配合聚合函数一起使用,但group by子句中不能直接使用聚合函数。除了聚合函数,select语句中的每个列都必须在group by子句中给出;
指定用于分组的字段列表可以是一列,也可以是多个列,彼此间用逗号分开;having对分组结果进行筛选
14.mysql数据库中,可以在服务器、数据库、表等级别上指定缺省字符集,这些字符集的设定将作用于char、varchar、text等字符类型的字段
15.事件是基于特定时间周期触发来执行某些任务,事件在创建后,必须执行mysql命令来查看当前是否已开启事件调度器。创建事件的语句是create event。事件触发后,执行事件中定义的SQL语句序列
16.修改用户登录窗口的命令是set password[for user]={password(‘new_password’)|’encrypated password’}
修改用户口令的命令是set password[for user]={password(‘new_password’)|’encrypated password’}
创建用户时设置口令的命令是create user user_name identified by ‘pasword’;
收回某一用户授权的语法格式为:revoke 权限名 on 表名 from ‘用户名’ @’主机名’
例如:收回对student的select权限
用户账号信息存储在 mysql.user
17.在安装和配置mysql实例的向导中,选择决策支持型(OLAP)实例或者联机事务处理(OLTP)型实例的主要区别在于并发连接数不同
第四套
1.算法空间复杂度是指算法在执行过程中所需要的内存空间(计算机存储空间)
2.数据库管理系统是数据库的机构,它是一种系统软件。负责数据库中数据组织、数据操纵、数据维护、控制及保护和数据服务等,是一种在操作系统之上的系统软件。
3.E-R图中,实体集用矩形,属性用椭圆,联系用菱形
4.数据库规范化设计的步骤:需求分析、概念结构设计、逻辑结构设计、数据库实施、数据库运行和维护(没有功能模块设计)
5.一个完整的数据库系统包括数据库、支持数据库的硬件、数据库管理系统及相关软件、数据库管理员和用户
6.定义学生表时,若规定年龄字段取值不得超过30岁,应使用的约束命令是check(age<=30),check约束属于用户自定义完整性约束
设有商品库存表,规定表中的库存量值必须大于等于0,根据这个规定应建立用户定义完整性约束
7.设有学生表student,包含的属性有学号son、学生姓名sname、性别sex、年龄age、所在专业smajor。基于student表建立视图,可更新的视图必须是行列子集视图(视图的创建保留主键,只是去掉了一些属性),学生表的主键是son,因此创建的可更新的视图必须包含主键son。例如 create view v1 as select son,sname from student;
8.
Show databases() show schemas | 查看当前用户下的所有的数据库 |
Show tables | 查看当前数据库下的所有表 |
Select database() | 查看当前正在使用的工作数据库 |
9.子查询可以使用运算符any表示至少一个值满足条件,all表示所有的值都满足条件
10.事件是基于特定时间周期触发来执行某些任务,用于维护系统数据的实时性。删除事件的语句是drop event
11.MySQL中,insert触发器操作数据时,可以使用的临时表是NEW
12.mysql –u root –p test<test.sql表示使用备份文件test.sql将数据库test恢复
13.给某一用户授权的基本语法格式为:grant 权限1,权限2 on db_name.tbl_name to ‘用户名’ @ ’localhost’;
14.使用show grants命令显示用户权限时结果为usage,代表该用户无权限。
15.使用二进制日志文件的主要目的就是在数据恢复时能够最大可能地更新数据库(不能监视用户对数据库的所有操作)
第五套
1.继承是指类之间共享属性和操作的机制
2.数据库系统分为三层:物理层、概念层、逻辑层
3.表中不存在非主键列对主键的部分函数依赖,则该表符合2NF
4.按功能对SQL语言分类
DDL数据定义语言 | 对各种数据库对象(非数据)进行创建、删除、修改 |
DML数据操纵语言 | 对各种数据库对象进行增删改查操作 |
DCL数据控制语言 | 对各种数据库对象进行授权和回收权限控制 |
5.mysqld用来启动MySQL服务,无法执行SQL语句
6.char固定长度字符类型,所以在处理速度上比varchar快,但是占更多的内存空间。使用char字符类型时,将自动删除末尾的空格。Char最大长度为255,varchar最大长度为65535
7.不是只有int类型才能定义为auto_increment
8.MySQL中,char、varchar、text均为字符集数据类型。Int是整型数据类型,不受字符集设置影响。
9.在MySQL中创建事件时,指定的执行时机包括:单次计划任务或重复计划任务
10.存储过程可以使用:局部变量、用户变量、系统变量
调用存储过程的基本语法格式为:call 存储过程名(参数),例如 call test(10)
11.before就是在insert或update之前执行触发器,after 就是在insert或update之后执行触发器,更新操作(update)、inserted表有数据(新数据),deleted表有数据(旧数据)
12.MyISAM格式的数据表所对应的存储文件包括 .frm文件, .myd文件, .myi文件, 不包括 .isd文件
13.删除用户的命令是drop user
14.phpAdmin 作为一种图形化管理工具,其工作模式为浏览器/服务器模式(B/S模式)
15.使用mysqldump备份数据库的基本语法格式为 mysqldump –u root –p密码 –databases DB1 [DB2 DB3…]>filename
16.决策支持型(OLAP)服务器支持的默认并发用户为20,联机事务处理(OLTP)型服务器支持的默认并发用户数为500
第六套
1.程序调试的任务是:诊断和改正程序中的错误
2.数据字典是在需求分析阶段建立,在数据库设计过程中不断修改,充实和完善的。
3.面向对象设计方法主要特征的是:继承
4.数据库管理系统主要功能包括数据定义、数据操纵、数据库的建立和维护功能、数据库的运行管理、提供方便、有效存取数据库信息的接口和工具。不包括:数据计算功能
5.数据库中存放的对象是数据,不是数据表
6.使用E-R图建立数据库的概念模型
7.group by 用于查询语句的分组,与select配合使用,不与delete一起使用
8.select语句中,百分号通配符%表示任意长度的字符,查询指定内容时不允许使用。
9.
drop index alter table | 删除一个索引 |
Drop table | 删除表,建立在该表上的索引也会相应删除 |
Alter index | 用于创建索引 |
10.完整性约束可以由主键或候选键约束来实现,可以在创建表时定义约束,也可以在已存在的表中进行添加操作。(实体完整性可由主键约束或候选键约束来实现)
11.触发器不可以建立在视图上
12.存储过程体的WHITE语句中,ITERATE语句实现退出当前循环,且重新开始一个新的循环
13.mysql服务器正确安装配置完毕后,会在mysql的主目录下生成一个mysql启动时自动加载的选项文件:my.ini
14.在drop user语句的使用中,如果没有明确指定账户的主机名,则该账户的主机名默认为%
15.show grants for ‘用户名’ @’主机名’ 用于查看指定用户所拥有的权限
16.使用select into…outfile语句只能导出或导入数据的内容,不包括表的结构(即不能同时备份结构和数据)
17.二进制日志包含了关于每个更新数据库的语句的执行时间信息,而不包含没有修改任何数据的语句
二进制日志用于数据恢复
Mysql默认是不开启二进制日志功能的
启用二进制日志,系统的性能会有所降低
说法:二进制日志包含了数据库中所有操作语句的执行时间信息 是错误的
第七套
1.循环队列是队列的一种顺序存储结构
2.二叉树,度为0的叶子结点比度为2的结点多一个。
3.外模式:子模式或用户模式,是用户的数据视图,给出了每个用户的局部数据描述
内模式:物理模式,给出了数据库物理存储结构与物理存取方法
模式:概念模式,数据库系统中全局数据逻辑结构的描述,是全体用户的公共数据视图
4.实体完整性约束条件要求关系的主键中属性值不能为空,一个关系应该有一个或多个候选关键字
5.黑盒测试,设计测试用例的主要依据是程序外部功能
6.数据库概念模型与具体的数据库管理系统无关
7.select substring(‘student’,4,3)表示返回一个从第四位开始长度为3的字符,所以返回den
8.在alter table命令中使用change(不是modify)能够更改字段名和数据类型
9.视图机制能够在一定程度上提高数据库系统的安全性
10.创建唯一索引的基本语法格式为CREATE UNIQUE INDEX 索引名 ON 表名 (列名)[ASC|DESA]
11.说法错误:事件是由操作系统调用的过程
正确:事件能够按照设定的事件自动执行,在事件中能够调用存储过程,在事件中可以对数据表进行数据更新操作
12.mysql_connect()建立非持久性连接,可以使用mysql_close()关闭
mysql_pconnect()建立持久性连接,不能使用mysql_close()关闭
13.复制数据库时,该数据库不能被使用,在复制时,不需要关闭mysql服务器,整个数据库全体被复制。
第八套
1.栈先进后出,栈底指针不变,入栈与出栈操作均由栈顶指针的变化来操作
2.详细设计的任务是为软件结构图中(非总体结构图中)的每一个模块确定实现算法和局部数据结构
3.实体型与实体集之间的关系是 型与值
4.控制数据满足一定的约束条件,这属于:完整性(实体完整性、参照完整性、用户定义完整性)
5.只有整型列才能设置列自增属性
6.系统默认的索引存储类型是btree,使用col_name(length)命令表示根据telephone属性前6个字符采用btree索引类型创建索引
7.触发器创建中,每个表每个事件每次只允许一个触发器,每个表最多支持6个触发器。
Insert的before触发器不仅能被mysql的insert语句激活,也能被load data语句激活。
同一个表不能拥有两个相同触发时刻和事件的触发器。
从表中使用deldete或replace删除某一行时激活触发器。
8.数据库恢复是以数据库备份为基础的,需要人工进行干预
9.可能破坏数据库中数据的是:磁盘故障
10.select * into outfile 语句备份数据库时,导出的是数据表中的数据
11.使用二进制日志文件恢复数据的命令是mysqlbinlog
12.
mysqladmin | 执行管理性操作 |
Select into…outfile,mysqldump,phpmyadmin | 备份数据库 |
第九套
1.二叉链表是二叉树的物理实现,是一种存储结构,不属于线性结构
2.实体间的联系采用二维表
3.数据字典(DD)所定义的对象都包含于数据流图(DFD图)
4.黑盒测试分等价类划分法、边界值分析法、错误推测法
5.关系是一张二维表,行列的顺序没有意义,次序可以任意交换,但不允许有相同的行
列是属性分量,同一个列来自同一个值域,数据类型相同
6.union用于合并两个或多个select 语句的结果集,会消除重复行
7.sql语言一次查询的结果可以有多条记录,构成记录集(SQL语句一次查询的结果是一个记录集)
8.在使用游标时,实际完成数据读取任务的语句是fetch…into…
9.mysql中编写函数、存储过程时,合法的流程控制语句不包括:for(…;…;…)语句
10.before update触发器中,new中的值可能被更新,允许更改将要用于update语句中的值
11.非图形化用户界面的mysql管理工具是:mysql
12.收回权限:revoke 权限名 (列名)on 表名 from 用户名
授权:grant all on 表名 to 用户1,用户2…;
第十套
1.白盒测试法主要有逻辑覆盖、基本路径测试等
逻辑覆盖测试包括语句覆盖、路径覆盖、判定覆盖、条件覆盖、判断-条件覆盖
2.@son表示用户变量,不属于合法常量
3.mysql中能激活触发器的偶有语句为insert、update、delete、load data、replace
4.一张表上不能定义两个相同的触发器
5.mysql中的事件调度器可以在指定的时刻执行指定的任务,即时间周期能触发事件
6.游标只能用于存储过程、存储函数、应用程序中,不能单独在查询操作中使用
7.select into…outfile语句只能导出或导入数据的内容,不包括表的结构,mysqldump能备份数据、表结构
8.with grant option 子句的作用允许用户让权限转移给另一个用户(实现权限转移的是:在grant语句中使用with grant option子句)
9.二进制文件bin_log.000001
10.select into…outfile数据库备份
mysqlimport和load data…infile恢复表中的数据
mysql恢复一个损坏的数据库
11.数据库恢复的过程中需要使用:最近一次备份的数据库和日志文件
第十一套
1.E-R模型为概念设计阶段,将E-R模型转化为关系模型属于逻辑设计阶段
2.mysql不支持的常量类型是:八进制常量
3.对一个数据库成功执行drop database命令之后,该数据库上的用户权限仍然存在
4.使用create index命令可在创建表的同时创建索引和主键,但若要给已存在的表添加主键约束和索引,只能使用alter命令
5.触发器一定建立在某个表上,且不能使用alter命令修改触发器
6.事件是基于特定时间周期来调度执行某些任务
7.游标是被select语句检索出来的结果集,相当于一个指针,只能用于存储函数或存储过程中,不能单独在查询操作中使用
8.将表中数据导出到文件所使用的子句是:into outfile
第十二套
1.算法的时间复杂度是指执行算法所需要的计算工作量
2.软件测试实施步骤不包括回归测试
3.设计人员依据概念模型转换成某个DBMS所支持的数据模型,并进行优化
4.主键是能唯一标识一个元组的一个属性或一个属性组
5.mysqlimport命令不能将数据表中的数据导出为文本文件
6.数据库中授权的对象不能是记录
7.mysqldump是mysql客户端实用程序,使用该命令可以备份数据库表的结构,还可以一次备份多个数据库,甚至整个数据库系统
第十三套
1.算法的有穷性指算法程序的运行时间是有限的
2.数据访问由数据库管理系统进行统一管理和控制的原因不包括:降低数据的冗余度
3.游标不是select语句
4.局部变量只在begin-end语句块之间有效
5.开启二进制日志文件,系统性能会有所降低