事务T1中有两次查询学生表中的男生人数,在这两次查询执行中间,事务T2对学生表中加入了一条男生记录,导致T1两次查询的结果不一致,此类问题属于(请作答此空),为解决这一问题,应采用的隔级别是( )。A.不可重复读 B.读脏数据 C.丢失修改 D.幻影现象

题目
事务T1中有两次查询学生表中的男生人数,在这两次查询执行中间,事务T2对学生表中加入了一条男生记录,导致T1两次查询的结果不一致,此类问题属于(请作答此空),为解决这一问题,应采用的隔级别是( )。

A.不可重复读
B.读脏数据
C.丢失修改
D.幻影现象

相似考题
更多“事务T1中有两次查询学生表中的男生人数,在这两次查询执行中间,事务T2对学生表中加入了一条男生记录,导致T1两次查询的结果不一致,此类问题属于(请作答此空),为解决这一问题,应采用的隔级别是( )。”相关问题
  • 第1题:

    在考生文件夹下“student.mdb”数据库中有student、选课表和课程表。

    (1)以student、选课表和课程表为数据源,创建参数查询“按ID查询成绩”,实现输入学生的ID显示学生成绩,参数提示为“请输入学生ID',结果显示学生姓名、课程名称和成绩字段。查询结果如图所示。

    (2)以student、选课表和课程表为数据源,创建生成表查询成绩表,查询每个学生选

    课的成绩,结果显示学生姓名、课程名称和成绩字段?生成成绩表如图所示。


    正确答案:

  • 第2题:

    考生文件夹下存在一个数据库文件“samp2.mdb”,里面已经设计好“tStud”、“tScore”、“tCourse”三个关联的表对象和一个空表“tTemp”,试按以下要求完成设计:

    (1)创建一个查询,查找并显示年龄在18~20之间(包括18岁和20岁)的学生“姓名”、“性别”、“年龄”和“入校时间”,所建查询名为“qT1”。

    (2)创建一个查询,将所有学生设置为非党员,所建查询名为“qT2”。

    (3)创建一个交叉表查询,要求能够显示各门课程男女生不及格人数,结果如下图所示,所建查询名为“qT3”。

    要求:直接用查询设计视图建立交叉表查询,不允许用其他查询做数据源。交叉表查询不做各行小计。

    (4)创建一个查询,将有不及格成绩的学生的“姓名”、“性别”、“课程名”和“成绩”等信息追加到“tTemp”表的对应字段中,并确保“tTemp”表中男生记录在前、女生记录在后,所建查询名为“qT4”;要求创建此查询后,运行该查询,并查看运行结果。


    正确答案:【操作步骤】 步骤1:打开“samp2.mdb”数据库窗口选中“查询”对象单击“新建”按钮选中“设计视图”单击“确定”按钮。在“显示表”对话框中双击表“tStud”关闭“显示表”对话框。 步骤2:分别双击“姓名”、“性别”、“年龄”、“入校日期”字段。 步骤3:在“年龄”字段的“条件”行输入:Between 18And20。如图2-228所示。 步骤4:单击工具栏中的“保存”按钮保存为“qT1”单击“确定”按钮关闭设计视图。 (2)【操作步骤】 步骤1:选中“查询”对象单击“新建”按钮选中“设计视图”单击“确定”按钮。在“显示表”对话框双击表“tStud”关闭“显示表”对话框。 步骤2:双击“党员否”字段。 步骤3:执行【查询】→【更新查询】菜单命令在“党员否”字段“更新到”行输入:Off(或输入No、False、0)如图2-229所示。 步骤4:单击工具栏中的“运行”按钮在弹出的对话框中选择“是”按钮。 步骤5:单击工具栏中的“保存”按钮保存为“qT2”单击“确定”按钮关闭设计视图。 (3)【操作步骤】 步骤1:选中“查询”对象单击“新建”按钮选中“设计视图”单击“确定”按钮。在“显示表”对话框中双击表“tStud”、“tCourse”和“tScore”关闭“显示表”对话框。 步骤2:执行【查询】→【交叉表查询】菜单命令执行【视图】→【总计】菜单命令。 步骤3:在“字段”行的第一列输入“成绩之计数:成绩”分别双击“tStud”表“性别”、“tCourse”表“课程名”和“成绩”字段。 步骤4:在“性别”和“课程名”字段的“总计”行选择“分组”在“成绩之计数:成绩”的“总计”行选择“计数”在“成绩”字段的“总计”行选择“条件”。 步骤5:分别在“性别”、“课程名”、“成绩之计数:成绩”字段的“交叉表”行下拉列表中选中“行标题”、“列标题”和“值”。 步骤6:在“成绩”字段的“条件”行中输入:60如图2-230所示。 步骤7:单击工具栏中的“保存”按钮保存为“qT3”单击“确定”按钮关闭设计视图。 (4)【操作步骤】 步骤1:选中“查询”对象单击“新建”按钮选中“设计视图”单击“确定”按钮。在“显示表”对话框中分别双击表“tStud”、“tCourse”和“t$core”关闭“显示表”对话框。 步骤2:执行【查询】→【追加查询】菜单命令在弹出的对话框中表名称下拉列表中选择“tTemp”单击“确定”按钮。 步骤3:双击“tStud”表“姓名”和“性别”字段、“tCourse”表“课程名”和“成绩”字段。 步骤4:在“性别”字段的“排序”行选择“升序”。 步骤5:在“成绩”字段的“条件”行输入:<60。 步骤6:单击工具栏中的“运行”按钮在弹出的对话框中选择“是”。如图2-231所示。 步骤7:单击工具栏中的“保存”按钮保存为“qT4”单击“确定”按钮关闭设计视图。
    【操作步骤】 步骤1:打开“samp2.mdb”数据库窗口,选中“查询”对象,单击“新建”按钮,选中“设计视图”,单击“确定”按钮。在“显示表”对话框中双击表“tStud”,关闭“显示表”对话框。 步骤2:分别双击“姓名”、“性别”、“年龄”、“入校日期”字段。 步骤3:在“年龄”字段的“条件”行输入:Between 18And20。如图2-228所示。 步骤4:单击工具栏中的“保存”按钮,保存为“qT1”,单击“确定”按钮,关闭设计视图。 (2)【操作步骤】 步骤1:选中“查询”对象,单击“新建”按钮,选中“设计视图”,单击“确定”按钮。在“显示表”对话框双击表“tStud”,关闭“显示表”对话框。 步骤2:双击“党员否”字段。 步骤3:执行【查询】→【更新查询】菜单命令,在“党员否”字段“更新到”行输入:Off(或输入No、False、0),如图2-229所示。 步骤4:单击工具栏中的“运行”按钮,在弹出的对话框中选择“是”按钮。 步骤5:单击工具栏中的“保存”按钮,保存为“qT2”,单击“确定”按钮,关闭设计视图。 (3)【操作步骤】 步骤1:选中“查询”对象,单击“新建”按钮,选中“设计视图”,单击“确定”按钮。在“显示表”对话框中双击表“tStud”、“tCourse”和“tScore”,关闭“显示表”对话框。 步骤2:执行【查询】→【交叉表查询】菜单命令,执行【视图】→【总计】菜单命令。 步骤3:在“字段”行的第一列输入“成绩之计数:成绩”,分别双击“tStud”表“性别”、“tCourse”表“课程名”和“成绩”字段。 步骤4:在“性别”和“课程名”字段的“总计”行选择“分组”,在“成绩之计数:成绩”的“总计”行选择“计数”,在“成绩”字段的“总计”行选择“条件”。 步骤5:分别在“性别”、“课程名”、“成绩之计数:成绩”字段的“交叉表”行下拉列表中选中“行标题”、“列标题”和“值”。 步骤6:在“成绩”字段的“条件”行中输入:60,如图2-230所示。 步骤7:单击工具栏中的“保存”按钮,保存为“qT3”,单击“确定”按钮,关闭设计视图。 (4)【操作步骤】 步骤1:选中“查询”对象,单击“新建”按钮,选中“设计视图”,单击“确定”按钮。在“显示表”对话框中分别双击表“tStud”、“tCourse”和“t$core”,关闭“显示表”对话框。 步骤2:执行【查询】→【追加查询】菜单命令,在弹出的对话框中表名称下拉列表中选择“tTemp”,单击“确定”按钮。 步骤3:双击“tStud”表“姓名”和“性别”字段、“tCourse”表“课程名”和“成绩”字段。 步骤4:在“性别”字段的“排序”行选择“升序”。 步骤5:在“成绩”字段的“条件”行输入:<60。 步骤6:单击工具栏中的“运行”按钮,在弹出的对话框中选择“是”。如图2-231所示。 步骤7:单击工具栏中的“保存”按钮,保存为“qT4”,单击“确定”按钮,关闭设计视图。 解析:(1)本题考查简单查询。
    (2)本题考查更新查询的设计方法。
    (3)本题考查交叉表查询的应用。
    (4)本题考查多表的条件查询。

  • 第3题:

    分别查询男生和女生的入校总分的平均分,并将结果合并成一个查询结果。请填空补充下面的SELECT语句: SELECT性别,AVG(入校总分)AS平均分; FROM学生表WHERE性别="女"【 】;【 】SELECT性别,AVG(入校总分)AS平均分; FROM学生表WHERE性别="男"GROUP BY性别


    正确答案:GROUP BY性别 UNION
    GROUPBY性别,UNION

  • 第4题:

    在考生文件夹下的“Acc2.mdb”数据库中有“student”、“课程”和“成绩”3张表。 (1)以“studenl”表为数据源,创建查询“查询1”,查询学生名字中出现“小”字的学生信息。结果显示“student”表中的全部字段。 (2)创建宏“宏1”,运行“查询1”。查询结果如图l所示。


    正确答案:
    (1)打开Aec2.mdb”数据库窗口单击“查询”对象,单击“新楚”按钮,选择“设计视图”,单击“确定”按钮。弹出“显示表”对话柜,添加“student”表,单击“关闭”按钮,关闭“显示表”对话框。选择“student.*”和“姓名”字段,在“姓名”字段行对应内“条件”行输入“Like”*小*””。单击工具栏中的“保存”按钮,在弹出的“另存为”对话框中输入查询名字“查询l”单击“确定”按钮关闭查询设计视图。
    (2)在‘Acc2.mdb”数撵库窗口中单击“宏”对象。剪击“新建”按钮,在“操作”列选择“0penQuery”,在“查询名称”行选择“查询1”。单击工具栏中的“保存”按钮,弹出“另存为”对话框,输入宏的名称々“宏1”,关闭宏设计视图。

  • 第5题:

    事务T1中有两次查询学生表中的男生人数,在这两次查询执行中间,事务T2对学生表中加入了一条男生记录,导致T1两次查询的结果不一致,此类问题属于( ),为解决这一问题,应采用的隔级别是(请作答此空)。

    A.Read Uncommitted
    B.Read Committed
    C.Repeatable Read
    D.Serializable

    答案:D
    解析:
    本题考査数据库并发控制的基础知识。同一事务内,对数据库的两次条件完全相同的査询,其访问的记录应该完全相同。若两次访问中间数据库被其他事务改变,倒得两次査询所访问的记录不同,称为幻影现象。加锁机制的封锁对象分为表和记录,锁的类型相应称为表级锁和行级锁。当加行级锁时,未加锁的记录可能被修改为符合查询条件,或者新插入的记录符合查询条件,导致二次查询访问的记录数增加。而当采用表级锁时,表中所有记录在同一事务的两次查询中间是不允许改变的,即可解决此问题。加表级锁的隔离级别是Serializable。

  • 第6题:

    事务T1读取数据A后,数据A又被事务T2所修改,事务T1再次读取数据A时,与第一次所读值不同。这种不一致性被称为( ),其产生的原因是破坏了事务T1的(请作答此空)。

    A.原子性
    B.一致性
    C.隔离性
    D.持久性

    答案:C
    解析:
    数据库的并发操作通常会带来3个问题:丢失更新问题、读脏数据问题和不可重复读问题。依题意,事务T1读取数据A后,数据A又被事务T2所修改,事务T1再次读取数据A时,与第一次所读值不同。这种不一致性被称为不可重复读,其产生的原因是破坏了事务T1的隔离性。隔离性(Isolation)是指在多个事务并发(同时)执行,每个事务都感觉不到系统中有其他的事务在执行。

  • 第7题:

    事务的等待图中出现环,使得环中的所有事务都无法执行下去,这类故障属于(请作答此空);解决的办法是选择环中代价最小的事务进行撤销,再将其置入事务队列稍后执行。假如选中事务T1,在T1撤销过程中需要对其进行( )操作。

    A.事务故障
    B.系统故障
    C.介质故障
    D.病毒

    答案:A
    解析:
    常见的数据库故障类型分为事务故障、系统故障和介质故障。其中,事务故障是指事务在运行至正常中止点前被中止,此时恢复子系统应利用日志文件撤销(UNDO)此事务对数据库已做的修改。依题意,事务的等待图中出现环,使得环中的所有事务都无法执行下去,这类故障属于事务故障。其解决的办法是选择环中代价最小的事务进行撤销,再将其置入事务队列稍后执行。假如选中事务T1,在T1撤销过程中需要对其进行UNDO操作。

  • 第8题:

    现要将S1服务器上的DB1数据库中的T1表中的数据导入到S2服务器的DB2数据库的T2表中,假设T2表已经建立。在选择目的地时使用U2用户进行操作,则U2必须具有()

    • A、对T2表的插入权
    • B、对T1表的查询权和对T2表的插入权
    • C、对T1表的插入权和对T2表的查询权
    • D、对T1表的查询权

    正确答案:A

  • 第9题:

    在“学生表”中有字段:学号、姓名、班级和专业,要删除全部记录的“班级”字段的全部内容,应使用的查询是()

    • A、更新查询
    • B、追加查询
    • C、生成表查询
    • D、删除查询

    正确答案:A

  • 第10题:

    如果事务T1需要两次读取同一数据项A,但是在两次读操作的间隔中,另一个事务T2改变了A的值,那么此并发操作所引起的问题是()

    • A、丢失更新
    • B、死锁
    • C、不可重复读
    • D、读脏数据

    正确答案:C

  • 第11题:

    单选题
    在“学生表”中有字段:学号、姓名、班级和专业,要删除全部记录的“班级”字段的全部内容,应使用的查询是()
    A

    更新查询

    B

    追加查询

    C

    生成表查询

    D

    删除查询


    正确答案: C
    解析: 暂无解析

  • 第12题:

    单选题
    如果事务T1需要两次读取同一数据项A,但是在两次读操作的间隔中,另一个事务T2改变了A的值,那么此并发操作所引起的问题是()
    A

    丢失更新

    B

    死锁

    C

    不可重复读

    D

    读脏数据


    正确答案: A
    解析: 暂无解析

  • 第13题:

    在考生文件夹下的“Ace2.mdb”数据库中有“student”、“课程”和“成绩”3张表。 (1)以“student”表为数据源,创建查询“查询1”,查询学生名字中出现“小”字的学生信 息。结果显示“student”表中的全部字段。 (2)创建宏“宏1”,运行“查询1”。查询结果如图1所示。


    正确答案:
    (1)打开“Acc2.mdb”数据库窗口单击“查询”对象,单击“新建”按钮,选择“设计视图”,单击“确定”按钮。弹出“显示表”对话框,添加“student”表,单击“关闭”按钮,关闭“显示表”对话框。选择“student.*”和“姓名”字段,在“姓名”字段行对应的“条件”行输入“Like”*小*””。单击工具栏中的“保存”按钮,在弹出的“另存为”对话框中输入查询名字“查询1”,单击“确定”按钮关闭查询设计视图。
    (2)在“Ace2.mdb”数据库窗口中单击“宏”对象。单击“新建”按钮,在“操作”列选择“OpenQuery”,在“查询名称”行选择“查询l”。单击工具栏中的“保存”按钮,弹出“另存为”对话框,输入宏的名称为“宏l',,关闭宏设计视图。

  • 第14题:

    在考生文件夹下有“××.mdb”数据库。

    (1)创建窗体“学生成绩”查询,在窗体中添加组合框“学生编号”,绑定学生表的学生编号字段。

    (2)修改“成绩表,”查询,设置学生编号字段条件为“学生成绩查询”窗体组合框内的值。创建宏“成绩表”,运行成绩表查询。

    (3)在“学生成绩查询”窗体中添加“查询成绩”按钮,实现运行“成绩表”查询。学生成绩查询窗体如图所示。

    单击查询成绩按钮后显示如下结果:


    正确答案:

  • 第15题:

    在“学生.mdb”数据库中有教师、课程、授课、课程成绩、系别、班级和学生表。

    (1)以班级表和学生表为数据源,创建参数查询“班级信息”,实现创建输入班级ID,显示班级学生信息。参数提示为“请输入班级ID”,结果显示班级名称、学号和学生姓名字段。查询结果如图所示。


    正确答案:(1)在“数据库”窗口中新建一个查询在弹出的“新建查询”对话框中选择“设计视图”在弹出的“显示表”对话框中添加班级、学生表。关闭“显示表”对话框。选择班级名称、学号、学生姓名字段。将“[请输入班级ID]”填入到班级ID的准则行。将该查询保存为“班级信息”。 (2)在“数据库”窗口中新建一个查询在弹出的“新建查询”对话框中选择“设计视图”在弹出的“显示表”对话框中添加系别、教师表。关闭“显示表”对话框。单击“查询”下拉菜单单击生成表查询。设置表名为“教师表”选择题目中要求显示的字段。将该查询保存为“教师信息”。
    (1)在“数据库”窗口中新建一个查询,在弹出的“新建查询”对话框中选择“设计视图”,在弹出的“显示表”对话框中添加班级、学生表。关闭“显示表”对话框。选择班级名称、学号、学生姓名字段。将“[请输入班级ID]”填入到班级ID的准则行。将该查询保存为“班级信息”。 (2)在“数据库”窗口中新建一个查询,在弹出的“新建查询”对话框中选择“设计视图”,在弹出的“显示表”对话框中添加系别、教师表。关闭“显示表”对话框。单击“查询”下拉菜单,单击生成表查询。设置表名为“教师表”,选择题目中要求显示的字段。将该查询保存为“教师信息”。

  • 第16题:

    事务T1中有两次查询学生表中的男生人数,在这两次查询执行中间,事务T2 对学生表中加入了一条男生记录,导致T1两次查询的结果不一致,此类问题属于( ),为解决这一问题,应采用的隔级别是( )。

    A.可重复读 B.读脏数据 C.丢失修改 D.幻影现象 A.Read Uncommitted B.Read Committed C.Repeatable Read D.Serializable


    正确答案:D,D

  • 第17题:

    嵌入式SQL中,若查询结果为多条记录时,将查询结果交予主语言处理时,应使用的机制是(请作答此空),引入( )来解决主语言无空值的问题。

    A.主变量
    B.游标
    C.SQLCA
    D.指示变量

    答案:B
    解析:
    本题考查嵌入式SQL的基础知识。嵌入式SQL是SQL语句与过程化编程语言(主语言)的结合,嵌入式SQL负责实现数据库的操作,过程化语言负责用户界面及过程化处理。两种语言需要进行数据交互,SQL的査询结果为关系集合,通过游标,将关系的操作分解为对单一记录的各字段的操作以适应主语言无关系操作的能力。SQL中有空值而高级语言没用,为解决这一矛盾,采取指示变量的方式。指示变量为负值时,表示其对应的主变量中的值是空值(该主变量的值仍然存在,但无意义),由主语言和DBMS根据指示变量的值对主变量按空值处理。

  • 第18题:

    事务的等待图中出现环,使得环中的所有事务都无法执行下去,这类故障属于( );解决的办法是选择环中代价最小的事务进行撤销,再将其置入事务队列稍后执行。假如选中事务T1,在T1撤销过程中需要对其进行(请作答此空)操作。

    A.UNDO
    B.REDO
    C.UNDO+REDO
    D.REDO+UNDO

    答案:A
    解析:
    常见的数据库故障类型分为事务故障、系统故障和介质故障。其中,事务故障是指事务在运行至正常中止点前被中止,此时恢复子系统应利用日志文件撤销(UNDO)此事务对数据库已做的修改。依题意,事务的等待图中出现环,使得环中的所有事务都无法执行下去,这类故障属于事务故障。其解决的办法是选择环中代价最小的事务进行撤销,再将其置入事务队列稍后执行。假如选中事务T1,在T1撤销过程中需要对其进行UNDO操作。

  • 第19题:

    如右图所示的并发调度,假设事务T1、T2执行前数据项X、Y的初值为X=100,Y=200。该调度执行完成后,X、Y的值为( );此类不一致性称为(请作答此空)。

    A.丢失修改
    B.读脏数据
    C.不可重复读
    D.破坏事务原子性

    答案:A
    解析:
    本题考查并发调度知识。事务并发执行能够充分利用系统资源,提高系统吞吐量。并发事务的执行,可能会因为冲突而产生数据的不一致。根据调度语句计算运行结果,是理解并发事务执行过程和对不一致性认识所必须的。根据上述调度,事T1的前三句执行后,A的值70写入缓冲区中(可理解为写入了数据库中)X的数据位;随后T2的两句将X、Y的值读入变量A(=70)、B(=200)中;之后T1将B的值230写入数据库中Y的数据位;再之后T2将B的值(=270)写入数据库中Y的数据位。上述调度执行后,X=70,Y=270。多个事务并发执行,正确的必要条件是其执行结果与某一种串行执行的结果相同。上述两个事务的串行执行过程为T1执行完后执行T2或T2执行完后执行T1,即T1→T2:X=70,Y=300和T2→T1:X=70,Y=330。上述并发调度的结果与任一串行结果都不同,故并发执行产生了数据的不一致。该调度中事务T1对Y的修改被T2所覆盖,未能体现T1对Y曾进行过修改,即T1对Y的修改丢失了,故该不一致性属于丢失修改。

  • 第20题:

    将表“学生名单2”的记录复制到表“学生名单1”中,且不删除表“学生名单1”中的记录,应使用的查询方式是()

    • A、删除查询
    • B、生成表查询
    • C、追加查询
    • D、交叉表查询

    正确答案:C

  • 第21题:

    假设数据表中有学生姓名、性别、班级、成绩等数据,若想统计各个班各个分数段的人数最合适的查询方式是()

    • A、选择查询
    • B、交叉表查询
    • C、参数查询
    • D、操作查询

    正确答案:B

  • 第22题:

    单选题
    现要将S1服务器上的DB1数据库中的T1表中的数据导入到S2服务器的DB2数据库的T2表中,假设T2表已经建立。在选择目的地时使用U2用户进行操作,则U2必须具有()
    A

    对T2表的插入权

    B

    对T1表的查询权和对T2表的插入权

    C

    对T1表的插入权和对T2表的查询权

    D

    对T1表的查询权


    正确答案: C
    解析: 暂无解析

  • 第23题:

    单选题
    将表“学生名单2”的记录复制到表“学生名单1”中,且不删除表“学生名单1”中的记录,应使用的查询方式是()
    A

    删除查询

    B

    生成表查询

    C

    追加查询

    D

    交叉表查询


    正确答案: C
    解析: 暂无解析