SQL试题

  • 格式:doc
  • 大小:72.50 KB
  • 文档页数:12

一、选择题(20分)1.数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是(P4 )。

A.DB包含DBS和DBMS B.DBMS包含DB和DBSC.DBS包含DB和DBMS D.没有任何关系2.下列选项中(p3 )不是数据库系统的特点。

A.数据共享B.数据独立性C.减少数据冗余D.数据传输3.在数据库系统的三级模式结构中,用来描述数据的全局逻辑结构的是(p6 )。

A.子模式B.模式C.用户模式D.内模式4.在关系数据库中,视图是三级模式结构中的(p6 )。

A.内模式B.模式C.存储模式D.外模式5.参照完整性规则:表的(P30 )必须是另一个表主键的有效值,或者是空值。

A.候选键B.外键C.主键D.主属性6.“班级”与“学生”两个实体集之间的联系一般是()的联系。

A.一对一B.一对多C.多对一D.多对多7.适合Windows xp的sql server版本是(p45 )。

A.个人版B.专业版C.企业版D.开发版8.进行SQL Server 数据库服务器的打开、关闭等操作的工具是(p49 )。

A.企业管理器B.服务管理器C.查询管理器D.网络连接工具9. 将两个关系拼接成一个新关系,生成的新关系中包含满足条件的元组,这种操作称为()。

P22A.选择B.投影C.连接D.并10.以下不是SQL Server数据库对象的是()。

A.表B.规则C.视图D.模块11.以下不是SQL Server数据库表中字段类型的是()。

A.char B.table C.datetimeD.index12.T-SQL的数据操作语句不包括()。

A.INSERT B.CHANGE C.UPDATED.DELETE13.设有如下关系表:R ST则下列操作中正确的是( )。

A . T=R ∩SB . T=R ∪SC . T=R ×SD . T=R/S14.设学生表中包含学生的基本信息,其中含有出生日期字段。

删除学生表中出生日期字段的命令是( )。

A . delete from 学生 where 出生日期B . drop table 学生C . delete from 学生 where 字段=出生日期D . alter table 学生 drop 出生日期 15.一个关系只能有一个( )。

A . 候选键B . 外键C . 主键D . 规则16.事务日志文件的默认扩展名是( )。

A . MDFB . NDFC .LDFD .DBF17.在SQL查询语句中,下列()函数可以统计人数。

A.SUM B.A VG C.MAXD.COUN T18.下列(p161 )不属于数据完整性类型A.属性完整性 B.域完整性 C.参照完整性 D.实体完整性19.SQL语句可以使用通配符,其中“%”可以表示(P110 )。

A.0个字符B.1个字符C.多个字符D.以上都可以20.下列()索引在一张表中只能建立一个。

A.唯一索引B.聚集索引C.非聚集索引 D.普通索引二、填空题(20分)1.数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是【1】。

2.认证模式类型有两种,分别是:Windows认证模式和【2】混合认证模式。

3.用T-SQL语言创建各类对象是在【3】sql查询分析器工具中进行。

4.数据库设计的步骤一般包括以下五个阶段,它们是:需求分析;【4】概念结构设计;逻辑结构设计;物理结构设计和【5】实施与维护。

P365.删除“学生”表的命令是:【6】drop table 学生。

P1016.SQL Server的主数据库名是【7】master 。

P717.删除一个规则必须要先松绑【8】与之相关的对象。

P1528.表之间的关联就是通过主键与【9】外键作为纽带来实现的。

P1569.在数据库的三级模式中,能够有多个的模式为【10】外模式。

P6三、判断题 (15分,文科生做题 )⑴用二维表格来表示实体之间联系的模型称为层次模型(错)。

P11⑵若R.A→R.B R.B→R.C ,则 R.A →R.C(错)。

P29⑶在数据模式间的映射功能中,外模式能直接映射到内模式(错)。

P6⑷ SELECT语句的完整语法较复杂,但至少包括SELECT和INTO子句(错P111 )。

⑸规则和约束可以同时使用,表的列可以有一个规则及多个约束(对P149 )。

⑹索引的主要目的是提高查询速度(对)。

⑺视图是一张虚表,因此一个视图是不可以从另一个视图中产生(错P136 )。

⑻唯一性约束所在的列允许空值,但是主键约束所在的列不允许空值(对P159 )。

⑼字符型常量采用的是用一对双引号括起来的字符值(错P169 )。

⑽在CREATE INDEX 语句中,使用 [CLUSTERED]来建立聚集索引(对P132 )。

四、程序设计题(15分,理科生做题)有以下三个关系模式,其中加下划线的为主键:员工(员工号,员工姓名,联系电话)商品(商品编号,商品名称,单价)销售订单(订单号,员工号,商品编号,订购数量)1.试编写一函数goodsquery,根据给定的商品编号,查找该商品的名称和单价;Create function goodsquery(@goodsid as char(4)) Returns tableAsReturn (select 商品名称,单价 from 商品 where 商品编号=@goodsid)2.试编写一存储过程orderquery,根据给定的订单号,查找该订单对应的商品编号和订购数量;Create proc orderquery @orders_id char(4) asSelect 商品编号,订购数量 from 销售订单Where 订单号=@orders_id3.创建一个触发器,当往员工表中插入n条信息时,显示以下信息“n条信息被插入”;Create trigger tri1 on 员工 for insertAsDeclare @msg varchar(50)Select @msg=str(@@rowcount)+’条信息被插入’Select @msgreturn五、综合设计题(45分)1.有如下E-R模型,试把它转化为关系模式。

关系模式的格式如下:关系名(属性1,属性2,……)确定各个关系的主键或外键,并在主键下面加下划线,外键下面加双下划线!学生(学号,姓名,性别,出生年月,留学生否,班级)课程(课程号,课程名,学时数,学分,学期)选课(学号,课程号,成绩)2.建立上述关系模式中“学生”关系的数据字典,根据实情完成下表填空3. 利用T-SQL语句创建上题中的“学生”表,要求:①创建“性别”列规则“性别_规则”,只允许输入“男”或“女”②创建“班级”列默认值“班级_默认”,默认值为“计算机2010班”③创建“学生”表,设置“学号”为“主键约束”,设置“姓名”不为“空”④将规则和默认值绑定“学生”表相应列Create table 学生(学号char(4) primary key ,姓名char(8) not null,性别char(2),出生年月datetime,留学生否bit,班级varchar(50))GoCreate rule 性别_规则As @性别in (…男‟,‟女‟)goCreate default 班级_默认As ‟计算机2010班‟GoExec Sp_bindrule 性别_规则,‟学生.性别‟GoExec Sp_bindefault 班级_默认,‟学生.班级‟Go4. 利用T-SQL语句创建下列查询,要求:①圣诞节将至,学校将举行留学生圣诞节晚会,请你从“学生”表中查找出全体留学生同学的学号、姓名、班级和留学生否字段。

Select 学号,姓名,班级,留学生否from 学生where 留学生否=1②对“学生”表,分组统计男女生人数。

Select 性别,count(性别) as 人数from 学生group by 性别③利用嵌套查询,在“学生”表中查找出与“张三”性别相同的所有学生的姓名、出生日期。

Select 姓名,出生日期 from 学生 where 性别=(select 性别 from 学生Where 姓名=’张三’)④利用多表查询,在“学生”表和“成绩”表中查询出班级为“计算机2010班”中分数在80~90范围内的学生的学号、姓名、分数。

(假定“成绩”表中存在“学号”和“分数”字段,且该“学号”同“学生”表中的学号完全相同)Select 学生.学号,姓名,成绩.分数 from 学生 inner join 成绩 on 学生.学号=成绩.学号 where学生.班级=‘计算机2010班’and (成绩.分数>=80 and成绩.分数<=90)SELECT 学生.学号,姓名,成绩.分数 FROM 学生,成绩WHERE 学生.学号=成绩.学号 AND成绩.分数 BETWEEN 80 AND 90AND 学生.班级='计算机2010班'。