




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2023年甘肃省天水市全国计算机等级考试数据库技术真题(含答案)学校:________班级:________姓名:________考号:________
一、1.选择题(10题)1.用谓词来表达查询要求的方式是
A.关系演算B.关系代数C.关系逻辑D.关系查询
2.在下列关于视图的叙述中,正确的一条是
A.当某一视图被删除后,由该视图导出的其他视图也将被自动删除
B.若导出某视图的基本表删除了,但该视图不受任何影响
C.视图一旦建立,就不能被删除
D.当修改某一视图时,导出该视图的基本表也随之被修改
3.PowerBuilder中的PowerScript.语言包括下述哪些语句?
Ⅰ.变量定义语句
Ⅱ.赋值语句
Ⅲ.流控制语句
Ⅳ.操纵数据库语句
A.仅Ⅰ、Ⅱ和ⅢB.仅Ⅰ、Ⅲ和ⅣC.仅Ⅰ、Ⅱ和ⅣD.都是
4.有两个关系及和S,分别包含15个和10个元组,则在R∪S,R-S,R∩S中不可能出现的元组数目情况是
A.15,5,10B.18,17,7C.21,11,4D.25,15,0
5.SQL中连接表(JoinedTable)允许用户在一个SELECT语句的哪个子句中指定?
A.FROMB.ORDERBYC.GROUPBYD.WHERE
6.在PowerBuilder的数据类型中,integer是多少位带符号数?
A.7B.8C.15D.16
7.在下面列出的数据模型中,哪一个模型是概念数据模型?
A.关系模型B.层次模型C.网状模型D.实体—关联模型
8.操作系统在控制和管理进程的过程中,涉及到()这一重要数据结构,这是进程存在的惟一标志。
A.FCBB.FIFOC.FDTD.PCB
9.设有一个关系:DEPT(DNO,DNAME),如果要找出倒数第3个字母为W,并且至少包含4个字母的DNAME,则查询条件子句应写成WHEREDNAMELIKE
A.'W%'B.'_%W__'C.'W'D.'W%'
10.以下关于队列的叙述中哪一个是不正确的?
A.队列.的特点是先进先出
B.队列既能用顺序方式存储,也能用链接方式存储
C.队列适用于二叉树对称序周游算法的实现
D.队列适用于树的层次次序周游算法的实现
二、填空题(10题)11.数据库语言由数据定义语言(DDL)【】和数据操纵语言(DML)组成,它为用户提供了交互使用数据库的方法。
12.按网络覆盖范围分类,___________用于实现几十公里范围内大量局域网的互联。
13.交换机地址学习是通过读取帧的___________地址并记录帧进入交换机的端口号进行的。
14.投影操作是在关系中选择某些______。
15.客户机/服务器模式在实现中需要解决的主要问题有:标识一个特定的服务、响应并发请求和服务器程序的___________。
16.Oracle服务器由Oracle
【】
和Oracle实例组成
17.在数据库物理结构设计时,要对存储方法进行设计,其中,查询次数由算法决定的是
【】
存放方法
18.给定一个销售交易数据库,从中找出这些交易中的某些数据项和其他一些数据项之间的关联关系,这种数据挖掘一般称为______挖掘。
19.在关系数据模型中,二维表的列称为属性,二维表的行称为______。
20.在数据库的三级模式体系结构中,外模式与模式之间的映像(外模式/模式),实现了数据库的【】独立性。
三、单选题(10题)21.关于水平分割说法错误的是:()
A.根据行的使用特点进行分割
B.分割之后所有表的结构都相同。
C.而存储的数据不同。使用并(Union)操作。
D.使用连接(Join)操作
22.在对全局E-R模型进行优化时,通常利用规范化理论中的()概念消除冗余关系。
A.无损联接B.函数依赖C.范式D.逻辑蕴涵
23.下述哪个成立时,称X→Y为平凡的函数依赖?
A.XYB.YXC.X∩Y=D.X∩Y≠
24.在SQL语言中,()子句能够实现关系参照性规则。
A.PRIMARYKEY
B.NOTNULL
C.FOREIGNKEY
D.FOREIGNKEY...REFERENCES...
25.若让元素1,2,3依次进栈,则出栈次序不可能出现哪一种情况?
A.3,2,1B.2,1,3C.3,1,2D.1,3,2
26.在概念模型中,客观存在并可以相互区别的事物称为______。
A.码B.属性C.联系D.实体
27.下列关于SQLServer数据库管理系统权限的叙述中,哪一条是不正确的?
A.SQLServer数据库管理系统的权限分为服务器权限和数据库权限两种
B.数据库管理员执行数据库管理任务。这是属于数据库权限
C.数据库权限又可以分为数据库对象权限和数据库语句权限两种
D.数据库语句权限授予用户以允许他们创建数据库对象
28.在数据库设计的()阶段,产生DBMS可以接受的源代码。
A.概念设计B.逻辑设计C.物理设计D.实现
29.把电路中的所有元件如晶体管、电阻、二极管等都集成在一个芯片上的元件称为()
A.TransistorB.IntegratedCircuitC.ComputerD.VacummTube
30.为了实现数据库的逻辑结构设计和物理结构设计结果,必须使用具体的DBMS提供的数据定义语言建立实际的数据库,此项操作又称为__________。
A.定义数据结构B.数据装载C.数据库运行D.数据库的试运行
四、C语言程序设计题(10题)31.函数readDat是从文件in.dat中读取20行数据存放到字符串数组XX中(每行字符串长度均小于80)。请编制函数isSort,其函数的功能是:以行为单位对字符串按下面给定的条件进行排序,排序后的结果仍按行重新存入字符串数组XX中,最后调用函数writeDat把结果)XX输出到文件0ut.dat中。
条件:字符串从中间一分为二,左边部分按字符的ASCII值降序排序,右边部分不作处理,排序后,左边部分与右边部分按例子所示进行交换。如果原字符串长度为奇数,则最中间的字符不参加处理,字符仍放在原位置上。
32.已知数据文件in.dat中存有200个四位数,并已调用读函数readDat把这些数存入数组a中,请考生编制一函数jsVal,其功能是:依次从数组a中取出一个四位数,如果该四位数小于该四位数以后的连续五个数且该数是偶数(该四位数以后不满五个数,则不统计),则统计出满足此条件的个数cnt,并把这些四位数存入数组b中,而后对数组b进行升序排序,最后调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到0ut.dat文件中。
注意:部分源程序存在test.c文件中。
程序中已定义数组:a[200],b[200],已定义变量:cnt
请勿改动数据文件in.dat中的任何数据、主函数main、读函数readDat和写函数writeDat的内容。
33.已知数据文件in.dat中存有200个四位数,并已调用读函数readDat把这些数存入数组a中,请考生编制一函数jsVal,其功能是:把千位数字和个位数字重新组成一个新的含有两位数字的数(新数的十位数字是原四位数的千位数字,新数的个位数字是原四位数的个位数字),以及把百位数字和十位数字组成另一个新的含有两位数字的数(新数的十位数字是原四位数的百位数字,新数的个位数字是原四位数的十位数字),如果两个新组成的数均是奇数并且至少有一个数能被5整除,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的个数cnt。最后main函数调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到0ut.dat文件中。
34.已知数据文件in.dat中存有200个四位数,并已调用读函数readDat把这些数存入数组a中,请考生编制一函数jsVal,其功能是:把一个四位数的千位数位置上的值减去百位数位置上的值再减去十位数位置上的值最后减去个位数位置上的值,如果得出的值大于等于零且原四位数是奇数,则统计出满足此条件的个数cnt,并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到0ut.dat文件中。
注意:部分源程序存在test.C文件中。
35.已知数据文件in.dat中存有300个四位数,并已调用读函数readDat把这些数存入数组a中,请编制一数jsValue,其功能是:求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于零的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从大到小的顺序进行排序。最后main函数调用写函数writeDat把数组b中的数输出到文件0ut.dat。
36.在文件in.dat中已存有200个正整数,且每个数均在1000至9999之间。函数readDat是读取这200个数存放到数组aa中。请编制函数jsSort,其函数的功能是:要求按每个数的后三位的大小进行降序排列,如果出现后三位相等的数值,则对这些数值按原始4位数据进行升序排列,将排序后的前10个数存入数组bb中。
最后调用函数writeDat把结果bb输出到文件out.dat中。
37.程序test.C的功能是:把s字符串中的所有字符左移一个位置,串中的第一个字符移到最后。请考生编写函数chg(char*s)实现程序要求,最后调用函数readwriteDAT把结果输出到0ut.dat文件中。
38.已知数据文件in.dat中存有300个四位数,并已调用读函数rcadDat把这些数存入数组a中,请编制一函数jsvalue,其功能是:求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从大到小的顺序进行排序。最后main函数调用写函数writeDat把数组b中的数输出到文件out.dat中。
39.函数ReadDat实现从文件in.dat中读取一篇英文文章存入到字符串数组XX中,请编制函数StrCharJR,其函数的功能是t以该文章中的行为单位把字符串中的所有字符的二进制ASCII值右移4位,高位补0,然后把右移后的字符ASCII值再加上原字符的ASCII值,得到新的值仍存入原字符串对应的位置上,之后把已处理的结果仍按行重新存入数组XX中。最后main函数调用函数WriteOat把结果XX输出到文件out.dat中。
例如:
”z”对应的ASCII值为7AH,二进制值为01111010,右移4位后为00000111,加上原来”2”的ASCII值01111010得到10000001结果。
原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格,并也按字符处理。
注意:部分源程序存放在test.C文件中。
请勿改动主函数main、读函数ReadDat和输出函数WriteDat的内容。
40.已知在文件in.dat中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量s1(整型),金额je(长整型)五部分组成。其中:金额=单价*数量。函数ReadDat读取这100个销售记录并存入结构数组sell中。请编制函数SortDat,其功能要求:按产品代码从小到大进行排列,若产品代码相同,则按金额从小大进行排列,最终排列结果仍存入结构数组sell中。最后main函数调用函数WriteDat把结果输出到文件out.dat中。
提示:若中间变量为PROtemp,则可以直接使用结构赋值语句进行解题;产品代码比较请用函数strcmp进行解题。例如:sell[i]=temp;
注意:部分源程序存放在test.c文件中。
请勿改动主函数main、读函数ReadDat和输出函数WriteDat的内容。
五、设计与应用题(2题)41.某网上商城因为业务发展,原有的系统不能很好的满足需要,因此采用了一套新的经营管理系统,此系统使用SQLServer2008数据库管理系统。此系统上线运行前,需将商场原有的数据导入到新系统中。原有系统使用SQLServer2000,数据结构与新系统不完全一致。因此需要把数据从SQLServer2000导入到SQLServer2008中,为了保证数据一致性,数据导入过程中要求暂停业务且必须在3小时内完成。(1)在原有数据导入新系统的过程中,实施人员发现原有数据量很大,导人数据需要四小时,业务无法接受。经分析某工程师认为,数据导入过程中的数据库I/O很高,但导人数据的程序本身对系统资源占用率很低。该工程师建议将数据导入过程中的数据恢复模式从“完整”模式改为“简单”模式以提高数据导人速度;而另一位工程师则认为此方法未必能提高数据导入速度,而且还可能导致数据丢失,不建议使用此方法。请分析此方法是否能够提高数据导入速度并给出理由,同时分析此操作的数据丢失风险。(5分)(2)在成功导入历史数据后,此系统顺利上线运行。在上线运行的第一周,发现数据库服务器的CPU使用率很高,达到近90%,高峰期间达到100%,且系统内存占用率达到90%,但系统I/O很轻。业务人员反应系统操作速度很慢。为了提高系统运行速度。在不修改应用程序的前提下,两位工程师提出了不同的解决办法:Ⅰ.为服务器增加2颗CPU,缓解CPU使用率很高的问题;Ⅱ.为服务器增加一倍内存,缓解内存使用率很高的问题。考虑成本,现阶段只能按照一种方案实施。请指出在现有情况下,哪种方案更合理并给出理由。(5分)
42.某教务管理系统使用SQLServer2008数据库管理系统,数据库软硬件配置信息如下:Ⅰ.数据库运行在两路IntelXeonE5-26092.4GHzCPU(每路CPU4核心),128GB内存、2块300GB15000转SAS硬盘(RAIDl)的服务器上;Ⅱ.服务器操作系统为Windows200332位企业版,安装SP2补丁;Ⅲ.数据库为SQLServer2008Enterprise(32位),数据库中总数据量近130GB。近一个学期以来,用户反映系统运行缓慢,经程序员定位,确定为数据库服务器响应缓慢,需要进行调优。(10分)
六、单选题[1分](2题)43.在分布式数据库的数据分配中,若所有全局数据有且只有一份,他们被分割成若干切片,每个片段被分配在一个特定场地上,则该策略属于()。
A.集中式B.分割式C.全复制式D.混合式
44.在SQLServer2008中,设有商品表(商品号,商品名,生产13期,单价,类别)。现经常需要执行下列查询:SELECT商品号,商品名,单价FROM商品表WHERE类别IN(ˊ食品ˊ,ˊ家电ˊ)ORDERBY商品号现需要在商品表上建立合适的索引来提高该查询的执行效率。下列建立索引的语句,最合适的是()。
A.CREATEINDEXIdxlON商品表(类别)
B.CREATEINDEXIdxlON商品表(商品号,商品名,单价)
C.CREATEINDEXIdxlON商品表(类别,商品号)INCLUDE(商品名,单价)
D.CREATEINDEXIdxlON商品表(商品号)INCLUDE(商品名,单价)WHERE类别=ˊ食品ˊ0R类别=ˊ家电ˊ
参考答案
1.A解析:本题主要考查了关系代数和关系演算的概念。关系代数是通过对关系的运算来表达查询要求的方式。关系演算是用谓词来表达查询要求的方式。
2.A解析:视图是从一个或几个基本表(或视图)中导出的表,是一个虚表,其既可以被定义,也可以被删除,如导出视图的基本表中的数据发生变化,其视图中查询出来的数据也随之变化,若导出某视图的基本表被删除了,其视图也不存在了,故选项B、C、D是错误的。
3.D解析:PowerScrip,语言由两部分组成:一是与高级程序设计语言类似的语句,有变量定义语句、赋值语句和流控制语句等;二是与数据库的接口语句,嵌套在PowerSctopt中的SQL语句,SQL语句和PowerScript之间可以互传变量,这类语句主要用于操纵数据库。
4.B解析:R∪S是将两个关系R和S的元组合并,其结果是一个新关系;R-S从R关系中去掉S关系也有的元组组成的新关系;R∩S是将两个关系R和S的公共元组组成一个新的关系。
5.A解析:SQL中引入了连接表的概念,它允许用户在一个SELECT语句的FROM子句中指定连接操作,这种链接操作所得到的一个表称为连接表。
6.C解析:PowerBuilder的数据类型integer表示整型,是15位带符号数。
7.D解析:概念模型是按用户的观点对数据和信息建模,也称为信息模型。概念模型语义表达能力强,不涉及信息在计算机中的表示,如实体—联系模型,语义网络模型等。
8.D解析:FCB(文件控制块)是系统为管理文件而设置的一个数据结构,是文件存在的标志,记录了系统管理文件所需要的全部信息;FIFO是先进先出,一般表示某些算法(队列操作、存储页面淘汰等);PCB是进程控制块,描述进程的基本情况以及进程的运行变化过程。
9.B解析:在SQL语言中,我们可以使用两个通配符:%和—,其中“%”表示0个或多个字符,而“_”则表示一个字符。在本题的查找条件中,要求倒数第三个字母为W,应表示成“W__”,并且还要求至少包含4个字母,而当以“%”开头时,它表示的字符可以不存在,所以开头应加一个“_”,那么查询条件子句应写成WHEREDNAMELLIKE'_%W__'。
10.C解析:队列具有先进先出的特性,可以用顺序存储方式存储,也可以用链接方式存储,队列是树的层次次序周游算法的实现。
11.DDL数据控制语言(DCL)
12.城域网【解析】城域网是介于广域网和局域网之接的一种高速网络。城域网的设计目标是满足几十千米范围内的大量企业、机关、公司的多个局域网的互联需求,以实现大量用户之间的数据、语音、图形与视频等多种信息传输。
13.源【解析】交换机地址学习是通过读取帧的源地址并记录帧进入交换机的端口号进行的。
14.属性列属性列
15.安全问题【解析】客户机/服务器模式在实现中需要解决的主要问题有:标识一个特定的服务、响应并发请求和服务器程序的安全问题。
16.数据库一个Oracle服务器由Oracle数据库和Oracle实例组成,Oracle数据库是存储数据的集合,它包括日志文件和控制文件,Oracle实例是一些进程
17.散列查询次数由散列算法决定,散列存放可以提高数据的查询效率
18.关联规则关联规则
19.元组或记录元组或记录
20.逻辑逻辑解析:数据库系统的三级模式是对数据的三个抽象级别。为了能够在内部实现这3个抽象层次之间的联系和转换,数据库管理系统在这三级模式之间提供了两层映像:外模式/模式映像和模式/内模式映像。正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立和物理独立性。
21.D
22.B
23.B解析:当YX时,称X→Y为平凡的函数依赖。
24.D
25.C解析:栈是限制仅在表的一端进行插入和删除运算的线性表,通常称插入、删除的这一端为栈顶(Top),另一端称为栈底(Bottom)。当表中没有元素时称为空栈。
根据上述定义,每次删除(退栈)的总是当前栈中“最新”的元素,即最后插入(进栈)的元素,而最先插入的是被放在栈的底部,要到最后才能删除。根据上述原理,C)3,1,2,既然先出栈的是3,说明1,2已经进栈,那么1不可能在2之前出栈。
26.D解析:在概念模型中,客观存在并可以相互区别的事物称为实体。实体可以是具体的人、事物,也可以是抽象的概念和联系。
27.B
28.D
29.B
30.A
31.\n【审题关键句】以行为单位从字符串左边部分降序排序,排序后左边部分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字符不参加处理。
\n【解题思路】
\n①定义循环变量i、j、k和整型变量len、p。
\n②第一层for循环中,循环变量i从0开始,依次递增直到其值等于20,实现对20行数据的逐行处理。在循环体中,对于i行首先调用函数strlen(xx[i])求得第i行字符串的长度,并把其值赋给变量len,再用1en除以2,得到第i行字符串长度的一半,赋给变量P。在第二层for循环中,循环变量J从0开始,依次递过来增直到其值等于(p-1),在第三层for循环中,循环变量k从J+1开始,依次递过来增直到其值等于P,比较字符xx[i][j]ASCII码值与xx[i][k]ASCII码值的大小,如果字符xx[i]啪的ASCII码值小于xx[i][k]的ASCII码值,则两者进行互换实现对第i行字符串左半部分的字符串按降序排列。
\n③用变量len的值对2求余数,如果余数为1,则调用函数字符串拷贝函数strcpy,把从字符串xx[i]+P+1开始直到字符串xx[i]的结尾的子字符拷贝到字符串变量str中,再调用字符串连接函数stmcat把字符串xx[i]的中间字符连接到字符串变量str的后面,再调用字符串连接函数stmcat把字符串xx[i]的左半部分的子字符串连接到变量str的后面;如果余数不等于1,则调用字符串拷贝函数strcpy,把从字符串xx[i]+P开始直到字符串xx[i]的结尾的子字符拷贝到字符串变量str中,再调用字符串连接函数stmcat把字符串xx[i]的左半部分的子字符串连接到变量str的后面,实现字符串xx[i]左右部分子字符串的交换。
\n④调用字符串拷贝函数strcpy,把字符串变量str的值拷贝到字符串xx[i],实现把排序后的结果仍按行重新存入字符串数组XX中。
\n【参考答案】
\n
\n
32.【审题关键句】小于后连续5个数,偶数,从小到大排序。
\n【解题思路】
\n①首先定义两个循环整型变量i、j和一个用于数据交换的整型变量ab。
\n②然后在for循环语句中,先指定循环变量i从0开始,依次递增到MAX-5(到MAX.5的原因是因为从倒数第5个数开始,其后面的数都不满5个数,与题目要求不符,因此可以省略最后5个数),接着对每个数组元素a[i]判断其是否为偶数且小于其后面连续的5个数,然后把满足此条件的数组元素a[i]赋给数组元素b[cnt],同时数组的下标变量cnt加1。③最后,用双重for循环语句对数组b中的数组元素两两比较大小,如果前一个数组元素大于后一个数组元素,则两者进行互换,实现对数组b进行升序或降序的排列。
\n【参考答案】
\n
\n
33.\n【审题关键句】千位+个位与百位+十位,奇数,整除,从大到小排序。
\n【解题思路】
\n本题类似第27套试题,通过审题可以发现主要是对四位数的筛选条件有所不同,体现在两个方面:①分解后重新组合成两位数的方式不同,参考答案的第8、9条语句重新指定两位数的组合方式;②新组台的两位数的奇数的判断及整除判断,参考答案的第10条语句。
\n【参考答案】
\n
\n
34.\n【审题关键句】千位-百位-十位-个位,结果大于等于零且原四位数是奇数,统计出满足此条件的个数,并按从小到大的顺序存入数组。
\n【解题思路】
\n本题类似第9套试题,通过审题可以发现主要有两个不同点:一是要求统计的四位数的条件是“千位一百位-十位-个位>=0”,二是要求该四位数是奇数,这两个不同点都体现在参考答案的第8条语句中,对该语句进行修改即可,其中,可以判断奇数的表达式是“a[i]%2”。
\n【参老答案】
\n
\n
\n
35.\n【审题关键句】个位-千位-百位-十位数大于零的个数,把所有满足此条件的数依次存入数组,按从大到小的顺序排序。
\n【解题思路】
\n本题类似第9套试题,通过审题可以发现有两个不同点:①要求统计的四位数的条件是“个位一千位-百位一十位数大于零的个数”,参考答案的第8条语句修改if语句的判断条件即可。②将统计结果按从大到小的顺序排序,参考答案的第13条语句,修改两数组元素的大小比较符即可。另外,对于数据交换的整型变量tmp可以自定义其变量名。
\n【参考答案】
\n
\n
36.\n【审题关键句】按每个数的后三位降序排列,然后取出满足此条件的前10个数依次存入数组;如果后三位的数值相等,则按原先的数值进行升序排列。
\n【解题思路】本题类似第7套试题,通过审题可以发现主要有两个不同点:①按每个数的后三位降序排列,参考答案的第5条语句,修改两数组元素的大小比较符即可;②后三位的数值相等则按原先的数值进行升序排列,参考答案的第13条语句,同样也是修改两数组元素的大小比较符即可。
\n【参考答案】
\n
\n
\n
37.【审题关键句】所有字符左移一个位置,串中的第一个字符移到最后。
\n【解题思路】
\n定义循环变量i,字符变量first和字符指针变量P,并使P指向字符串S。
\n②把字符串S的第一个字符赋给first变量保存起来。
\n③在for循环语句中,循环变量i从0开始,依次递增直到其值等于或大于(int)strlen(s)一1,把*(p+i+1)的值赋给+(p+i),实现把字符串S中的所有字符左移一个位置,循环结束后,把first的值赋给p[strlen(s).1],即把字符串的首字符移动到字符串的最后位置上。
\n【参考答案】
\n
\n
38.\n【审题关键句】千位+百位等于十位+个位的数的个数,把所有满足此条件的四位数依次存入数组,然后对数组按从大到小的顺序进行排序。
\n【解题思路】
\n本题类似第9套试题,通过审题可以发现有两个不同点:①要求统计的四位数的条件是“千位+百位=十位+个位”,参考答案的第8条语句修改if语句的判断条件即可。②将统计结果按从大到小的顺序排序,参考答案的第13条语句,修改两数组元素的大小比较符即可。另外,对于数据交换的整型变量tmp可以自定义其变量名。
\n【参考答案】
\n
\n
\n
39.\n【审题关键句】字符的ASCII值右移4位二进制位,高位补0后加原字符的ASCII值。
\n【解题思路】
\n①定义两个循环变量i、j和一个无符号字符变量tmp。
\n②在第一个for循环语句中,循环变量i从0开始,依次递增直到其值等于文章最大行数maxline。在第二个for循环中,从每行第1个字符开始,依次递增直到其值等于该行字符串的最大长度,然后在循环体中指定每次循环时,将第i行第i个位置上的字符的ASCII值的二进制数右移4位,然后将所得的值再加上原字符的ASCII码值。
\n【参考答案】
\n
40.\n【审题关键句】计算金额,按产品代码从小到大进行排列,相同的则按金额从小到大排列,结果存入结构数组。
\n【解题思路】
\n本题类似第57套试题,通过审题可以发现主要是排序条件的设置要求有所不同,参考答案的第8行进行修改即可。
\n【参考答案】
\n
\n
41.【解题思路】(1)SQLServer2008的数据恢复模式有三种:①简单恢复模式,此方法可以最大幅度减少事务13志的管理开销,因为恢复模式不备份事务日志。但是如果数据库损坏,则简单恢复模式将面临极大的数据丢失风险。在这种恢复模式下,数据只能恢复到最新备份状态。因此对于用户数据库,简单恢复模式只适用于测试和开发数据库,或用于主要包含只读数据的数据库。②完整恢复模式,此方法可以完整的记录所有事务,并将事务日志记录保留到对其备份完毕为止。此方法相对简单恢复模式来说,更占用时间。③大容量日志恢复模式,此方法只对大容量操作进行最小记录,使事务日志不会被大容量加载操作所填充。在数据导入过程中,所有的业务都是暂停的,因此可以采用简单恢复模式提高数据导入速度。且只在数据导入的过程中暂时的修改恢复模式,因此数据并不会丢失。(2)提高数据库性能的方法一般是从外部环境、调整内存分配、调整磁盘I/0、调整竞争资源等几方面着手来改变数据库的参数。SQLServer2008采用将数据缓冲在内存的方式,因此在数据库系统运行的过程中会占用一定的内存,又因为I/O并不存在问题,说明内存尚满足需求。CPU使用率很高,表明CPU的计算能力不足,应该增加CPU的数量。【参考答案】(1)此方法能够提高数据导入速度。原因:此系统I/O很高,修改恢复模式后,系统最大限度减少日志开销,可提高导入速度。由于仅在数据导入过程中修改恢复模式,所以并无数据丢失风险。(2)第一种方案比较合理。原因:SQLServer2008采用将数据缓冲在内存的方式,因此内存的使用率比较高是正常情况,且现阶段I/O并不存在问题,表明内存满足需求。此阶段CPU使用率很高,表明CPU计算资源不足,因此增加CPU数量对解决问题有效。
42.【解题思路】数据库性能优化的基本原则就是通过尽可能少的磁盘访问获得所需要的数据。SQLSERVER性能优化一般从数据库设计、应用程序编码、硬件优化、数据库索引、SQL语句、事务处理几个方面人手考虑问题。(1)分析阶段:在系统分析阶段往往有太多需要关注的地方,系统各种功能性、可用性、可靠性、安全性需求吸引了我们大部分的注意力,但必须注意的是,性能往往是很重要的非功能性需求,必须根据系统的特点确定其实时性需求、响应时间的需求、硬件的配置等。最好能有各种需求量化的指标。(2)设计阶段:例如数据库逻辑设计规范化;合理的冗余;主键的设计;外键的设计;字段的设计;数据库物理存储和环境的设计;数据库的物理存储、操作系统环境及网络环境的设计,皆使得我们的系统在将来能适应较多用户的并发操作和较大的数据处理量。这里需要注意文件组的作用,适用文件组可以有效的把I/O操作分散到不同的物理硬盘,提高并发能力。(3)系统设计:整个系统的设计,特别是系统结构的设计对性能具有很大的影响。对于一般的OLTP系统,可以选择C/S结构、三层的C/S结构等,不同的系统结构其性能的关键也有所不同。系统设计阶段应归纳某些业务逻辑在数据库编程阶段实现,数据库编程包括数据库存储过程、触发器和函数。用数据库编程实现业务逻辑的好处是减少网络流量并能更充分利用数据库的预编译和缓存功能;索引设计阶段可以根据功能和性能的需求进行初步的索引设计,这里需要根据预计的数据量和查询来设计索引,可能与将来实际使用时有所区别。(4)编码阶段:编码阶段首先需要所有程序员具备优化意识,也就是在实现功能的同时具备考虑优化性能的思想。数据库是能进行集合运算的工具,所谓集合运算实际是批量运算,即是尽量减少在客户端进行大数据量的循环操作,而用SQL语句或者存储过程代替。这
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 45965-2025碳酸钠(纯碱)行业碳减排技术指南
- 汉字猜字谜课件
- 贵州省贵阳市普通高中2024-2025学年高一下学期期末监测化学试题(含答案)
- 2024-2025学年江苏省南京市六合区苏教版四年级下册期末考试数学试卷(含部分答案)
- 0-3岁婴幼儿保育与教育(1+x幼儿照护)知到智慧树答案
- 餐饮行业市场潜力分析
- 2024年秋新北师大版数学一年级上册教学课件 第四单元 10以内数加与减 第8课时 挖红薯
- 永州消防知识培训课件
- 跨境电子商务双语教程 习题和答案Chapter 4
- 水表检定基础知识培训课件
- 2024检车员青工竞赛理论考试题库-下(判断题)
- 2024工勤晋级计算机信息处理员高级技师操作技能考核模拟题库含答案全套
- 品管圈PDCA提高手卫生依从性手卫生依从性品管圈完整版
- NB-T+31010-2019陆上风电场工程概算定额
- JT-T-1234-2019道路冷链运输服务规则
- 小学数学一年级下册(一年级升二年级)暑假链接提升训练题(共26份251题)
- 考研英语长难句分析技巧及实战70例
- 安全保卫工作会议记录6篇
- DBJ∕T15-232-2021 混凝土氯离子控制标准
- 刑事报案材料模板(涉嫌诈骗罪)
- 乳制品配送服务质量保障方案
评论
0/150
提交评论