收藏 分销(赏)

第四章补充练习.doc

上传人:pc****0 文档编号:7433852 上传时间:2025-01-04 格式:DOC 页数:9 大小:91KB 下载积分:10 金币
下载 相关 举报
第四章补充练习.doc_第1页
第1页 / 共9页
第四章补充练习.doc_第2页
第2页 / 共9页


点击查看更多>>
资源描述
第4章 一、 1. SQL语言完成数据定义、数据操纵、数据控制的核心功能用了哪些动词? 数据定义:CREATE,ALTER,DROP等 数据操纵:SELECT,INSERT,UPDATE,DELETE等 数据控制:GRANTD,DENY,REOOKE等 2. 在SQL Sever 2000中关键字的含义是什么? 就是符号大写 3. 简要说明标识符的含义? 标识符用于标识SQL Server中的服务器,数据库,数据库对象,变量等。 4. 标识符首字符必须为( )、( ) 、( )、( )这四种字符之一。 a~z,A~Z,#,-或@ 5. 判断23,198 是否为tinyint类型数据? 是 6. 判断-56,425 是否为tinyint类型数据? 否 7. 判断-136,597 是否为smallint类型数据? 是 8. 判断48961 是否为smallint类型数据? 否 9. 国际标准Unicode采用( )字节编码统一表示世界上的主要文字。 2 10. 浮点数据类型采用( )法存储十进制小数,包括()和()数据类型。 科学计数法,real,float 11. 在数据类型decimal(7,3)中7的含义是什么?,3的含义是什么? 表示精度为7,小数点左右两边十进制数字最大位数是7; 小数点右边十进数最大位数为3 使用数据类型decimal(7,3)保存数据456.7891,能够保存它的( )位小数? declare @a decimal(5,3) set @a=456.7891 print @a --结果如何? 在查询分析器运行以下程序,结果为( )。 declare @a decimal(7,3) set @a=456.7891 print @a 3 456.789 右框运行错误 12. 用char(100)类型存放字符串abcde,使用了( )个字节。 6 13. 用Varchar(100)类型存放字符串abcde,使用了( )个字节。 6 14. 用nchar(10)类型能存放字符串hello world前( )个字符。 在查询分析器运行以下程序: declare @str1 nchar(10) set @str1='hello world' print @str1 注:单引号不属于字符串的一部分,只是表示字符串的开始和结束。 10 hello worl 15. 用char(10)类型能存放字符串 河北经贸大学 前( )个字符。 在查询分析器运行以下程序: declare @str2 char(10) set @str2='河北经贸大学' print @str2 注:单引号不属于字符串的一部分,只是表示字符串的开始和结束。 5 河北经贸大 16. 在字符数据类型nchar、nvarchar、ntext中,每个字符占()个字节。 2n n 1 17. 日期和时间数据类型用于存储日期和时间的结合体,包括( )和( )两种类型。 Datetime smalldatemate 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 2011-05-29 12:30:48.000 2011-05-29 12:31:00 19. bit数据类型的取值只有( )和()。 0 1 20. 下列程序中的常量分别为()、()、()和(),运行以下程序,结果为()。 declare @x int, @y int set @x=5 if @x>0 set @y=1 else set @y=-1 Print @y y x @ 0 1 21. 用( )括起来的一串字符称为字符串常量。 单引号 22. 运行以下程序,结果为()。 DECLARE @var1 int set @var1 = 50 set @var1 = @var1 + 25 print @var1 75 23. 运行以下程序,结果为()。 declare @a bit set @a=25 Print @a 1 24. 运行以下程序,结果为()。 DECLARE @Age Int Select @Age NULL 25. 使用全局变量时,必须以标记符( )开头。 @@ 26. 在查询分析器中,使用Print命令显示@@VERSION以及@@LANGUAGE的值分别是()和()。 当前安装的日期,版本,处理器类型 当前使用的语言名 27. 取模运算%用于返回一个整数除以另一个整数的(), 98%21的值为(), 3%21的值为(),-3%21的值为(),3.6%21的值为( ) 余数 14 3 -3 3.6 28. 数学表达式47×4+(59-14)÷8在SQL Sever 2000中的书写格式为( ),并在查询分析器中计算它的值为()。 47*4+(59-14)/8 193.625 29. 数学表达式在SQL Sever 2000中的书写格式为( ),假设x的值为12,b的值为2,在查询分析器中计算它的值为()。 (x^4+5)/(b*16) 648.15625 30. 数学表达式在SQL Sever 2000中的书写格式为( ),假设a、b、c的值分别为3,9和5,在查询分析器中计算它的值为()。 (b-(b^2-4*a*c)^(1/2))/(2*a) 0.572 31. 运行以下程序,结果为( )。 DECLARE @var datetime SET @var = '1/27/2011' Print @var +10 02 6 2011 12:00AM 32. 运行以下程序,结果为( )。( 了解:日期+数字,数字中的整数为天,小数为时,如:0.5 为半天,即 12小时,则,0.1 约为 2.4 小时 ) DECLARE @var datetime SET @var = '1/27/2011' Print @var -0.5 01 26 2011 12:00PM 33. 字符串串联(连接)运算符为(),用于将两个或多个字符串连接起来。 + 34. 'SQL Sever 2000' + '数据库'的值为()。 SQL Sever 2000 数据库 35. '123' + '321'的值为(),'123' + 321的值为()。 123321 123 36. 运行以下程序,结果为()。 declare @str1 Varchar(20), @str2 varchar(20) set @str1 = '石家庄' set @str2 = @str1 + '是河北省会' print @str2 另:如将上例改为 declare @str1 char(20), @str2 varchar(20) set @str1 = '石家庄' set @str2 = @str1 + '是河北省会' print @str2 则结果为( ) 石家庄是河北省会 石家庄 37. 在T-SQL语言中,赋值运算符只有一个为(),赋值运算符必须与()语句或()语句配合使用。 = delect int 38. 比较运算符用于比较两个表达式的大小,比较的结果为布尔值,即()、()。 Ture false 39. 假设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 '错误' 说明:power 为求幂次方 函数,在运算中,先算 乘方、再算乘法、再算加法、最后算 关系 <,所以,上述表达式结果为 逻辑值 正确 40. 'DEX' < 'DEF'的值为(),'586'<'59' 的值为(),'586'<'5' 的值为()。 Ture false false 41. 运行以下程序,结果为( )。(日期比较,按照 日期先后比较,比如:2013年 肯定 大于 2012年) DECLARE @start1 datetime, @start2 datetime SET @start1 = '2/19/2011' SET @start2 = '1/11/2010' if @start1>@start2 print '正确' else print '错误' 正确 42. 运行以下程序,结果为( )。(@start1和@start2 缺省日期,日期取 基础日期 1900-1-1,所以,@start1和@start2 的日期相同,按时间大小比较) DECLARE @start1 datetime, @start2 datetime SET @start1 = '12:21:19' SET @start2 = '21:11:37' if @start1 > @start2 print '正确' else print '错误' 错误 43. 表达式'E' IN ('A', 'B', 'C', 'L', 'N')结果为( );表达式'E' NOT IN ('A', 'B', 'C', 'L', 'N')为( )。 注意:可在 查询分析器 中用如下语句验证: if 'E' IN ('A', 'B', 'C', 'L', 'N') print 1 else print 0 问题:下述结果是 if 3 IN ('a',1, 3, 5, 'L', 'N') print 1 else print 0 说明:in 前后表达式比较灵活,甚至可以不相同。但在实际应用中最好一致,是数值则都是数值;是字符串则都是字符串,否则可能出错。 0 1 44. 表达式17 BETWEEN 10 AND 30结果为( );17 NOT BETWEEN 10 AND 30结果为( ) Ture false 45. 布尔表达式(4>9) AND (7 < 11) 的值为( );NOT (5 > 12)的值为( )。 False ture 46. 设局部变量@a、@b、@c、@d的值分别为4,3,-2和5,则布尔表达式@a + @c > 2*@d AND @b >= 5的值为( )。 Ture 二、在查询分析器中,计算以下表达式的值,假设局部变量@x的值为3,局部变量@y的值为’abcdef’,局部变量@z的值为 -7 (1) 2*@x+@z+5 (2) 15*@z+(70-6)/@x (3) 14 % @x (3) @y+'XYZ' (4) '12'+@z (5) 4 & 5 (6) 2 | 5 (7) 4 ^ 5 注意: 在sql中实现上述要求的方法,即,如何将用自然语言翻译成 sql 环境识别的 语句 的方法。打开 查询分析器 ,输入如下命令 Declare @x int, @y Varchar(20), @z int 假设局部变量@x, @y, @z Set @x= 3 Set @y= 'abcdef' @x的值为3,@y的值为’abcdef’, @z的值为 -7 Set @z= -7 Print 2*@x+@z+5 其它类似 4 -84 2 abcdefXYZ 5 4 7 1 三、在在查询分析器中,计算以下函数值,假设局部变量@x的值为3,局部变量@y的值为’abcdef’,局部变量@z的值为 -7(验证函数的方法,参照 二 ) (1) ABS(@z) (2) SQRT(@x) (3)SQUARE(9) (4) POWER(4,@x) (5)SIN(45*3.1416/180) (6) LOG(2*@x) (7) EXP(@x) (8) ROUND(978.4564, 2) (9) CEILING(47.25) (10) CEILING(-47.25) (11) FLOOR(47.25) (12) FLOOR(-47.25) (13) SIGN(@z) (14) UPPER(@y) (15) LOWER('XYZ') (16) LTRIM(' I am a syudent') (17) REPLICATE('ab',2*@x) (18) STUFF('mnopqrstuvw',2,4,UPPER(@y)) (19) REVERSE('xyz') (20) REVERSE(@y) (21) ASCII('a') (22) ASCII(@y) (23) CHAR(100) (24) CHAR(30*@x) (25) STR(6.1435276,10,4) (25) STR(6.1435276,10) (26) len(@y+space(4)) (27) len(space(4)+@y) (28) RIGHT('SQL Sever',@x) (29) LEFT('河北经贸大学',@x-1) (29) SUBSTRING('SQL Sever 2000',5,@x) (30) CHARINDEX('de',@y) (31) CHARINDEX('de',@y,5) (32) REPLACE(@y,'cd','QQQQ') (33) GETDATE( ) (34) DATEADD(DAY,20,'2011-3-15') (35) DATEADD(DAY,20,'2011-3-15') (36) DATEADD(DAY,3*@x,'2011-3-15') (37)DATEADD(year,@x+2,'2000-3-15') (38)DATEDIFF(MONTH,'2010-2-5','2011-3-6') (39)DATEDIFF(MONTH,'2010-2-5',Getdate()) (40) DATENAME(day,'2008-9-25') (40) YEAR('04/19/1995') (41) Cast('20110928' as datetime) (42) CONVERT(Char,Getdate(), 105) (43) '12'+str(@x) 7 1.73205 81 64 0.707108 1.79176 20.0855 978.4600 48 -47 -47 47 -48 -1 ABCDEF xyz I am a syudent mABCDEFrstuvw abababababab 97 fedcba 97 zyx d z 6.1435 6 6 10 ver 河北 Sev 4 0 abQQQQef 2013-04-24 15:03:14.123 2011-04-04 00:00:00.000 2011-03-24 00:00:00.000 2005-03-15 00:00:00.000 13 38 25 1995 2011-09-28 00:00:00.000 24-04-2013 12, 3 在对数据库中的数据进行查询时,常用比较运算符和逻辑运算符来构造查询条件。 例如: 表示条件“x在区间[a,b]内”,在数学上写成a≤x≤b,但在SQL Server中应写成布尔表达式: a <= x AND x <= b 例如: 表示条件“a和b之一为0,但不能同时为零”的布尔表达式可以写成: ( a = 0 AND b <> 0) OR (a <> 0 AND b = 0 ) 将下列数学表达式改写为等价的T-SQL语言表达式 (1) (2) (3)a3+4ab/(a-b) (4) |a2+b2-ab| (5) Sin45 (6) 0≤a≤50 (7)|x+y|+z5 (8) (1+xy)6 (9) (10) (11) (12) sin60+ 根据条件写出相应的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 9
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服