主观

在进行某学校教务管理系统的数据库设计时,数据库设计人员设计了如下几个关系模式:系(系号,系名),系号为主码学生(学号,姓名,所在系号),学号为主码课程(课程号,课程名,开课系号),课程号为主码选课(学号,课程号,选课时间),学号和课程号为主码开发人员在将关系模式实施到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学生0N学生.学号=选课.学号JOIN系ON系.系号=学生.所在系号JOIN课程0N课程.课程号=选课.课程号WHERE系.系号=ˊ012 ˊAND convert(vvarchar(10),选课时间,120)>;=ˊ2010-01-01ˊ(1)在查找原因时发现建表语句有问题。请指出问题并说明该问题是否会影响此查询语句的执行效率。(4分)(2)设已在“选课”表的“选课时间”列及“学生”表的“所在系号”列上建立了索引。请问这两个索引是否能够提高该查询语句的执行效率?如果不能,请说明原因。(4分)

参考答案
您可能感兴趣的试题

在进行某学校教务管理系统的数据库设计时,数据库设计人员设计了如下几个关系模式:系(系号,系名),系号为主码学生(学号,姓名,所在系号),学号为主码课程(课程号,课程名,开课系号),课程号为主码选课(学号,课程号,选课时间),学号和课程号为主码开发人员在将关系模式实施到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学生0N学生.学号=选课.学号JOIN系ON系.系号=学生.所在系号JOIN课程0N课程.课程号=选课.课程号WHERE系.系号=ˊ012 ˊAND convert(vvarchar(10),选课时间,120)>;=ˊ2010-01-01ˊ(1)在查找原因时发现建表语句有问题。请指出问题并说明该问题是否会影响此查询语句的执行效率。(4分)(2)设已在“选课”表的“选课时间”列及“学生”表的“所在系号”列上建立了索引。请问这两个索引是否能够提高该查询语句的执行效率?如果不能,请说明原因。(4分)

¥

订单号:

遇到问题请联系在线客服

订单号:

遇到问题请联系在线客服