数据库考试习题及答案 (2)

sno char(3),

sname varchar(8), score decimal(4,1), email varchar(30), phone varchar(18) )

20. 使用SQL语句创建一个班级表CLASS,属性如下:CLASSNO,DEPARTNO,CLASSNAME;类型均为字符型;长度分别为8、2、20且均不允许为空。

CREATE TABLE CLASS

(CLASSNO CHAR (8) NOT NULL, DEPARTNO CHAR (2) NOT NULL, CLASSNAME CHAR (20) NOT NULL ) 简答题

21. SQL Server2005数据类型中用varchar(max)取代TEXT有意义吗?

可以保证良好的向后兼容

22. SQL Server2005的表有哪几种?

按用途分类:系统表、用户表、分区表 按表的存储时间分类:永久表、临时表

23. 标识列和计算列有什么用?编写一个用到这两种列的CREATE TABLE语句。

答:设计数据表时都会给表ID添加一个标识列,使表按照递增规则增长,故标识列也称为自增列。标识列有三种特点:列的数据类型必须是不带小数的数值类型;在进行出入操作时,该列得值是由系统统一按规律生成,不允许有空值;列值不重复,每个表只能有一个标识列。

计算列区别于需要我们手动或者程序给予赋值的列,它的值来源于该表中其它列的计算值。比如,一个表中包含有数量列Number与单价列Price,我们就可以创建计算列金额Amount来表示数量*单价的结果值,创建Amount列后,在程序中需要使用计算金额这个值时,就不用取出Number列与Price列的值后相乘,而是直接取Amount列的值就可以了。

Create table score ( Sno nchar(9), Cno nchar(6),

Usually numeric(4,1), Final numeric(4,1),

CONSTRAINT PK_score primary key (Sno asc ,Cno asc), CONSTRAINT fk1 foreign key (Sno) references student(Sno), CONSTRAINT fk2 foreign key (Cno) references course(Cno), )

第四章习题

填空题

1. 语句 select ascii('D'), char(67) 的执行结果是68 C。

2. 语句 select lower('Beautiful') , rtrim('我心中的太阳 ') 的执行结果是:beautiful 我心中的太阳。

3. 语句 select day('2004-4-6'), len('我们快放假了.') 的执行结果是:__6_7 _。

4. 语句 select round(13.4321,2), round(13.4567,3)的执行结果是:_13.43 13.457。

5. T-SQL 语言中,有算术运算、字符串连接运算、比较运算和逻辑运算。 6. 语句 SELECT (7+3)*4-17/(4-(8-6))+99%4 的执行结果是35。

7. SQL Server聚合函数有最大、最小、求和、平均和计数等,它们分别是MAX 、MIN、 SUM、avg和count。

8. SQL Server以_____#____开头的标识符,表示临时表或过程;局部变量名字必须以____@_____开头,而全局变量名字必须以@@开头。

9. 语句 select char(65), len('我们快放假了.')的执行结果是A 7。 10. 语句 select lower('beautiful'), rtrim (' 我心中的太阳 ') 的执行结果是:beautiful 我心中的太阳____________。

阅读程序,说明它的功能:在数学成绩管理数据库中查询年龄为20,性别为女的姓名 ,性别和年龄

use 教学成绩管理数据库

select 姓名, 性别, 年龄=datediff(year,出生日期,getdate()) from 学生信息表

where (datediff(year,出生日期,getdate())=20) and (性别='女')

11. 如下代码段的输出是__579___ 。

DECLARE @x int, @y float select @x = 123 , @y = 456 SELECT @x+@y

12. 以下代码段的输出结果为 pass____ 。

DECLARE @point AS int Set @point =95 IF @point >=60 select 'pass' ELSE

select 'no pass'

13. 以下代码段的输出结果为 中等 Set @point =75 SELECT CASE

WHEN @point>=90 THEN '优秀' WHEN @point>=80 THEN '良好' WHEN @point>=70 THEN '中等' WHEN @point>=60 THEN '及格' ELSE '不及格' END AS '分数等级' 选择题

14. Select 语句中用来连接字符串的符号是_A_.

A. “+” B. “&” C.“||” D.“|”

15. SQL Server数据库对象的完整名称由4部分组成。以下哪种是正确的?(B) A. 服务器名.架构名.数据库名.对象名 B. 服务器名.数据库名.架构名.对象名

C. 数据库名.服务器名.架构名.对象名

16. 语句“use teaching”的作用是什么?(B)

A. 打开数据库teaching B. 使用数据库teaching C. 关闭数据库teaching

17. . 语句“select Datepart(mm,getdate())”的输出结果及其类型为(A) A. 当前月份、整型 B. 当前月份、字符型 C. 当前月份的英文名、字符型

18. . 语句“select Datediff(year,'1990-5-1','2012-5-1')”的输出结果为(A)

A. 22 B. -22

19. 语句“select floor(99.5),round(99.457,1)”的输出结果为(B) A. 100 99.4 B. 99 99.5 C. 100 99.5

20. 语句“select Substring('王晓宇',2,2)”的输出结果为(A) A. 晓宇 B. 晓 C. 王晓宇

21. 下面哪个不是SQL Server 的合法标识符( B )。

A. a12 B. 12a C. @a12 D. #qq 22. SQL语言中,不是逻辑运算符号的是(D)。

A. AND B. NOT C. OR D. XOR

联系客服:779662525#qq.com(#替换为@)