第四章sql语言基础练习.doc
如有侵权,请联系网站删除,仅供学习与交流第四章sql语言基础练习【精品文档】第 5 页第4章T-SQL语言基础一、简答或填空题1. SQL语言完成数据定义、数据操纵、数据控制的核心功能用了哪些动词?数据查询SELECT 数据定义CREATEDROPALTER数据操纵INSERT UPDATE DELETE 数据控制GRANT REVOKE2. 在SQL Sever 2000中关键字的含义是什么?系统固定写法,语言规范3. 简要说明标识符的含义?标识符用于SQL SERVER中的服务器、数据库、数据库对象、变量等。标识符分为常规标识符和分隔标识符。4. 标识符首字符必须为(az或AZ )、(# ) 、( _ )、( )以及来自其他语言的字母字符)这四种字符之一。5. 判断23,198 是否为tinyint类型数据?(是 )6. 判断-56,425 是否为tinyint类型数据?( 不是)7. 判断-136,597 是否为smallint类型数据?(不是 )8. 判断48961 是否为smallint类型数据?( 不是)9. 国际标准Unicode采用(双)字节编码统一表示世界上的主要文字。10. 浮点数据类型采用(科学技术 )法存储十进制小数,包括(real)和(float)数据类型。11. 在浮点数据类型decimal(7,3)中7的含义是什么?,3的含义是什么?7是定点精度,3是小数位数使用浮点数据类型decimal(7,3)保存数据456.7891,能够保存它的(3 )位小数?在查询分析器运行以下程序,结果为(456.789 )。declare a decimal(7,3)set a=456.7891print a12. 用char(100)类型存放字符串abcde,使用了(100)个字节。13. 用Varchar(100)类型存放字符串abcde,使用了( 5)个字节。14. 用char(10)类型能存放字符串hello world前(hello worl )个字符。在查询分析器运行以下程序:declare str1 char(10)set str1='hello world'print str1注:单引号不属于字符串的一部分,只是表示字符串的开始和结束。15. 用char(10)类型能存放字符串 河北经贸大学 前(河北经贸大5)个汉字。在查询分析器运行以下程序:declare str2 char(10)set str2='河北经贸大学'print str2注:单引号不属于字符串的一部分,只是表示字符串的开始和结束。16. 在在字符数据类型nchar、nvarchar、ntext中,每个字符占(2)个字节。17. 日期和时间数据类型用于存储日期和时间的结合体,包括( datetime)和(smalldatetime )两种类型。18. 比较datetime类型和smalldatetime类型数据的精确程度,在查询分析器运行以下程序,显示结果为(2011-05-29 12:30:48.000)和(2011-05-29 12:31:00)。declare a datetime, b smalldatetimeset a='2011-5-29 12:30:48'set b='2011-5-29 12:30:48'select a, b19. bit数据类型的取值只有(0 )和(1)。20. 下列程序中的常量分别为(x)、(y)、(0)和(1),运行以下程序,结果为(1)。declare x int, y intset x=5if x>0 set y=1else set y=-1Print y21. 用( 单引号)括起来的一串字符称为字符串常量。22. 运行以下程序,结果为(75)。DECLARE var1 intset var1 = 50set var1 = var1 + 25print var123. 运行以下程序,结果为(1)。declare a bitset a=25Print a24. 运行以下程序,结果为(NULL)。DECLARE Age IntSelect Age25. 使用全局变量时,必须以标记符( )开头。26. 在查询分析器中,使用Print命令显示VERSION以及LANGUAGE的值分别是(Microsoft SQL Server 2000 - 8.00.2039 (Intel X86) May 3 2005 23:18:38 Copyright (c) 1988-2003 Microsoft CorporationPersonal Edition on Windows NT 5.1 (Build 2600: Service Pack 2))和(简体中文)。27. 算术运算符包括(+、-、*、/、%)。28. 取模运算%用于返回一个整数除以另一个整数的(余数), 98%21的值为(14)。29. 数学表达式47×4+(59-14)÷8在SQL Sever 2000中的书写格式为(47*4+(59-14)/8 ),并在查询分析器中计算它的值为(193)。30. 数学表达式在SQL Sever 2000中的书写格式为((power(x,4) +5)/(b*16)),假设x的值为12,b的值为2,在查询分析器中计算它的值为(648.156)。31. 数学表达式在SQL Sever 2000中的书写格式为((b-SQRT(b*b-4*a*c)/(2*a)),假设a、b、c的值分别为3,9和5,在查询分析器中计算它的值为(0.736237)。32. 运行以下程序,结果为(02 6 2011 12:00AM )。DECLARE var datetimeSET var = '1/27/2011'Print var +1033. 运行以下程序,结果为(01 19 2011 2:24AM )。DECLARE var datetimeSET var = '1/27/2011'Print var -7.934. 字符串串联运算符为(+),用于将两个或多个字符串连接起来。35. 'SQL Sever 2000' + '数据库'的值为(SQL Sever 2000数据库)。36. '123' + '321'的值为(123321),'123' + 321的值为(444)。37. 运行以下程序,结果为(石家庄是河北省会)。declare str1 Varchar(20), str2 varchar(20)set str1 = '石家庄'set str2 = str1 + '是河北省会'print str238. 在T-SQL语言中,赋值运算符只有一个为(=),赋值运算符必须与(declare)语句或(set)语句配合使用。39. 比较运算符用于比较两个表达式的大小,比较的结果为布尔值,即(true)、(false)以及(unknown)。40. 假设x和y的值分别为4和9,x2+6 < 80×y的值为(正确)。运行以下程序:declare x int,y intset x=4set y=9if Power(x,2)+6 < 80*yprint '正确'else print '错误'41. 'DEX' < 'DEF'的值为(false),'586'<'59' 的值为(false),'586'<'5' 的值为(false)。42. 运行以下程序,结果为(正确 )。DECLARE start1 datetime, start2 datetimeSET start1 = '2/19/2011'SET start2 = '1/11/2010'if start1>start2 print '正确'else print '错误'43. 运行以下程序,结果为( 错误)。DECLARE start1 datetime, start2 datetimeSET start1 = '12:21:19'SET start2 = '21:11:37'if start1 > start2 print '正确'else print '错误'44. 表达式'E' IN ('A', 'B', 'C', 'L', 'N')结果为(false);表达式'E' NOT IN ('A', 'B', 'C', 'L', 'N')为(true)。45. 表达式17 BETWEEN 10 AND 30结果为(true);17 NOT BETWEEN 10 AND 30结果为(false)46. 布尔表达式(4>9) AND (7 < 11) 的值为(false);NOT (5 > 12)的值为(true)。47. 设局部变量a、b、c、d的值分别为4,3,-2和5,则布尔表达式a + c > 2*d AND b >= 5的值为(false)。48. RAND函数产生的随机数的范围是(0-1之间的随机float值);floor(100*rand()+10)产生的数据范围是( 10-110)。