T-SQL 测试题

精选T-SQL 100道测试题,答案为“下划线”,码字不易,喜欢请收藏吧!

1、SQL SERVER的数据库包括:主数据文件,辅助数据文件和()
A 索引文件
B 日志文件
C 备注文件
D 脚本文件

2、在SQL Server中,在视图上不能完成的操作是()
A 更新视图数据
B 查询
C 在视图上定义新的基本表
D 在视图上定义新视图

3、在SQL Server中,能够将‘java’课的学分赋值给变量的语句是哪一个(C)

A select credit into @credit from course where cname=’java’
B select credit=@credit from course where cname=’java’
C select @credit=credit from course where cname=’java’ 
D select credit from course where cname=’java’ and credit=@credit

4、为数据库中一个或多个表的数据提供另一种查看方式的逻辑表被称为()
A 存储过程
B 触发器
C 视图
D 表

5、在SQL中,建立索引用()命令
A CREATE SCHEMA
B CREATE TABLE
C CREATE INDEX
D CREATE VIEW

6、在SQL Server中,下面哪个函数是属于字符串运算的()
A round
B sin
C str
D abs

7、在SQL Server中,查询course表中的前5行,正确的语法是(A)

A select top 5 * from course
B select top (5) from course
C select top 5 from course
D select top (5*) from course

8、在SQL Server中,关于权限管理,以下说法正确的的是()
A revoke用来授予权限
B grant用来撤销权限
C deny用来彻底撤销权限
D revoke不能和deny搭配使用

9、在SQL中,建立视图的命令为()
A CREATE SCHEMA
B CREATE TABLE
C CREATE VIEW
D CREATE INDEX

10、在SQL Server中,关于视图,以下说法错误的是()
A 使用视图,可以简化数据的使用
B 使用视图,可以保护敏感数据
C 视图是一种虚拟表,视图中的数据只能来源于物理数据表,不能来源于其它视图
D 视图中只存储了查询语句,并不包含任何数据

11、在SQL Server中,下列标识符可以作为局部变量使用()
A Myvar
B My var
C @Myvar
D @My var

12、下列()不是数据库对象
A 数据模型
B 视图
C 表
D 用户

13、在SQL Server中,视图是从()中导出的
A 基本表
B 视图
C 基本表或视图
D 数据库

14、在SQL Server中,查询student表中的所有非空email信息,以下语句正确的是(D)

A select email from student where email !=null
B select email from student where email not is null
C select email from student where email <> null
D select email from student where email t is not null

15、在SQL Server中,与WHERE G BETWEEN 60 AND 100语句等价的子句是( )
A WHERE G>60 AND G<100
B WHERE G>=60 AND G<100
C WHERE G>60 AND G<=100
D WHERE G>=60 AND G<=100

16、在SQL Server中,WHERE子句的模糊查询条件表达式里,可以匹配零至多个字符的通配符是()
A %
B *
C _
D ?

17、在SQL Server中,符合变量的定义语法的是()
A DECLARE name VARCHAR(10)
B DECLARE @name VARCHAR(10)
C name VARCHAR(10)
D @name VARCHAR(10)

18、SQL SERVER安装程序创建4个系统数据库,下列()不是系统数据库
A master
B pub
C msdb
D model

19、在SQL Server中,给定创建视图的代码如下,则下划线处应填写的正确关键字为() CREATE VIEW ABCD ____ SELECT * FROM SALES WHERE QTY > 90
A IN
B AS
C FOR
D ON

20、在SQL Server中,以下关于外键和相应的主键之间的关系,描述正确的是()
A 外键并不一定要与相应的主键同名
B 外键一定要与相应的主键同名
C 外键一定要与相应的主键同名而且唯一
D 外键一定要与相应的主键同名,但并不一定唯一

21、在SQL Server中,建立表用的命令是()
A create schema
B create table
C create view
D create index

22、在SQL Server中, 系统存储过程以()为前缀
A @@
B @
C sp_
D up_

23、有关T-SQL中变量的使用,以下说法错误的是()
A 变量的使用必须先声明,后使用
B 变量的赋值只能使用set语句
C 可以使用print语句和select语句输出结果
D 局部变量的命名必须以@打头

24、在SQL Server中,一个规范化的关系至少应当满足()的要求
A 一范式
B 二范式
C 三范式
D 四范式

25、在SQL Server中,定义存储过程中的输出参数时,要在参数后使用()关键字
A efault
B output
C input
D with

26、在SQL Server中,有如下语句,执行结果为() Declare @x int If @x is null Select ‘A’ If @x=0 Select ‘B’ If @x=’’Select ‘C’
A A
B B
C C
D 有编译错误

27、在SQL Server中,数据定义语言的缩写单词为()
A DDL
B DCL
C DML
D DBL

28、在SQL Server中,假设表UserInfo有age字段,现在要求该字段的值在20-60之间, 可以通过添加约束来实现,横线处应该填写的是(D) Alter table UserInfo ___

A Add constraint PK_age primary key(age)
B Add constraint UQ_age unique(age)
C Add constraint DF_age default(20-60) for age
D Add constraint CK_age check(age between 20 and 60)

29、在SQL Server中,如果要修改表的结构,应该使用命令()
A update table
B modify table
C alter table
D change table

30、实体数据中,学生与老师的关系是()
A 多对多
B 一对多
C 多对一
D 一对一

31、在SQL Server中,关于多行子查询,下列说法正确的是:
A 可使用=、<、>比较符
B 不能使用in比较符,可以使用all,any比较符
C 不能使用in,all,any比较符
D 只能使用in,all,any比较符

32、在SQL Server中,表示职称为副教授同时性别为男的表达式为()
A 职称=‘副教授’ OR 性别=‘男’
B 职称=‘副教授’ AND 性别=‘男’
C BETWEEN ‘副教授’ AND ‘男’
D IN (‘副教授’,‘男’)

33、SQL语言具有()的功能
A 关系规范化、数据操纵、数据控制
B 数据定义、数据操纵、数据控制
C 数据定义、关系规范化、数据控制
D 数据定义、关系规范化、数据操纵

34、在SQL Server中,已知执行语句:Select count(price),sum(price)from price 返回的结果是10和750,那么执行语句:Select avg(price) from price,返回的结果是()
A 5
B 75
C 1500
D 750

35、在SQL Server中,下面不属于SQL中事务的特征的是()
A 原子性
B 一致性
C 准确性
D 隔离性

36、在SQL Server中,从“产品”表里查询出价格高于产品名称为“海天酱油”的产品的记录,此SQL语句为(D)

A SELECT * FROM 产品 WHERE 价格>海天酱油
B SELECT * FROM 产品 WHERE 价格>(SELECT * FROM 产品 WHERE 产品名称>’海天酱油’)
C SELECT * FROM 产品 WHERE EXISTS 产品名称=’海天酱油’)
D SELECT * FROM 产品 WHERE 价格>(SELECT 价格 FROM 产品WHERE 产品名称=’海天酱油’)

37、以下关于主键的描述正确的是()
A 标识表中唯一的实体
B 创建唯一的索引,允许空值
C 只允许以表中第一字段建立
D 表中允许有多个主键

38、一个学生只能就读于一个班级,而一个班级可以同时容纳多个学生,学生与班级之间是()关系
A 一对一
B 一对多
C 多对一
D 多对多

39.、在数据库中查询数据,一般根据()查询速度较快
A 设置默认值的列
B 设置为外键的列
C 设置为主键的列
D 设置检查约束的列

40、下列四项中,不属于数据库特点的是()
A 数据共享
B 数据完整性
C 数据冗余很高
D 数据独立性高

41、在SQL Server中,下列聚合函数中使用正确的是()
A SUM ()
B MAX (
)
C COUNT (*)
D AVG (*)

42、在SQL Server中,执行以下语句, 执行完成后循环次数为() DECLARE @n int Set @n=3 WHILE @n<5 Begin IF @n=4 Print 1trim(@n)+’的平方数为’+1trim(@n@n) Set @n=@n+1 End*
A 0次
B 1次
C 2次
D 死循环

43、在SQL Server中,建立索引的目的是()
A 降低SQL Server数据检索的速度
B 与SQL Server数据检索的速度无关
C 加快数据库的打开速度
D 提高SQL Server数据检索的速度

44、在SELECT语句中正确的语法顺序如下()
A where ,having, group by,order by
B having,where , group by,order by
C where, order by ,group by,having
D where , group by, having,order by

45、在SQL Server中,创建数据库中表的命令是()
A create table
B create rule
C create dure
D create database

46、SQL的聚合函数COUNT、SUM、AVG、MAX、MIN等,不允许出现在()子句中
A SELECT
B HAVING
C GROUP…HAVING
D WHERE

47、SQL语言中,条件年龄 BETWEEN 15 AND 35表示年龄在15至35之间,且()
A 包括15岁和35岁
B 不包括15岁和35岁
C 包括15岁但不包括35岁
D 包括35岁但不包括15岁

48、在SQL Server中,每个数据库有且仅有一个()
A 主要数据文件
B 次要数据文件
C 日志文件
D 索引文件

49、在SQL Server中,使用()连接可以查询出表A和表B中符合连接条件的数据,不符合条件将不会出现在查询结果中
A 左外联接
B 右外联接
C 内联接
D 外联接

50、在SQL Server中,select top (1) * from stuInfo where stNo not in(select top (2) stNo from stuInfo) 以上语句的功能是()
A 查询学员信息表的第一条记录
B 查询学员信息表的第二条记录
C 查询学员信息表的第三条记录
D 语法有问题,不能查询到记录

51、在SQL Server中,为变量赋值的写法,错误的是()
A set @a=3,@b=4
B select @a=3,@b=4
C set @a=3;set @b=4
D select @a=3;select @b=4

52、关系数据库的规范化理论指出,关系数据库中的关系应满足一定的要求,最起码的要求是达到1NF,既满足()
A 主关键字唯一标识表中的每一行
B 关系中的行不允许重复
C 每个非关键字列都完全依赖于主关键字
D 每个属性都有是不可再分的基本数据项

53、在SQL Server中,向用户授予操作权限的sql语句是()
A create
B revoke
C select
D grant

54、在SQL Server中,删除数据库用的命令是()
A DROP FILE
B DROP DATABASE
C DELETE FILE
D DELE DATABASE

55、在SQL Server中,用于求系统日期的函数是()
A date()
B getdate()
C count()
D sum()

56、下列哪个不是SQL Server数据库文件的后缀名?()
A .mdf
B .ldf
C .tif
D .ndf

57、在SQL Server中,SELECT语句中与HAVING子句同时使用的是()子句
A ORDER BY
B WHERE
C GROUP BY
D 无需配合

58、在SQL Server中,删除表中数据的命令是()
A delete
B drop
C clear
D remove

59、下面T-SQL代码运行完的结果是()。 declare @var int=0 set @var=1 while @var<3 begin print ‘var小于3’ set @var+=1 break print ‘语句执行失败’ end
A var小于3
B var小于3 var小于3 var小于3
C var小于3 语句执行失败
D var小于3 var小于3

60、在某个触发器中,存在如下代码片断: Declare @p1 int, @p2 int Select @p1=price from deleted Select @p2=price from inserted print convert(varchar, @p2-@p1) 该触发器是()触发器。
A select
B update
C insert
D delete

61、在SQL Server中,对以下语句描述不正确的是() create view view_stuInfo as select stuName,stuNo,stuAddress from stuInfo go
A 创建了一个命名为view_stuInfo的视图
B 只在一个表上不能创建视图,语法错误
C 此视图一般为班主任查询学员信息提供参考
D 可以用 select * from view_stuInfo查询stuInfo表所有学员的三个字段的信息

62、在SQL Server中,在定义存储过程时,下面说法不正确的是()
A 不要以sp_为前缀创建任何存储过程,因为sp_前缀是SQL Server用来命名系统存储过程的
B 如果定义了默认值,执行存储过程时可以不提供实参
C VARYING用于指定作为输出参数支持的结果集,且仅适用于定义cursor输出参数
D OUTPUT关键词用于指定参数为输入参数的类型

63、在T-SQL中可使用()命令进行注释
A –
B //
C \
D ??

64、在SQL Server数据库中,下面() 做法可以提高查询的性能
A 在查询相关的字段上建立约束,以进行数据的完整性检查
B 通过视图进行查询
C 如果字段经常出现在查询输出中,考虑为其建立聚集索引或者非聚集索引
D 应该为查询排序的字段创建存储过程

65、在SQL Server中 , ()作为批处理的结束标志。
A RETURN
B QUIT
C GO
D EXIT

66、建立一张雇员表(Employee),当用户向表中插入数据不提供入职时间,但系统会默认把当前时间 自动作为员工入职时间插入数据库中,以下做法正确的是()
A 利用CHECK 约束
B 利用DEFAULT 约束
C 利用UNIQUE 约束
D 利用PRIMARY KEY 约束

67、在数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它是数据库设计的()阶段
A 需求分析
B 概要设计
C 逻辑设计
D 物理设计

68、在SQL Server中,以下()语句的返回值不是22
A select abs(-22)
B select abs(22)
C select ceiling(22.1)
D select floor(22.9)

69、在SQL Server中,用来显示数据库信息的系统存储过程是()
A sp_dbhelp
B sp_db
C sp_help
D sp_helpdb

70、在SQL Server中,已知Student表中有一个age列,数据类型是int,如果要限制该列的取值范围在18到28之间,可以使用以下哪个SQL语句()
A alter table Student add check(age>=18 and age<=28)
B alter table Student add default(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)

71、在SQL Server中,查询语句select stuff(‘he rld’,3,1, ‘llo wo’)结果为()
A hello
B world hello
C hello world
D world

72、关于T-SQL语言中的CASE语句,以下说法正确的是()
A then关键字后面可以使用insert、update和delete语句
B then关键字后面可以使用print语句
C case关键字后面不能有任何的表达式
D case语句中else关键字可以省略

73、E-R图中,实体用下面()来表示
A 矩形
B 椭圆形
C 菱形
D 圆形

74、SQL语言中,不是逻辑运算符号的()
A AND
B NOT
C OR
D XOR

75、在SQL Server中,模糊查找like ‘%c_’,下面哪个结果是可能的()
A 2c
B cc
C c22
D c

76、SQL语言是()语言
A 层次数据库
B 网状数据库
C 关系数据库
D 非数据库

77、在SQL Server中,返回当前时间和日期的函数是
A YEAR()
B GETDATE()
C COUNT()
D SUM()

78、在SQL Server中,HAVING子句中应后跟()
A 行条件表达式
B 分组条件表达式
C 视图序列
D 列名序列

79、在SQL Server中,WHERE子句的模糊查询条件表达式里,可以匹配单个字符的通配符是
A *
B %
C _
D ?

80、下面T-SQL代码运行完的结果是() declare @counter int set @counter=1 while @counter<3 begin set @counter=@counter+1 print @counter break print ‘loop’ end
A 2 loop
B 2
C 2 loop 3 loop
D 2 3

81、假设订单表orders用来存储的订单信息,cid代表客户编号,money代表单次订购额,现要查询每个客户的订购次数和每个客户的订购总金额,下面()sql语句可以返回正确结果。
A Select cid,count(distinct(cid)),sum(money) from orders group by cid
B Select cid,count(distinct(cid)),sum(money) from orders order by cid
C Select cid,count(cid),sum(money) from orders order by cid
D Select cid,count(cid),sum(money) from orders group by cid

82、在SQL Server中,授予用户teacher对Score表的插入和修改的权限,正确的授权语句是(C)

A GRANT INSERTUPDATE TO TABLE Score ON teacher
B GRANT INSERT AND UPDATE TO TABLE Score ON teacher
C GRANT INSERTUPDATE ON Score TO teacher
D GRANT INSERT AND UPDATE ON Score TO teacher

83、在SQL Server中,SELECT语句执行的结果是()
A 数据项
B 元组
C 表
D 视图

84、在SQL Server中, 下列()条语句用于事务回滚。
A rollback
B commit
C rollback transaction
D commit transaction

85、在PowerDesigner中,设计的()模型可以直接生成对应的建表建约束脚本
A 概要设计模型
B 概要数据模型
C 物理数据模型
D 实体数据模型

86、在SQL Server中,下面关于联接的描述不正确的是() , 【多选】
A 内联接使用比较运算符根据每个表共有的列值来匹配两个表中的行
B 左外联接结果集包含从右边的表返回的所有行
C 右外联接结果集包含从左边的表返回的所有行
D 全外联接返回左表和右表中的所有匹配的行

87、在SQL Server中,以下哪些() , 可以进行模糊查询。【多选】
A or
B not between
C not in
D like

88、在SQL Server中,数据完整性的包括哪些() , 【多选】
A 引用完整性
B 实体完整性
C 关系完整性
D 域完整性

89、在SQL Server中,下面属于数据定义功能的SQL语句是:() , 【多选】
A CREATE TABLE
B CREATE CURSOR
C UPDATE TABLE
D ALTER TABLE

90、在 SQL Server中,声明一个最多可以存储10个字符的变量pwd,以下代码错误的是() , 【多选】
A DECLARE pwd VARCHAR(10)
B DECLARE @pwd VARCHAR(10)
C pwd VARCHAR(10)
D @pwd VARCHAR(10)

91、在SQL Server中,关于EXISTS子查询,下列说法正确的是() , 【选两项】
A EXISTS指定的子查询返回字符类型的数据
B EXISTS子查询返回的是数据集
C EXISTS子查询返回一个布尔类型的值
D EXISTS用于检测子查询是否返回数据行

92、数据库管理系统的发展历经了如下那些模型阶段() , 【多选】
A 层次模型
B 结构模型
C 关系模型
D 网状模型
E 对象模型

93、在下面关于数据库的说法中,正确的是() , 。【多选】
A 数据库有较高的安全性
B 数据库有较高的数据独立性
C 数据库中的数据可被不同的用户共享

D 数据库没有数据冗余

94、数据库中有两张表student(stuid,stuname,stuage),score(stuid,subject,marks).请分析下面哪些查询可查找出参加过考试的学生姓名?(ABD) , 【多选】

A Select stuname from student where stuid in(select stuid from score)
B Select stuname from student,score where student.stuid=score.stuid
C Select stuname from student left outer join score on student.stuid=score.stuid
D Select stuname from student where exists (select * from score where student.stuid=score.stuid)

95、在SQL Server中,下面的语句执行时不会出现错误的有(BD)【选两项】

A SELECT ename,job,sal FROM EMP  WHERE deptno ALL (SELECT deptno FROM dept WHERE dname LIKE ‘A%);
B SELECT ename,job,sal FROM EMP  WHERE deptno =ANY (SELECT deptno FROM dept WHERE dname LIKE ‘A%);
C SELECT ename,job,sal FROM EMP  WHERE deptno ANY (SELECT deptno FROM dept WHERE dname LIKE ‘A%);
D SELECT ename,job,sal FROM EMP  WHERE deptno IN (SELECT deptno FROM dept WHERE dname LIKE ‘A%);

96、在SQL Server数据库中,你想得到在products表中最贵的产品名称和价格应该使用的正确查询是(AC) , 【选两项】

A SELECT top 1 productname,Unitprice FROM products order by Uniprice Desc
B SELECT productname,MAX(Unitprice ) FROM products
C SELECT productname,Unitprice FROM products WHERE Unitprice=(SELECT MAX(Unitprice) FROM products)
D SELECT productname,MAX(Unitprice ) FROM products ORDER By productname

97、在SQL Server中,关于聚焦索引,以下说法错误的有()【选两项】
A 一个表最多只能创建一个聚焦索引
B 聚焦索引比非聚焦索引有更快的访问速度
C 主键一定是聚焦索引
D 创建了聚焦索引的列不允许有重复值

98、T-SQL 语言按照用途可以分为三类,分别是() , 【多选】
A DML
B DCL

C DQL
D DDL

99、在SQL Server中,下列说法哪些是正确的() , 【选两项】
A RDBMS是数据库管理系统的简称
B 各行记录都不能重复,是第二范式要求的
C 在数据库设计中一定要满足第三范式
D 索引越多,查询越快,数据更新越慢

100、分析下面的存储过程: create procedure MyP1 ( @a varchar(32) ) AS begin tran declare @b int delete from a1 where au_lname like @a select @b =@@rowcount if (@@error!=0) begin rollback tran return 200 end delete from a2 where au_lname like @a select @b=@b+@@rowcount if(@@error!=0) begin rollback tran return 200 end commit tran return @b 下面选项正确的有() , 。【选两项】
A 该存储过程是无效的也不会被创建
B 如果在表a1的删除操作中发生错误,那么它在表a2中就不会执行删除操作
C 如果在表a2中执行删除操作时发生错误,那么表a1中删除的行就会被回滚 回去

D 存储过程会成功执行,并返回200

你可能感兴趣的:(SQL,Server,sql)