第4章T-SQL语言基础上机要求第1部分
一、简答或填空题
1. SQL语言完成数据定义、数据操纵、数据控制的核心功能用了哪些动词?
2. 在SQL Sever 2000中关键字的含义是什么?
3. 简要说明标识符的含义?
4. 标识符首字符必须为( )、( ) 、( )、( )这四种字符之一。
5. 判断23,198 是否为tinyint类型数据?()
6. 判断-56,425 是否为tinyint类型数据?()
7. 判断-136,597 是否为smallint类型数据?()
8. 判断48961 是否为smallint类型数据?()
9. 国际标准Unicode采用( )字节编码统一表示世界上的主要文字。
10. 浮点数据类型采用()法存储十进制小数,包括()和()数据类型。
11. 在浮点数据类型decimal(7,3)中7的含义是什么?,3的含义是什么?
使用浮点数据类型decimal(7,3)保存数据456.7891,能够保存它的()位小数?
在查询分析器运行以下程序,结果为()。
declare @a decimal(7,3)
set @a=456.7891
print @a
12. 用char(100)类型存放字符串abcde,使用了()个字节。
13. 用Varchar(100)类型存放字符串abcde,使用了()个字节。
14. 用char(10)类型能存放字符串hello world前()个字符。
在查询分析器运行以下程序:
declare @str1 char(10)
set @str1='hello world'
print @str1
注:单引号不属于字符串的一部分,只是表示字符串的开始和结束。
15. 用char(10)类型能存放字符串河北经贸大学前()个汉字。
在查询分析器运行以下程序:
declare @str2 char(10)
set @str2='河北经贸大学'
print @str2
注:单引号不属于字符串的一部分,只是表示字符串的开始和结束。
16. 在在字符数据类型nchar、nvarchar、ntext中,每个字符占()个字节。
17. 日期和时间数据类型用于存储日期和时间的结合体,包括( )和( )两种类型。
18. 比较datetime类型和smalldatetime类型数据的精确程度,在查询分析器运行以下程序,显示结果为()和()。
declare @a datetime, @b smalldatetime
set @a='2011-5-29 12:30:48'
set @b='2011-5-29 12:30:48'
select @a, @b
19. bit 数据类型的取值只有( )和()。
20. 下列程序中的常量分别为()、()、()和(),运行以下程序,结果为()。
declare @x int, @y int
set @x=5
if @x>0
set @y=1
else
set @y=-1
Print @y
21. 用( )括起来的一串字符称为字符串常量。
22. 运行以下程序,结果为()。
DECLARE @var1 int
set @var1 = 50
set @var1 = @var1 + 25
print @var1
23. 运行以下程序,结果为()。
declare @a bit
set @a=25
Print @a
24. 运行以下程序,结果为()。
DECLARE @Age Int
Select @Age
25. 使用全局变量时,必须以标记符( )开头。
26. 在查询分析器中,使用Print 命令显示@@VERSION 以及@@LANGUAGE 的值分别是
()和()。
27. 算术运算符包括()。
28. 取模运算%用于返回一个整数除以另一个整数的(), 98%21的值为()。
29. 数学表达式47×4+(59-14)÷8在SQL Sever 2000中的书写格式为( ),并在查询分析器中
计算它的值为()。
30. 数学表达式16
54?+b x 在SQL Sever 2000中的书写格式为( ),假设x 的值为12,b 的值为2,在查询分析器中计算它的值为()。
31. 数学表达式a
ac b b 242--在SQL Sever 2000中的书写格式为( ),假设a 、b 、c 的值分别为3,9和5,在查询分析器中计算它的值为()。
32. 运行以下程序,结果为( )。
DECLARE @var datetime
SET @var = '1/27/2011'
Print @var +10
33. 运行以下程序,结果为( )。
DECLARE @var datetime
SET @var = '1/27/2011'
Print @var -7.9
34. 字符串串联运算符为(),用于将两个或多个字符串连接起来。
35. 'SQL Sever 2000' + '数据库'的值为()。
36. '123' + '321'的值为(),'123' + 321的值为()。
37. 运行以下程序,结果为()。
declare @str1 Varchar(20), @str2 varchar(20)
set @str1 = '石家庄'
set @str2 = @str1 + '是河北省会'
print @str2
38. 在T-SQL语言中,赋值运算符只有一个为(),赋值运算符必须与()语句或()语句配合使用。
39. 比较运算符用于比较两个表达式的大小,比较的结果为布尔值,即()、()以及()。
40. 假设x和y的值分别为4和9,x2+6 < 80×y的值为()。
运行以下程序:
declare @x int,@y int
set @x=4
set @y=9
if Power(@x,2)+6 < 80*@y
print '正确'
else
print '错误'
41. 'DEX' < 'DEF'的值为(),'586'<'59' 的值为(),'586'<'5' 的值为()。
42. 运行以下程序,结果为( )。
DECLARE @start1 datetime, @start2 datetime
SET @start1 = '2/19/2011'
SET @start2 = '1/11/2010'
if @start1>@start2
print '正确'
else
print '错误'
43. 运行以下程序,结果为( )。
DECLARE @start1 datetime, @start2 datetime
SET @start1 = '12:21:19'
SET @start2 = '21:11:37'
if @start1 > @start2
print '正确'
else
print '错误'
44. 表达式'E' IN ('A', 'B', 'C', 'L', 'N')结果为();表达式'E' NOT IN ('A', 'B', 'C', 'L', 'N')为()。
45. 表达式17 BETWEEN 10 AND 30结果为();17 NOT BETWEEN 10 AND 30结果为()
46. 布尔表达式(4>9) AND (7 < 11) 的值为();NOT (5 > 12)的值为()。
47. 设局部变量@a 、@b 、@c 、@d 的值分别为4,3,-2和5,则布尔表达式@a + @c > 2*@d AND @b >= 5的值为()。
48. RAND 函数产生的随机数的范围是();floor(100*rand()+10)产生的数据范
围是( )。
49. 将下列数学表达式改写为等价的T-SQL 语言表达式 (1) ac b 42
- (2) xy y x 2
2- (3)a 3+4ab/(a-b) (4) |a 2+b 2-ab| (5) Sin45 (6) 0≤a ≤50 (7)|x+y|+z 5 (8) (1+xy)6 (9) xy
y x 310+ (10) a ac b b 242-+- (11) 3
211111r r r ++ (12) sin60+110ln 10+++y x e
二、根据条件写出相应的T-SQL 表达式
1. x 、y 之一小于z.
2. x 和y 都大于z.
3. 表示“x 是小于50的非负数”
4. 已知直角坐标系中任意一点的坐标(x, y), 表示其位于第1或第3象限内。
5. 将变量x 的值按四舍五入保留小数点后两位。例如:x 的值为123.2389,则表达式的值应
为123.24。
6. 表示x 是5或7的倍数
7.取字符型变量S 中从第5个字符起6个字符。
8. 表示关系式10≤x ≤20。
9. 产生100~150(包括100和150)范围内的一个正整数
10. 产生“A ” ~“Z ”范围内的一个大写字符。
提示:A 的ASCII 码为65,Z 的ASCII 码为90