如果已经在学生表和成绩表之间按学号建立永久关系,现要设置参照完整

题目

如果已经在学生表和成绩表之间按学号建立永久关系,现要设置参照完整性:当在成绩表中添加记录时,凡是学生表中不存在的学号不允许添加,则该参照完整性应设置为()。

  • A、更新级联
  • B、更新限制
  • C、插入级联
  • D、插入限制
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

(1)为数据库“学校管理”中的表“学生”建立主索引,索引名称和索引表达式均为“学号”。

(2)建立表“学生”和表“成绩”之间的关联。

(3)为“学生”表和“成绩”表之间的关联设置完整性约束,要求:更新规则为“级联”,删除规则为“忽略”,插入规则为“限制”。

(4)设置表课程的字段“学分”的默认值为2。


正确答案:
【考点指引】本大题主要考查数据表的索引、关联以及完整性约束的基本探作。
(1)【操作步骤】
①选择【文件】→【打开】命令,在“打开”对话框中的“文件类型”下拉列表框中选择“数据库”,选择“学校管理.dbc”,选择“独占”,单击“确定”按钮,打开数据库设计器。
②在数据库设计器中,右键单击数据库表“学生”,在弹出的快捷菜单中选择“修改”菜单命令,进入“学生”的数据表设计器界面。
③在“学生”表设计器中的“索引”选项卡的“索引名”中输入“学号”,选择索引类型为“主索引”,索引表达式为“学号”,单击“确定”按钮关闭表设计器并保存表“学生”结构。
(2)【操作步骤】
在数据库设计器中,将“学生”表中“索引”下面的“学号”索引字段拖曳到“成绩”表中“索引”下面的“学号”索引字段上,建立两个表之间的永久性联系。
(3)【操作步骤】
①在数据库设计器中,选择【数据库】→【清理数据库】命令清理数据库。
②右键单击“学生”表和“成绩”表之间的关系线,在弹出的快捷菜单中选择“编辑参照完整性”命令,打开参照完整性生成器。
③单击“更新规则”选项卡,选择“级联”;单击“删除规则”选项卡,选择“忽”;单击“插入规则”选项卡,选择“限制”。
④单击“确定”按钮,保存参照完整性设置。
(4)【操作步骤】
①在数据库设计器中,右键单击数据库表“课程”,在弹出的快捷菜单中选择“修改”命令,进入“课程”数据表设计器。
②在“课程”表设计器的“字段”选项卡中,选择“学分”字段,在“字段有效性”的“默认值”编辑框中输入“2”,单击“确定”按钮关闭表设计器并保存表“课程”结构。

第2题:

设有学生表(学号,姓名,所在系名)和选课表(学号,课程号,成绩)。现要建立统计每个系选课人数的视图。请补全下列语句:CREATE VIEW Vl(系名,人数)AsSELECT所在系名,【4】 FROM选课表JOIN学生表ON选课表.学号=学生表.学号【5】


正确答案:
第一空:COUNT(DISTINCT选课表.学号)第二空:GROUP BY所在系名【解析】由于要统计选课人数所以要用到聚类函数COUNT(DISTINCTI ALL<列名>),表示对某列的值的计数,如果指定DISTINCT短语,则表示在计算时要取消指定列中的重复值。如果不指定DISTINCT短语或指定ALL短语,则表示保留重复值。由于是对不同系中的学生的学号统计,所以用GROUP BY子句将查询结果按某一列或多列的值分组,值相等的为一组。通过对组内不同学号的统计从而统计出各个系的选课人数。

第3题:

建立“员工表”和“部门表”的表间关系,并实施参照完整。


正确答案:
步骤1:在“sampl.mdb”数据库中,单击“关系”按钮,
添加“员工表”和“部门表”,关闭“显示表”对话框。
步骤2:单击“员工表”中的“部门编号”字段,按住左键拖到“部门表”的“部门编号”上。
步骤3:在弹出“编辑关系”的对话框中勾选“设置参照完整性”复选框。
步骤4:单击“创建”按钮。
步骤5:单击“保存”按钮。关闭“sampl.mdb”数据库。

第4题:

设学生表和成绩表的结构分别为(学号,姓名,所在系)和(学号,课程名,成绩),如果希望按分数降序查询出“英语系中选修了计算机课程的学生姓名和成绩”,则对应的SQL语句是()。

A. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系一‘英语系’AND课

程名=‘计算机’AND学生表.学号=课程表,学号

B. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课

程名=‘计算机’AND学生表.学号=课程表.学号ORDER BY成绩ASC

C. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课

程名=计算机’AND学生表。学号=课程表。学号ORDER BY成绩

D. SELECT姓名,成绩FROM学生表,成绩表WHERE所在系=‘英语系’AND课

程名=‘计算机’AND学生表.学号一课程表.学号ORDER BY成绩DESC


参考答案D

第5题:

在Visual FoxPro中,假定数据库表S(学号,姓名,性别,年龄)和SC(学号,课程号,成绩)之间使用“学号”建立了表之间的永久联系,在参照完整性的更新规则、删除规则和插入规则中选择设置了“限制”。如果表S所有的记录在表SC中都有相关联的记录,则______。

A.允许修改表S中的学号字段值

B.允许删除表S中的记录

C.不允许修改表S中的学号字段值

D.不允许在表S中增加新的记录


正确答案:C
解析:参照完整性中的删除规则规定了当删除父表中的记录时,如何处理子表中的相关的记录:选择“限制”,若子表中有相关的记录,则禁止删除父表中的记录;
参照完整性中的更新规则规定了当更新父表中的连接字段(主关键字)值时,如何处理子表中的相关的记录:选择“限制”,若子表中有相关的记录,则禁止修改父表中的连接字段值;
参照完整性中的插入规则规定了当插入子表中的记录时,是否进行参照完整性检查:选择“限制”,若父表中没有相匹配的连接字段值则禁止插入子记录。

第6题:

建立表对象“职工表”、“物品表”和“销售业绩表”的表间关系,实施参照完整。


正确答案:
步骤1:单击工具栏中的“关系”按钮,在关系窗口的空白处右键单击,在弹出的快捷菜单中选择“显示表”命令。添加“物品表”和“销售业绩表”。关闭“显示“表”对话框。在“销售业绩表”和“职工表”之间按住左键拖动“编号“产生关系。在弹出的“编辑关系”对话框中,勾选“实施参照完整性’复选框,单击“确定”按钮。如图38所示。
步骤2:单击“保存“按钮保存“关系”。

第7题:

通过相关字段建立:“tDoctor、“tOmce”、“tPatient”和“tSubscribe”四表之间的关系,同时使用“实施参照完整性”。


正确答案:
步骤1:单击工具栏中的“关系”按钮,在“关系”窗口内右键单击·鼠标,在快捷菜单上选择“显示表”命令。添加“tDoctor”、“tOffice”、“tPatient”和“tSubscribe”。关闭“显示表”对话框。
步骤2:拖动“tDoctor”表的“医生lD”到“tSubscrilm”表的“医生ID”.拖动“tSubscribe”表的“病人ID”到“tPatient"表的“tPatient”表的“病人ID”,拖动“tSubscribe”表的“科室ID”到“tofiice”表的“科室ID”,在每个弹出的“编辑关系”对话框中单击“创建”按钮。如图32所示.

步骤3:在每个联系的“线”上右键单击,在弹出得快捷菜单上选择“编辑”命令,在“编辑关系”对话框,单击“实施参照完整性”选项框。如图33所示。单击“确定”按钮。
步骤4:单击“保存”按钮保存建立表关系。
步骤5:关闭“samnpl.mdb”数据库。

第8题:

在成绩表中,检索选修3门以上课程的学生及格学科的总成绩。成绩表中包含学号、姓名、课程名和成绩4个字段。请将下列SQL语句补充完整。SELECT 学号,SUM(成绩) FROM 成绩表; WHERE 成绩>=60; GROUP BY 学号; ______COUNT(*)>=3


正确答案:HAVING
HAVING 解析:在实际的应用中,除了简单的计算查询外,我们还可以加上GROUP BY子句进行分组计算查询。
通常来说,一个计算函数的范围是满足WHERE子句指定条件的所有记录。当加上GROUP BY子句后,系统会将查询结果按指定列分成集合组。当一个计算函数和一个GROUP BY子句一起使用时,计算函数的范围变为每组所有的记录。也就是说,一个结果是由组成一组的每个记录集合产生的。
另外,使用HAVING子句可以对这些组进一步加以控制。用这个子句定义这些组所必须满足的条件,以便将其包含在结果中。
本题中,根据学号将学生记录分组,然后利用SQL的统计函数COUNT(),统计选修3门课程以上的学生记录,并利用SUM()函数将及格科目的分数求和。

第9题:

在 Visual FoxPr o 中 , 假定数据库 表 S ( 学号 , 姓名 , 性别 , 年龄 ) 和 SC( 学号 , 课程号 , 成绩 ) 之间使用 “ 学号 ” 建立了表之间的永久联系 , 在参照完整性的更新规则、删除规则和插入规则中选择设置了 “ 限制 ” ,如果表 S 所有的记录在表 SC 中都有相关联的记录,则

A) 允许修改表 S 中的学号字段值

B) 允许删除表 S 中的记录

C) 不允许修改表 S 中的学号字段值

D) 不允许在表 S 中增加新的记录


正确答案:C

第10题:

在成绩表中,检索选修3门以上课程的学生的及格学科的总成绩。成绩表中包含学号、姓名、课程名和成绩4个字段。

请将下面的SQL语句补充完整。

SELECT学号,SUM(成绩)FROM【 】;

WHERE成绩>=60;

GROUP BY学号;

【 】COUNT(*)>=3


正确答案:【 】成绩表【 】HAVING
【 】成绩表【 】HAVING 解析:本题中,根据学号将学生记录分组,然后利用SQL的统计函数COUNT(),统计选修3门课程以上的学生记录,并利用SUM()函数将及格科目的分数求和。

更多相关问题