论文部分内容阅读
根据全国考生的答题目情况,教育部考试中心最新统计出了全国计算机等级考试(NCRE)各级各科不同题目的得分情况。在最近的几期里,本刊已独家发布教育部考试中心对于二级C++、VB、VF等科目的重难点真题进行的权威点评,其他级别、科目的点评将陆续刊登,敬请关注。
2008年下半年全国计算机等级考试三级数据库技术笔试卷的整卷难度为0.57,信度为0.89。整体来说,全卷难度适中,信度较好。下面对试卷中错误率高的部分试题作简要分析:
选择题第14题:下列排序方法中,哪一种方法的总的关键码比较次数与记录的初始排列状态无关?
A)直接插入排序 B)直接选择排序
C)起泡排序 D)快速排序
解答:
排序是数据处理中的一种重要运算,常用的方法有插入排序、选择排序、交换排序、归并排序等等。
直接插入排序指在已排好序的序列中查找插入位置时用顺序法查找,找到插入位置后将该位置原来的记录及其后面所有的记录顺序后移一个位置,空出该位置来插入记录。在将第i个结点往已排好次序的序列中插入时,在包括i-1个结点的序列中找该结点的正确插入位置。
直接选择排序对文件进行n-1趟扫描,第i趟扫描从剩下的n-i+1个记录中选出关键码值最小(大)的记录与第i个记录交换。直接选择排序第一趟从n个关键码值中选出最小(大)关键码,需要n-1次比较;第二趟从n-1个关键码值中选出最小(大)关键码,需要做n-2次比较,依此类推。所以,直接选择排序总的比较次数为n(n-1)/2,它与初始排列状态无关。
起泡排序是交换排序中的一种方法,它是将排序的记录顺次两两比较,若为逆序则进行交换。若某一趟起泡过程中没有发生任何交换,或排序已经进行了n-1趟,则排序结束。所以,若待排序文件开始已按关键码值排好序,则一趟就完成了排序,只需做n-1次关键码值比较;如果初始顺序是最小(大)关键码值在最后的位置,则需要进行n-1趟起泡,其比较次数将达到最大:n(n-1)/2。
快速排序是对起泡排序的一种改进,它在待排序序列中任取一个记录,以它为基准用交换的方法将所有的记录分成两部分,关键码值比它小的在一个部分,关键码值比它大的在另一个部分,再分别对两个部分实施上述过程,直到排序完成。
综上可知,该题的正确选项是B。本题有36%的考生选择了正确答案,28%的考生选择答案C,选择A和D的考生各为18%。从数据看,有较多考生对常用的排序方法掌握不够,故而选择了错误答案。
选择题第35题:有包含如下三个关系的“学生—选课—课程”数据库:
S(S#,SNAME,SEX,DEPARTMENT)主码是S#
C(C#,CNAME,TEACHER)主码是C#
SC(S#,C#,GRADE)主码是(S#,C#)
下列关于保持数据库完整性的叙述中,哪一条是不正确的?
A)向关系SC插入元组时,S#和C#都不能是空值(NULL)
B)可以任意删除关系S中的元组
C)向任何一个关系插入元组时,必须保证该关系主码值的唯一性
D)可以任意删除关系SC中的元组
解答:
为维护数据库中数据的完整性,必须遵循三类完整性规则。执行插入操作时,首先检查实体完整性规则,再检查参照完整性规则,最后检查用户定义完整性规则;执行删除操作时,一般只需检查参照完整性规则;执行更新操作时,则看成是先执行删除操作,再执行插入操作。
对于本题而言,在向关系SC插入元组时,由于S#和C#是SC中的主码,按照实体完整性规则,它们均不能取空值,所以A选项的叙述是正确的;由于关系S中的主码S#是关系SC的外码,因此,在删除关系S中元组时,按照参照完整性规则,需要检查被删除行在主码属性上的值是否被关系SC的外码引用,若被引用,则有可能被拒绝删除,故选项B的叙述是不正确的;实体完整性规则是针对关系而言的,在关系模型中以主码作为唯一性标识,因此,向任何一个关系插入元组时,都应该保证该关系主码值的唯一性,故选项C的叙述是正确的;由于关系SC不是被参照关系,所以可以删除其元组,因此,选项D的叙述也是正确的。
综上所述,该题的正确答案为选项B。本题考查的是数据库数据完整性规则的有关概念,64%的考生选择了正确答案,31%的考生选择了答案D,其余考生选择了答案A或C。近1/3考生选择了D,表明这部分考生对参照关系与被参照关系的概念还不是十分清楚。
填空题第15题: 保证事务的任何一种调度执行后数据库总处于一致状态,这是由数据库系统的【】部件负责的。
解答:
事务是构成单一逻辑工作单元的操作集合。为保证事务的正确执行,数据库系统需要维护以下事务特性:原子性、一致性、隔离性和持久性。
事务的原子性由数据库管理系统中事务管理部件来保证,一致性由对该事务编码的应用程序来负责,持久性由数据库系统中的恢复管理部件来保证,隔离性由数据库管理系统中的并发控制部件负责。事务在并发执行时,往往会发生某种交叉执行,从而导致数据库不一致的状态。并发控制部件确保事务并发执行后的系统状态与这些事务以某种次序一个接一个地执行后的状态是等价的,保证任何调度执行后数据库总处于一致状态。
该题的正确答案是:并发控制。
本题只有15%的考生给出了正确答案。事务及事务处理是数据库系统中的一个重要概念,从数据来看,考生对其掌握不够。
2008年下半年全国计算机等级考试三级数据库技术笔试卷的整卷难度为0.57,信度为0.89。整体来说,全卷难度适中,信度较好。下面对试卷中错误率高的部分试题作简要分析:
选择题第14题:下列排序方法中,哪一种方法的总的关键码比较次数与记录的初始排列状态无关?
A)直接插入排序 B)直接选择排序
C)起泡排序 D)快速排序
解答:
排序是数据处理中的一种重要运算,常用的方法有插入排序、选择排序、交换排序、归并排序等等。
直接插入排序指在已排好序的序列中查找插入位置时用顺序法查找,找到插入位置后将该位置原来的记录及其后面所有的记录顺序后移一个位置,空出该位置来插入记录。在将第i个结点往已排好次序的序列中插入时,在包括i-1个结点的序列中找该结点的正确插入位置。
直接选择排序对文件进行n-1趟扫描,第i趟扫描从剩下的n-i+1个记录中选出关键码值最小(大)的记录与第i个记录交换。直接选择排序第一趟从n个关键码值中选出最小(大)关键码,需要n-1次比较;第二趟从n-1个关键码值中选出最小(大)关键码,需要做n-2次比较,依此类推。所以,直接选择排序总的比较次数为n(n-1)/2,它与初始排列状态无关。
起泡排序是交换排序中的一种方法,它是将排序的记录顺次两两比较,若为逆序则进行交换。若某一趟起泡过程中没有发生任何交换,或排序已经进行了n-1趟,则排序结束。所以,若待排序文件开始已按关键码值排好序,则一趟就完成了排序,只需做n-1次关键码值比较;如果初始顺序是最小(大)关键码值在最后的位置,则需要进行n-1趟起泡,其比较次数将达到最大:n(n-1)/2。
快速排序是对起泡排序的一种改进,它在待排序序列中任取一个记录,以它为基准用交换的方法将所有的记录分成两部分,关键码值比它小的在一个部分,关键码值比它大的在另一个部分,再分别对两个部分实施上述过程,直到排序完成。
综上可知,该题的正确选项是B。本题有36%的考生选择了正确答案,28%的考生选择答案C,选择A和D的考生各为18%。从数据看,有较多考生对常用的排序方法掌握不够,故而选择了错误答案。
选择题第35题:有包含如下三个关系的“学生—选课—课程”数据库:
S(S#,SNAME,SEX,DEPARTMENT)主码是S#
C(C#,CNAME,TEACHER)主码是C#
SC(S#,C#,GRADE)主码是(S#,C#)
下列关于保持数据库完整性的叙述中,哪一条是不正确的?
A)向关系SC插入元组时,S#和C#都不能是空值(NULL)
B)可以任意删除关系S中的元组
C)向任何一个关系插入元组时,必须保证该关系主码值的唯一性
D)可以任意删除关系SC中的元组
解答:
为维护数据库中数据的完整性,必须遵循三类完整性规则。执行插入操作时,首先检查实体完整性规则,再检查参照完整性规则,最后检查用户定义完整性规则;执行删除操作时,一般只需检查参照完整性规则;执行更新操作时,则看成是先执行删除操作,再执行插入操作。
对于本题而言,在向关系SC插入元组时,由于S#和C#是SC中的主码,按照实体完整性规则,它们均不能取空值,所以A选项的叙述是正确的;由于关系S中的主码S#是关系SC的外码,因此,在删除关系S中元组时,按照参照完整性规则,需要检查被删除行在主码属性上的值是否被关系SC的外码引用,若被引用,则有可能被拒绝删除,故选项B的叙述是不正确的;实体完整性规则是针对关系而言的,在关系模型中以主码作为唯一性标识,因此,向任何一个关系插入元组时,都应该保证该关系主码值的唯一性,故选项C的叙述是正确的;由于关系SC不是被参照关系,所以可以删除其元组,因此,选项D的叙述也是正确的。
综上所述,该题的正确答案为选项B。本题考查的是数据库数据完整性规则的有关概念,64%的考生选择了正确答案,31%的考生选择了答案D,其余考生选择了答案A或C。近1/3考生选择了D,表明这部分考生对参照关系与被参照关系的概念还不是十分清楚。
填空题第15题: 保证事务的任何一种调度执行后数据库总处于一致状态,这是由数据库系统的【】部件负责的。
解答:
事务是构成单一逻辑工作单元的操作集合。为保证事务的正确执行,数据库系统需要维护以下事务特性:原子性、一致性、隔离性和持久性。
事务的原子性由数据库管理系统中事务管理部件来保证,一致性由对该事务编码的应用程序来负责,持久性由数据库系统中的恢复管理部件来保证,隔离性由数据库管理系统中的并发控制部件负责。事务在并发执行时,往往会发生某种交叉执行,从而导致数据库不一致的状态。并发控制部件确保事务并发执行后的系统状态与这些事务以某种次序一个接一个地执行后的状态是等价的,保证任何调度执行后数据库总处于一致状态。
该题的正确答案是:并发控制。
本题只有15%的考生给出了正确答案。事务及事务处理是数据库系统中的一个重要概念,从数据来看,考生对其掌握不够。