sqlserver期末复习选择题 下载本文

22)

23) 24) 25)

假设有表student的设计如下: ID(学号) Name(姓名)

Address(家庭住址) Department(所在系)

DepartmentHead(系主任) 该表最高满足第()范式。(选择一项) a) 一 b) 二 c) 三 d) 不满足任何范式;

为数据库中一个或多个表中的数据提供另一种查看方式的逻辑表被称为()。(选择一项) a) 存储过程 b) 触发器 c) 视图 d) 表 要建立一个教师表,包含姓名、职称、级别等字段。若插入数据时,级别字段如果不输入,缺省值为‘讲师’,最合适的实现方法是()。 a) 为 “ 级别 ” 字段建立default约束。 b) 为 “ 级别 ” 字段建立check 约束。 c) 在教师表上建立一个触发器 (trigger)。 d) 为教师表数据输入编写一个存储过程进行控制。 现有订单表orders, 包含数据如下表。若查询既订购了产品P01,又订购了产品P02的顾客编号,可以执行以下()sql语句。(选择一项) cid (顾客编号) Pid (产品编号) C01 C01 C02 C03 P01 P02 P01 P02

26)

a) b) c) d) select distinct(cid) from orders o1 where o1.pid in ('p01','p02')

select distinct(cid) from orders o1 where o1.pid='p01' and o1.pid='p02'

select distinct(cid) from orders o1 where pid='p01' and exists (select * from orders where pid ='p02' and cid=o1.cid)

select distinct(cid) from orders o1,orders o2 where o1.pid='p01' and o2.pid='p02'

关于聚焦索引,以下()说法是错误的。(选择两项) a) 一个表最多只能创建一个聚焦索引。 b) 聚焦索引比非聚焦索引有更快的访问速度。

27) 28) 29) 30)

c) d) 主键一定是聚焦索引。

创建了聚焦索引的列不允许有重复值。

关于视图,以下()说法是错误的。(选择一项) a) 使用视图,可以简化数据的使用。 b) 使用视图,可以保护敏感数据。 c) 视图是一种虚拟表,视图中的数据只能来源于物理数据表,不能来源于其它视

图。

d) 视图中只存储了查询语句,并不包含任何数据。 常用的系统存储过程不包括()。(选择一项)

sp_tables a)

sp_columns b)

sp_stored_procedures c)

sp_renametable d)

对事务描述错误的是()。(选择两项)

a) 一个事务中的所有命令作为一个整体提交或回滚。 b) 如果两个并发事务要同时修改同一个表,有可能产生死锁。 c) Sql server默认将每条单独的T-SQL语句视为一个事务。 d) 事务必须使用begin transaction来明确指定事务的开始。

分数表scores设计如下: courseID(课程编号) studentID(学生编号) score(分数)

另有一个学生信息表student,包含studentID,sname(学生姓名)。 已知并非所有学生都参加了考试,现在查询所有及格学生的学生姓名,下面正确的是()。(选择一项)

select sname from student where studentID in (select studentID from score where a)

score>60)

select sname from student where studentID = (select studentID from score where b)

score>60)

select sname from student where studentID not in (select studentID from score c)

where score<=60)

select sname from student where exists (select studentID from score where d)

score>60) 关于触发器,()说法是错误的。(选择两项) a) 触发器是一种特殊类型的存储过程。 b) 可以使用触发器来响应对数据的select,insert,update,delete操作。 c) 一个表上的触发器不可以包含对另外一个表的数据操作,以免造成死循环。 d) 触发器和触发它的语句构成一个事务。

31)

32) 33) 34) 35) 36)

在()的列上更适合创建索引。(选择两项) a) 需要对数据进行排序 b) 具有默认值 c) 频繁更改 d) 频繁搜索

SQL Server数据库有2种登录认证方式。其中在()方式下,需要客户端应用程序连接时提供登录时需要的用户标识和密码。 a) Windows身份验证。 b) 以超级用户身份登录时。 c) SQL Server 身份验证。 d) 以系统身份登录时。 SQL Server数据库中,下列不属于T-SQL事务管理语句的是()。(选择一项) a) BEGIN TRANSACTION; b) END TRANSACTION; c) COMMIT TRANSACTION; d) ROLLBACK TRANSACTION; 要建立一个约束,保证用户表(user)中年龄(age)必须在16岁以上,下面语句正确的是()。(选择一项)

Alter table user add constraint ck_age CHECK(age>16) a)

b) Alter table user add constraint df_age DEFAULT(16) for age。 c) Alter table user add constraint uq_age UNIQUE(age>16)。 d) Alter table user add constraint df_age DEFAULT(age>16)。 银行系统中有帐户表和交易表,帐户表中存储了各存款人的帐户余额,交易表中存储了各存款人每次的存取款金额。为保证存款人每进行一次存、取款交易,都正确的更新了该存款人的帐户余额,以下选项中正确的做法是()。(选择一项) a) 在帐户表上创建insert触发器。 b) 在交易表上创建insert触发器。 c) 在帐户表上创建检查约束。 d) 在交易表上创建检查约束。 SQL Server数据库中,包含两个表:Order订单表, Item订单子项目表。 当一个新定单被加入时,数据要分别保存到Order和Item表中,要保证数据完整性,可以使用以下()语句。(选择一项)

BEGIN TRANSACTION a)

INSERT INTO Order VALUES (此处省略) INSERT INTO Item VALUES (此处省略) END TRANSACTION

37)

b)

c)

d)

BEGIN TRANSACTION

INSERT INTO Order VALUES (此处省略) INSERT INTO Item VALUES (此处省略) IF (@@Error = 0)

COMMIT TRANSACTION ELSE

ROLLBACK TRANSACTION BEGIN TRANSACTION

INSERT INTO Order VALUES (此处省略) IF (@@Error = 0)

INSERT INTO Item VALUES (此处省略) IF (@@Error = 0)

COMMIT TRANSACTION ELSE

ROLLBACK TRANSACTION ELSE

ROLLBACK TRANSACTION BEGIN TRANSACTION

INSERT INTO Order VALUES (此处省略) INSERT INTO Item VALUES (此处省略) IF (@@Error <> 0)

ROLLBACK TRANSACTION

38)

现有一个学生信息表student,包含主键studentID (学生编号)。

又有分数表scores,包含studentID(学生编号)、以及 score(考试分数)。

已知student表中共有50个学生,有45人参加了考试(分数存在scores表中),其中10人不及格。执行以下sql语句:

select * from student where exists (select studentid from score where score<60) 可返回()条记录。(选择一项)

50 a)

45 b)

10 c)

0 d)