SQLA摸底测试题02

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

说明:选择题每题2分,共60分,没有注明的是单选题。编程题每题8分,共40分。

一、选择题(共60分)

1)假设需要设计一个表,记录各个作者著作的所有图书信息,表结构设计如下:

作者(作者名称、图书1、版本1、书价1、图书2、版本2、书价2、……),该表最高符合第()范式。

a)一

b)二

c)三

d)未规范化的

2)画ER图在以下()哪个阶段。

a)概要设计

b)详细设计

c)编码

d)以上都不对

3)E-R图中,关系用下面()来表示。

a)矩形

b)椭圆形

c)菱形

d)圆形

4)以下关于规范设计的描述正确的是()。(选择两项)

a)规范设计的主要目的是消除数据冗余。

b)规范设计往往会增加数据库的性能。

c)设计数据库时,规范化程度越高越好。

d)在规范化数据库中,易于维护数据完整性。

5)关于触发器,()说法是错误的。(选择两项)

a)触发器是一种特殊类型的存储过程。

b)可以使用触发器来响应对数据的select,insert,update,delete 操作。

c)一个表上的触发器不可以包含对另外一个表的数据操作,以免造成死循环。

d)触发器和触发它的语句构成一个事务。

6)在score表上创建一个触发器:

create trigger tri_score

on score

for update,delete

as

if (select count(*) from inserted)>0

print('success')

go

在查询分析器上执行以下()语句,可能会输出“success”。

a)Update score set score=20

b)Delete from score where score<60

c)Insert into score values ( 此处省略)

d)Select * from score

7)关于局部变量,下列说法错误的是()

a)局部变量只在当前批处理中有效

b)局部变量只能通过set语句赋值

c)可以修改局部变量的值

d)局部变量只有一个@符号

8)下面关于IN与Exists子查询的说法错误的是()

a)IN与Exists子查询的共同点就是查询的结果都返回布尔值。

b)IN必须有字段与字查询的行进行比较,子查询中的值与IN左边的值进行比较,相等则返回真。

c)Exists左边必须有字段,只查询子查询的行,若存在这样的行,就返回真。

d)exists是关于存在性的查询。

9)关于表联接与子查询的关系,说法错误的是()

a)一般来说,表连接都可以用子查询替换,但有的子查询却不能用表连接替换

b)子查询比较灵活、方便,常作为增删改查的筛选条件,适合于操纵一个表的数据

c)表连接更适合于查看多表的数据

d)子查询过多,不会比相同效果的表连接占用的系统资源多。

10)假设有表score,表示学生成绩,表student表示学生信息(学生编号、姓名等),两表通过外键stuId关联下面()可实现将学生张三的JAVA成绩增加10分。

a)update score set grade=grade+10 where subject=’java’ and stuid=(select stuid from student where stuname=’张三’) b)update score set grade=grade+10 where stuid in(select stuid from student where stuname=’张三’)

c)update score set grade=grade+10 where subject=’java’

d)update student set stuname=’张三’ where stuid=(select stuid from score where subject=’java’)

11)关于在子查询中使用any/all,以下说法正确的是()

a)any和All差不多,都是只要符合返回值中的任一个数据

b)Any是只有符合返回值中的所有数据

c)All必须要符合查询中返回值的任何一个数据

d)二者一般不与关系运算符一起使用

12)有关联合(Union)、子查询与联接,下面说法错误的是()

a)联合主要用于合并多个数据表中的行,合并过程中的每个select 语句不一定有相同的结构

b)子查询是一个嵌套在 SELECT、INSERT、UPDATE 或 DELETE 语句或其他子查询中的查询。任何允许使用表达式的地方都可以使用子查询

c)联接主要用于合并多个表中的列

d)通常情况下,若查询数据来源于多张表,可以采取上述3种方式查询

13)关于子查询和连接说法错误的是()。

a)子查询可以代替连接

b)连接代替所有的子查询,所以一般优先采用子查询

c)如果只是作为查询的条件部分,一般考虑子查询

d)如果要显示多表数据,优先考虑连接

14)下面T-SQL代码运行完的结果是()。

declare @x int

set @x=1

while @x<3

begin

print ‘x still less than 3’

set @x=@x+1

end

break

print ‘this statement will not execute’

a)x still less than 3

b)x still less than 3

x still less than 3

x still less than 3

c)x still less than 3

this statement will not execute

d)x still less than 3

x still less than 3

x still less than 3

this statement will not execute

15)下面使用print 打印信息正确的是()。(选择两项)

a)Print ‘SQL SERVER’

相关文档
最新文档