首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在进行某学校教务管理系统的数据库设计时,数据库设计人员设计了如下几个关系模式: 系(系号,系名),系号为主码 学生(学号,姓名,所在系号),学号为主码 课程(课程号,课程名,开课系号),课程号为主码 选课(学号,课程号,选课时间),学号和课
在进行某学校教务管理系统的数据库设计时,数据库设计人员设计了如下几个关系模式: 系(系号,系名),系号为主码 学生(学号,姓名,所在系号),学号为主码 课程(课程号,课程名,开课系号),课程号为主码 选课(学号,课程号,选课时间),学号和课
admin
2018-06-19
42
问题
在进行某学校教务管理系统的数据库设计时,数据库设计人员设计了如下几个关系模式:
系(系号,系名),系号为主码
学生(学号,姓名,所在系号),学号为主码
课程(课程号,课程名,开课系号),课程号为主码
选课(学号,课程号,选课时间),学号和课程号为主码
开发人员在将关系模式实施到SQL Server 2008的“教务"数据库时,使用了如下表结构定
义语句:
CREATE TABLE系(
系号varchar(10)NOT NULL,
系名varchar(100)
)
CREATE TABLE学生(
学号varchar(50)NOT NULL,
姓名varchar(50),
所在系号 varchar(10)
)
CREATE TABLE课程(
课程号varchar(50)NOT NULL,
课程名varchar(100),
开课系号varchar(10)
)
CREATE TABLE选课(
学号varchar(50)NOT NULL,
课程号varchar(50)NOT NULL,
选课时间datetime
)
在执行如下查询语句时发现执行效率很低:
SELECT * FROM选课JOIN学生ON学生.学号=选课.学号
JOIN系ON系.系号=学生.所在系号
JOIN课程ON课程.课程号=选课.课程号
WHERE系.系号=’012’
AND convert(varchar(10),选课时间,120)>=’2010—01—01’
设已在“选课”表的“选课时间”列及“学生”表的“所在系号”列上建立了索引。请问这两个索引是否能够提高该查询语句的执行效率?如果不能,请说明原因。
选项
答案
“选课”表的“选课时间”可以建立索引,从而提高了查询效率,而“学生”表的“所在系号”建立索引不会提高查询效率。索引的意义就是将记录按目标关键字顺序排列,这样查找某个目标关键字的对应值的位置就缩小了查找范围。“选课时间”的重复率低,所以可以作为索引,而学生“所在系号”的重复率太高,则不会提高查询效率。
解析
“选课”表的“选课时间”列上建立了索引,从而能够提高执行效率。经常出现在Where子句中的字段,特别是大表的字段,应该建立索引。索引的作用就类似于书的目录,即会按照章节的顺序排列。因此如果在一本数百页的书里面查找某个章节位置的时候,就可以只扫描书的目录。扫描的范围缩了n倍,查询的效率自然就会提高。另外,在SQLServer内存够用的情况下,索引会被放到内存中,在内存中查找自然又会提高效率,所以必须合理利用索引。
转载请注明原文地址:https://kaotiyun.com/show/mHlZ777K
本试题收录于:
三级数据库技术题库NCRE全国计算机三级分类
0
三级数据库技术
NCRE全国计算机三级
相关试题推荐
数据库的基本特点是()。
新奥尔良方法将数据库设计过程分为4个阶段:【】、概念结构设计、逻辑结构设计和物理设计。
在数据库管理系统中,下面哪个模块不是数据库定义的功能模块?
数据库系统支持数据的逻辑独立性依靠的是
MS-SQLSERVER数据库系统的核心是
关系数据库的规范化理论指出:关系数据库中的关系应满足一定的要求,最起码的要求是达到1NF,即满足
设有关系模式R(A,B,C,D,E,F),若有如下的函数依赖集F={A→B,(C,A)→D,(E,F)→A,(E,B)→F,(E,C)→F},若将R分解为3个关系模式R1(A,B),R2(C,A,D),R3(C,E,F,A),则关系模式R2的规
随机试题
引起二尖瓣狭窄的疾病有
初起皮肤上有粟粒样脓头,红肿热痛,病情发展则脓头增多,溃后状如蜂窝,范围在9~12cm之间的是
有一群人受某种疾病感染患病的占20%。现随机地从他们中抽50人,则其中患病人数的数学期望和方差是()。
汽车金融公司的监管机构是()。
中国的封建统治者通过科举考试选拔官吏,是从()开始的。
WhilescientistsaresearchingthecauseoftheColumbiadisaster,NASAismovingaheadwithplanstodevelopanewcraftthatw
第二段开头加点的“基本规律”指的是:对文中的内容理解不正确的一项是:
有如下程序:#includeusingnamespacestd;voidf1(int&x,int&y){intz=x+y;x=y;y=z;}voidf2(intx,i
A、Stopinthemiddleoftheclass.B、Speedupthepace.C、Marchinplaceforawhile.D、Concentrateonexercise.C
Hungryprehistorichunters,notclimatechange,droveelephantstoextinctionduringthePleistoceneera(更新世),newresearchsug
最新回复
(
0
)