Sql高级综合测试试题

发布 2021-04-27 11:18:28 阅读 3661

**学院课程考试试卷。

课程名称:《sqlserver:数据库设计和高级查询》 (a)卷。

年级班级。姓名学号考试(考查闭卷。

1. 下列哪个sql 语句属于ddl 语句( a )。

a. create (ddl:create drop truncate)

b. select (dml: insert update delete select)

c. grant (dcl:grant rovoke )

d. insert

2. sql server 2008 的begin trans 和commit trans,roolback trans 语句可用在( bd )中来支持操作的事务特性。【选两项】

a. select 语句b. 存储过程。

c. 连接对象的transaction 属性 d. 触发器。

3. 在sql server2008数据库中,从product表中查询出price(**)高于pname (产品名称)为“网通ip**卡”的所有记录中的最**格的查询语句是( d )。

a. select * from product where max(price)>’网通ip**卡’

b. select * from product where price>(select max(*)from product where pname=’ 网通ip**卡’)

c. select * from product where exists pname=’网通ip**卡’

d. select * from product where price>(select max(price)from product where pname=’ 网通ip**卡’)

4. 在sql server 2008中,声明一个最多可以存储10个字符的变量pwd,正确的**是( b )。

a. declare pwd varchar(10)

b. declare @pwd vachar(10)

c. pwd varchar(10)

d. @pwd varchar(10)

5. 在sql server 2008中,已知student表中有一个age列,数据类型是int,如果要限制该列的取值范围在18到28之间,可以使用以下哪个sql语句( a )。

a. alter table student add check(age>=18 and age<=28)

b. alter table student add defult(age>=18 and age<=28)

c. alter table student add unique(age>=18 and age<=28)

d. alter table student add set(age>=18 and age<=28)

6. sql server 2008数据库中,创建books表的语句如下,这个创建命令执行时出错,错误原因有( be )。选两项】

cerate table books(bookid int primary key,title varchar(20) not null,author char not null,loc int identity(1,1),depid int foreign key,comment text(1000))

a. 定义主键的方式错误。

b. 必须对char数据类型指定列宽度(有默认长度)

c. 定义外键的方式错误。

d. 定义外键列不能定义为标识列。

e. 不能对text数据类型指定列宽度。

7. 在sql server 2008中,创建存储过程如下:要在students表中查找age(年龄)是18岁的学生,( ab )可以正确的调用这个存储过程。【选两项】

create procedure myp1 @p int as

select studentname,age from student where age=@p

a. exec myp1 18 b. exec myp1 @p=18

c. exec myp1 p=’18’ d. exec myp1 p=18

8. 在sqlserver2008中,假设orders表中存在自动编号字段oid等于1的记录,执行下面t-sql,以下说法正确的是( a )。

begin transaction

delete from orders where oid=1

if(@@error<>0)

rollback transaction

elsecommit transaction

a. 执行成功,oid为1的记录被永久删除。

b. 执行成功,orders表没有任何变化。

c. 执行时出现错误。

d. 执行成功,但事务处理并没有任何结束。

9. 在sqlserver 2008中,给定如下的t-sql**,以下说法正确的是( b )。

create procedure price_proc

count int output,**g_price money output,type char(12)=’business’

asselect @count=count(*)**g_price=**g(price) from titles where type=@type

a. 建立了存储过程price_proc,所有参数都是输出参数。

b. 建立了存储过程price_proc,返回的是用户指定图书种类数量及平均**。

c. @count=count(*)也可以用@count=count()代替。

d. 创建存储过程失败,select语句中使用了聚合函数,因此必须使用group by进行分组。

10. 在sql server 安全管理过程中,以下( c )的概念类似于winnt 中的用户组。

a. 权限 b. 登录账户 c. 角色 d. 触发器。

11. 在sql server 2008中,有products(产品)表,包含字段pname(产品名称)、price(**)。若要得到最贵产品的产品名称和产品**,应该使用的查询语句有( ad )。

选两项】

a. select top 1 pname,price from products order by price desc

b. select pname,max(price) from products

c. select pname,max(price) from products group by pname

d. select pname,price from products where price = select max(price) from products)

12. 在sql server2008中,分析下面的存储过程,执行后的结果是( d )。

create procedure lookup(@a int)

asif @a is null

beginprint ‘缺少参数’

return

endselect * from sysobjects where id=@a

return

goexecute lookup

a. 该存储过程会打印“缺少参数”

b. 该存储过程会基于无参数情况做一个查找,返回表中的所有行。

c. 该存储过程有语法错误。

d. 数据库服务器会打印一条消息,提示该存储过程需要提供一个参数。

13. sql server2008中已知有表,表中共有10条status列值为0的记录,创建视图:

create view view1

asselect * from student where status=0

视图创建成功后,执行如下命令:

update view1 set status=1

select * from view1

命令执行的结果是( d )。

a. 错误提示:不能对视图执行更新操作。

b. 错误提示:不能对视图执行查询操作。

c. 返回10条记录。

d. 返回0条记录。

14. sql server2008中,创建触发器的语句如下:

create trigger trig_score on score for insert

asdeclare @sid int,@score float

select @sid=sid,@score=score from inserted

update student set score=score+@score where sid=@sid

go其中score表通过sid列与student表建立了外键约束,假定数据库中的数据具备完整性,创建触发器成功后执行语句,insert into score(aid,score)values(2,20),执行后的结果是( a )。

a. score表中插入一条数据,student表中更新一条数据。

b. score表中插入一条数据,student表中插入一条数据。

c. score表中插入一条数据,student表中没有变化。

d. 提示错误:没有inserted这张表。

15. 为表userinfo添加约束,语法如下:

alter table userinfo add constraint uq_userid unique(userid)

执行成功后,为userinfo表的( b )字段添加了( )约束。

a. userid ; 主键b. userid ; 唯一。

c. uq_userid ;外键d. uq_userid ;检查。

16. e-r图中,关系用( c )来表示。

a. 矩形 (实体) b. 椭圆形(属性) c. 菱形 d. 圆形。

17. 表结构如下,其中# 号打头字段代表主键或组合主键,一份订单可以订购多种产品。

产品:# 产品编号,产品名称,产品**;

高级电工综合测试题

一 单项选择题 每题1分,50题,共50分,每题备选答案中,只有一个最符合题意 1 程序计数器pc用来 c a 存放指令 b 存放正在执行的指令地址 c 存放下一条的指令地址。d 存入上一条的指令地址。2 单片机应用程序一般存放在 b 中。a ram b rom c 寄存器 d cpu 3 单片机8...

高级电工综合测试题

一 单项选择题 每题1分,50题,共50分,每题备选答案中,只有一个最符合题意 1 程序计数器pc用来 a 存放指令 b 存放正在执行的指令地址 c 存放下一条的指令地址。d 存入上一条的指令地址。2 单片机应用程序一般存放在 中。a ram b rom c 寄存器 d cpu 3 单片机8051的...

高级电工综合测试题

一 单项选择题 每题1分,50题,共50分,每题备选答案中,只有一个最符合题意 1 无限大容量电力系统两相短路电流是三相短路电流的 c 倍。a 3 b 2c 3 2d 2 2 2 10kv线路首端发生金属性短路故障时,作用于断路跳闸的继电保护是 b 保护。a 电流 b 速断 c 定时速断 d 反时限...