您的当前位置:首页sql server2000 题库

sql server2000 题库

2020-03-05 来源:小侦探旅游网
sql server2000 题库

一、单选题

1.下列属于数据的是( ) A、23是正数 B、2.3是小数 C、2011

D、水深5米 C 2.下列属于信息的是( ) A、23是正数 B、1985 C、2011

D、123 A

3.数据库的英文缩写是 ( ) A、DB B、DBMS C、DBS

D、BBS A

4.数据库管理系统的英文缩写是 ( ) A、DB B、DBMS C、DBS

D、BBS B

5.数据库系统的英文缩写是 ( ) A、DB B、DBMS C、DBS

D、BBS C

6.人工管理阶段是数据管理技术发展的( ) A、第一阶段 B、第二阶段 C、第三阶段

D、第四阶段 A

7.文件系统阶段是数据管理技术发展的( ) A、第一阶段 B、第二阶段 C、第三阶段

D、第四阶段 B

8.数据库系统阶段是数据管理技术发展的( ) A、第一阶段 B、第二阶段 C、第三阶段

D、第四阶段 C

9. SQL是( )数据库管理系统

1

A、层次型 B、网状型 C、关系型

D、数据型 C

10.数据处理是指将数据转换成( )的过程 A、信息 B、数据 C、计算机

D、数字 A

11.数据库管理系统所支持的数据模型有 A、数学模型 B、层次模型 C、物理模型

D、经济模型 B

12.关系模型是( )系统所支持的数据模型 A、数据库 B、数据表

C、数据库管理 D、表单 C

13.一个二维表操作是一种 ( ) A、层次操作 B、网络操作 C、投影操作

D、关系操作 D

14.下列系统数据库中最重要的是( ) A、master B、modol C、msdb

D、tempdb A

15.下列属于模版数据库的是( ) A、master B、modol C、msdb

D、tempdb B

16.下列属于代理服务数据库的是( ) A、master B、modol C、msdb

D、tempdb C

17.下列属于临时数据库的是( ) A、master B、modol C、msdb

D、tempdb D

2

18.下列属于数值型常量的是 A、”123” B、’456” C、[789]

D、5E-6 D 19. 123E-5是( )常量 A、数值型 B、日期型 C、字符型

D、逻辑型 A

20.getdate()是( )类型数据 A、数值型 B、日期型 C、字符型

D、逻辑型 B 21.'2008-8-8'是( )常量 A、数值型 B、日期型 C、字符型

D、逻辑型 C

22.exp(0)+25表达式的运算结果是 A、25 B、25 C、26

D、27 C

23. '123'+‘abc’ 表达式的运算结果是 A、[123] B、‘abc’ C、'123abc'

D、{123abc} C 24.1=2表达式的运算结果是 A、F B、False C、ture

D、.T. B

25.,1>2 or 2>1表达式的运算结果是 A、F B、False C、t

D、ture D

26.函数ABS(-11.4)的值是 A、11.4 B、-11.4 C、11

3

D、12 A

27.函数SQRT(9)的值是 A、9 B、4 C、3

D、6 C

28.函数LEN('ABC计算机')的值是 A、6 B、9 C、8

D、7 B

29.函数SUBSTRING('ABC12计算机',4,2)的值是 A、\"C12\" B、\"12计\" C、'12'

D、\"计算机\" C

30.函数LTRIM(' 计算机')的值是 A、\" 计算机\" B、'计算机' C、\"计算机 \"

D、\" 计算机 \" B 31.函数YEAR('2009-8-12')的值是 A、2009 B、2008 C、8

D、12 A

32.,函数MONTH('2009-8-12')的值是 A、2009 B、2008 C、8

D、12 C

33.函数DAY('2009-8-12')的值是 A、2009 B、2008 C、8

D、12 D

34.函数STR(2009)的值是 A、2009

B、’2009’ C、”2008”

D、2010 B

35.函数POWER(2,10)的值是 A、1000 B、100

4

C、20

D、1024 D

36.函数CEILING(123.45)的值是 A、123 B、124 C、100

D、125 B

37.函数FLOOR(123.45)的值是 A、123 B、124 C、100

D、125 A 38.函数PI()的值是 A、2 B、3 C、4

D、3.14159 D

39.cast('123' as int)+500的值是 A、123500 B、623 C、123

D、500 B

40.创建存储过程的命令是 A、create B、proce C、exec

D、exe A

41.执行存储过程的命令是 A、create B、proce C、exec

D、exe C

42.在表中创建主键约束的关键字是 A、primary key B、unique C、check

D、foreign key A

43.在表中创建唯一性约束的关键字是 A、primary key B、unique C、check

D、foreign key B 44.在表中创建检查约束的关键字是 A、primary key

5

B、unique C、check

D、foreign key C

45.在表中创建外部键约束的关键字是 A、primary key B、unique C、check

D、foreign key D 46.创建表的命令是 A、create B、alter C、drop

D、tabel A 47.修改表的命令是 A、create B、alter C、drop

D、tabel B 48.删除表的命令是 A、create B、alter C、drop

D、tabel C

49.防止数据库中数据的丢失的方法之一是对数据库进行 A、备份 B、还原 C、分离

D、附加 A

50.让数据库回到备份时状态的方法之一是对数据库进行 A、备份 B、还原 C、分离

D、附加 B

51.让数据库脱离原属服务器的方法之一是对数据库进行 A、备份 B、还原 C、分离

D、附加 C

52.让数据库附加到相应服务器上的方法是对数据库进行 A、备份 B、还原 C、分离

D、附加 D 二、判断题

6

1. 180———是数据 Y 2. 180———是信息 N

3. 他的身高是180cm——是数据 N 4. 他的身高是180cm———是信息 Y 5. 数据库的英文缩写是DB Y

6. 数据库管理系统的英文缩写是DBMS Y 7. 数据库系统的英文缩写是DBS Y

8. 数据管理技术发展的第一阶段是人工管理阶段 Y 9. 数据管理技术发展的第二阶段是文件系统阶段 Y 10. 数据管理技术发展的第三阶段是数据库系统阶段 Y 11. 现实世界是用概念模型来对其进行描述 N 12. 信息世界是用概念模型来对其进行描述 Y

13. 实体-联系方法(Entity Relationship Approach)简称E-R方法 Y 14. E-R方法用E-R图来描述现实世界的概念模型 Y 15. E-R图提供了表示实体、属性和联系的方法 Y 16. 数据模型表示数据与数据之间的联系方法 Y 17. SQL是关系型数据库管理系统 Y 18. SQL是网状型数据库管理系统 N 19. 一个二维表就是一个关系 Y

20. 网状型数据模型就是一个二维表 N

21. SQL Server是一种基于客户/服务器模式的关系数据库管理系统 Y

22. SQL Server采用Transact-SQL语言在客户机和服务器之间传递信息 Y 23. 企业管理器可以完成数据库管理与维护的大部分工作 Y 24. 查询分析器主要用于输入和执行Transact-SQL语句 Y

25. 服务管理器用来启动、暂停、继续和停止数据库服务器的实时服务 Y 26. 123E-5是数值型常量 Y

27. {2009-7-26}是日期型常量 N 28. {^2009-7-26}是字符型常量 N 29. '98632' 是字符型常量 Y

30. 数值表达式的运算结果是数值型数据 Y 31. 字符表达式的运算结果是字符型数据 Y 32. 日期表达式的运算结果是日期型数据 N 33. 关系表达式的运算结果是关系型数据 N 34. 逻辑表达式的运算结果是逻辑型数据 Y 35. 函数rand()的数据类型是数值型的 Y 36. 函数exp(0)的数据类型是数值型的 Y 37. 函数len('ase')的数据类型是字符型的 N 38. 函数len('ase')的数据类型是数值型的 Y 39. 函数getdate()的数据类型是逻辑型的 N 40. 函数getdate()的数据类型是日期型的 Y 41. 表就是数据库,数据库中只有表 N 42. 字段是字符型常量 N

43. 数据表中每一行对应一条记录 Y

44. 删除一个字段就是删除对应表中的一列数据 Y

7

45. 删除一个字段就是删除对应表中的一行数据 N 46. 删除一个记录就是删除对应表中的一行数据 Y 47. 删除一个记录就是删除对应表中的一列数据 N 48. 执行路线是一条直线的程序结构为顺序结构 Y 49. 执行路线从一条分成多条的程序结构为分支结构 Y 50. 执行路线形成闭环的程序结构为循环结构 Y 51. 备份数据库的目的是防止数据库中数据的丢失 Y 52. 备份数据库的目的是防止硬盘损坏 N

53. 还原数据库的目的是让数据库回到备份时的状态 Y 54. 还原数据库的目的是重建数据库 N

55. 分离数据库的目的是让数据库脱离原属服务器 Y 56. 分离数据库的目的是删除数据库 N

57. 附加数据库的目的是让数据库附加到相应的服务器上 Y 58. 附加数据库只能附加到原来的服务器上 N 59. 数据库的索引和书籍中的目录非常相似 Y

60. 为了提高数据检索的能力,在数据库中引入了索引的概念 Y 三、命令填空

1.创建数据库gz命令create【 1】gz [1B]database[1E] 2.创建数据库gz命令【 1】database gz [1B]create[1E] 3. 打开数据库gz命令【 1】gz [1B]use[1E]

4.修改数据库gz命令alter【 1】gz [1B]database[1E] 5.修改数据库gz命令【 1】database gz [1B]alter[1E] 6.删除数据库gz命令drop【 1】gz [1B]database[1E] 7.删除数据库gz命令【 1】database gz [1B]drop[1E] 8. 创建数据表cj命令 create 【 1】 cj [1B]table[1E] 9.创建数据表cj命令 【 1】table cj [1B]create[1E]

10. 增加字段:【 1】 table cj add 入学日期 datetime(8) [1B]alter[1E] 11.增加字段:alter table cj 【 1】 入学日期 datetime(8) [1B]add[1E] 12.删除表:【 1】 table chji [1B]Drop[1E] 13.删除表:Drop 【 1】 chji [1B]table[1E]

14.插入记录:【 1】 into 成绩表(学号,计算机) values('201119511026', 75) [1B]insert[1E]

15.插入记录:insert 【 1】 成绩表(学号,计算机) values('201119511026', 75) [1B]into[1E]

16.插入记录:insert into 成绩表(学号,计算机) 【 1】('201119511026', 75) [1B]values[1E]

17.cj表中插入记录:insert into 【 1】(学号,计算机) values('201119511026', 75) [1B]cj[1E]

18.把cj表中的内容全部插入到ch中:【 1】 ch select * from cj [1B]insert[1E] 19.把cj表中的内容全部插入到ch中:insert 【 1】 select * from cj [1B]ch[1E] 20.把cj表中的内容全部插入到ch中:insert ch 【 1】 * from cj [1B]select[1E] 21.把cj表中的内容全部插入到ch中:insert ch select * 【 1】 cj [1B]from[1E] 22.删除理学院的所有记录:【 1】 from gzqd where 单位名称=’理学院’ [1B]delete[1E] 23.删除理学院的所有记录:delete 【 1】 gzqd where 单位名称=’理学院’ [1B]from[1E]

8

24.删除理学院的所有记录:delete from gzqd 【 1】 单位名称=’理学院’ [1B]where[1E] 25.删除理学院的所有记录:delete from gzqd where 单位名称=’【 1】’ [1B]理学院[1E]

26.计算实发工资:【 1】 gzqd set 实发=基本工资+津贴-个人税-水电费 [1B]update[1E] 27.计算实发工资:update gzqd 【 1】 实发=基本工资+津贴-个人税-水电费 [1B]set[1E] 28.查询gzqd表中所有记录:【 1】 * from gzqd [1B]Select[1E] 29.查询gzqd表中所有记录:Select 【 1】 from gzqd [1B]*[1E] 30.查询gzqd表中所有记录:Select * 【 1】 gzqd [1B]from[1E]

850,查询gzqd表中所有记录:Select * from 【 1】 [1B]gzqd[1E]

31.查询gzqd表中姓名和 基本工资的情况:Select 姓名, 【 1】 from gzqd [1B]基本工资[1E]

32.查询gzqd表中前5条记录:Select【 1】5 * from gzqd [1B]top[1E] 33.查询基本工资>1000的记录:select * from gzqd 【 1】 基本工资>1000 [1B]where[1E] 34.查询基本工资>1000的记录:select * from gzqd where 基本工资【 1】1000 [1B]>[1E] 35.查询理学院的教授情况:

select * from gzqd where 单位名称='【 1】' and 职称='教授' [1B]理学院[1E] 36.查询理学院的教授情况:

select * from gzqd where 单位名称='理学院' 【 1】 职称='教授' [1B]and[1E] 37.查询理学院的教授情况:

select * from gzqd where 单位名称='理学院' and 职称='【 1】' [1B]教授[1E] 38.查询姓李的职工情况;select * from gzqd where 姓名 【 1】 '李%' [1B]like[1E] 39.查询姓李的职工情况;select * from gzqd where 姓名 like '【 1】%' [1B]李[1E] 40.查询姓李的职工情况;select * from gzqd where 姓名 like '李【 1】' [1B]%[1E] 41.查询实发工资在1000-1300元之间的职工情况:

select * from gzqd where 实发 【 1】 1000.00 and 1300.00 [1B]between[1E] 42.查询实发工资在1000-1300元之间的职工情况:

select * from gzqd where 实发 between 1000.00 【 1】 1300.00 [1B]and[1E] 43.查询结果按实发工资降序排列:

select * from gzqd order by 实发 【 1】 [1B]desc[1E] 44.查询结果按实发工资降序排列:

select * from gzqd 【 1】 by 实发 desc [1B]order[1E]

45.,统计gzqd表的记录个数:Select 【 1】(*) as 记录数 from gzqd [1B]count[1E] 46.求基本工资的平均值:Select 【 1】(基本工资) from gzqd [1B]avg[1E] 47.求基本工资的平均值:Select avg(【 1】) from gzqd [1B]基本工资[1E] 48.求基本工资的总额:Select 【 1】(基本工资) from gzqd [1B]sum[1E] 49.查询结果按单位名称分组:

Select 单位名称,姓名 from gzqd 【 1】 by 单位名称,姓名 [1B]group[1E] 50.查询结果按单位名称分组:

Select 单位名称,姓名 from gzqd group by 【 1】,姓名 [1B]单位名称[1E] 51.保存查询结果到cj:select * 【 1】 cj from cc [1B]into[1E] 52.保存查询结果到cj:select * into 【 1】 from cc [1B]cj[1E] 53.创建视图st: 【 1】 view st as

9

selcet * from gzqd [1B]create[1E] 54.创建视图st: create 【 1】 st as

selcet * from gzqd [1B]view[1E] 55.创建视图st: create view st 【 1】

selcet * from gzqd [1B]as[1E]

56.在数据库xs中建立数据表cj(包括字段:学号、姓名、数学、外语、计算机) use 【1 】

create 【 2】 【 3】

(学号 char(12) not null, 姓名 char(8), 【 4】 decimal(6,2), 外语 decimal(6,2), 【5 】 decimal(6,2))

[1B]xs[1E][2B]table[2E][3B]cj[3E][4B]数学[4E][5B]计算机[5E] 四、程序填空

1.两个变量值的交换

declare @a int ,@b int ,@c int set @a=5 set @b=9

select @a as a,@b as b set @c=@【 1】 set @a=@【 2】 set @b=@【 3】

【 4】 @a as a,@【 5】 as b

[1B]a[1E][2B]b[2E][3B]c[3E][4B]select[4E][5B]b[5E] 2.已知三角形的三条边为a、b、c,求其面积。

【 1】 @a int,@b int,@c int,@p decimal, @s decimal (10,5) 【 2】 @a=7 set @b=5 set @c=6

set @p=(@a+@b+@c)/【 3】

set @s=【 4】(@p*(@p-@a)*(@p-@b)*(@p-@c)) print @【 5】

[1B]declare[1E][2B]set[2E][3B]2[3E][4B]sqrt[4E][5B]s[5E] 3.判断一个学生成绩cj属于哪个等级 declare @cj int,@dj varchar(20) 【 1】 @cj=round(rand()*100,0)+1 set @dj= case

when @【 2】 then '不及格'

【 3】 @cj>=60 and @cj<90 then '及格' when @cj>=90 【 4】 @cj<=100 then '优秀' else

10

'数据错误' end

select @【 5】 as '等级'

[1B]set[1E][2B]cj<60[2E][3B]when[3E][4B]and[4E][5B]dj[5E]

4.求数据库gz中的表文件gzqd中的基本工资的平均值、总计、最大值和最小值 【 1】 gz 【 2】 count(*),【 3】(基本工资),sum(基本工资),【 4】(基本工资),min(基本工资) 【 5】 gzqd

[1B]use[1E][2B]select[2E][3B]avg[3E][4B]max[4E][5B]from[5E] 5.判断某一年(y)是否为闰年? 【 1】 @d int

【 2】 @d=year('2012-5-8')

if (@d【 3】4=0 and @d%100!=0) 【 4】 (@d%400=0) print str(@d)+'是闰年' else

print str(@【 5】)+'不是闰年'

[1B]declare[1E][2B]set[2E][3B]%[3E][4B]or[4E][5B]d[5E] 882,计算1+2+3+……100 declare @i int,@s int set @【 1】 set @i=1

while @i<=【 2】 begin

set @s=@【 3】+@i set @i=@i+【4】 【 5】 print @s

[1B]s=0[1E][2B]100[2E][3B]s[3E][4B]1[4E][5B]end[5E] 6.计算1+3+5+……99 【 1】 @i int,@s int set @s=0

set @i=【 2】 while @i<=99 【 3】

set @s=@s+@【4】 set @i=@i+【 5】 end print @s

[1B]declare[1E][2B]1[2E][3B]begin[3E][4B]i[4E][5B]2[5E] 7.计算2+4+6+……100空 【 1】 @i int,@s int set @s=0

set @i=【 2】 while @i<=100

11

【 3】

set @s=@s+@【4】 set @i=@i+【 5】 end

print @s [1B]declare[1E][2B]2[2E][3B]begin[3E][4B]i[4E][5B]2[5E] 7.求所有的3位正整数除以99的商和余数,并输出。 declare @i int, @a int, @b int set @i=【 1】 while @i<=【 2】 【 3】

set @a=@i【4】99 set @b=@i【 5】99 select @a , @b set @i=@i+1 end

[1B]100[1E][2B]999[2E][3B]begin[3E][4B]/[4E][5B]%[5E] 8.求1!+2!+3!+4!+5!。

declare @i int,@k int,@t int,@s bigint set @s=【 1】 set @k=1

while @k<=【 2】 begin

set @t=【 3】 set @i=1

while @i<=@【 4】 begin

set @t=@t*@i set @i=@i+1 end

set @s=@s+@【 5】 set @k=@k+1 end print @s

[1B]0[1E][2B]5[2E][3B]1[3E][4B]k[4E][5B]t[5E] 9.统计未来100年中闰年的年份个数 declare @i int,@h int set @h=【 1】 set @i=2013

while @i<=【 2】 begin

if (@i%4=0 and @i%100!=0) or (@i%400=0) set @h=@h+【 3】 set @i=@i+1 【4】

12

print @【 5】

[1B]0[1E][2B]2113[2E][3B]1[3E][4B]end[4E][5B]h[5E] 10.求1至100之间能被7整除的数之和 declare @i int,@s 【 1】 set @s=0

set @i=【 2】 while @i<=100 begin

if @i%【 3】=0 set @s=@s+@【 4】 set @i=@i+1 【 5】 print @s

[1B]int[1E][2B]1[2E][3B]7[3E][4B]i[4E][5B]end[5E] 11.求和:s=1+1/2+1/4++1/8……+1/1024 declare @i int,@s decimal(8,5) set @s=【 1】 set @i=1

while @i<=【2】 begin

set @s=@s+1.0/【 3】(2,@i) set @i=@i+【4】 【 5】 print @s

[1B]1[1E][2B]10[2E][3B]power[3E][4B]1[4E][5B]end[5E] 12.求s=1+2+3+……+n>9999的最小n declare @n int,@s int set @s=【1 】 set @n=1 b_1:

set @s=@s+@【2 】 set @n=@n+1

if @【3 】>=9999 begin

select @【4】 return end 【5】 b_1

[1B]0[1E][2B]n[2E][3B]s[3E][4B]n-1[4E][5B]goto[5E] 13.创建存储过程njc,求t=n!,并使用输出参数返回结果 Create 【1 】 njc

@i int,@n int, @t bigint 【2】 【3】

set @t=【4 】

13

set @i=1 while @i<=@n begin

set @t=@t*@【5 】 set @i=@i+1 end

[1B]procedure[1E][2B]output[2E][3B]as[3E][4B]1[4E][5B]i[5E] 14.求解方程ax2+bx+c=0 (a≠0) (建立过程:jfc) 【 1】 procedure jfc

@a float, @b float , @c float,

@x1 float output, @x2 float output , @xx varchar(30) output 【 2】 if @a=0 【3】

if @b*@b-4*@a*@c>=0 begin

set @x1=(-@b+sqrt(@b*@b-4*@a*@c))/(2*@a) set @x2=(-@b-sqrt(@b*@b-4*@a*@c))/(2*@a) select @x1,@【 4】 end 【5】

set @xx= ' 此方程无实根'

[1B]create[1E][2B]as[2E][3B]return[3E][4B]x2[4E][5B]else[5E] 五、程序题

1.求边长为10的正方形内切圆面积 declare @a int,@s float set @a=6

set @s=3.14*(@a/2)*(@a/2)

print '内切圆的面积为:'+cast(@s as varchar(10))

2.已给2个正整数m=78和n=329,求n除以m的商和余数 declare @m int,@n int,@p int,@q int set @m=78 set @n=329 set @p=@n/@m set @q=@n%@m

select @p as 商,@q as 余数

3.任意给出两个变量a和b,编写程序实现两个变量a=5和b=9的值的交换. declare @a int,@b int,@t int set @a=5 set @b=9 set @t=@a set @a=@b set @b=@t

14

select @a a,@b

4.将任意一个3位正整数x=753进行分解,然后求其各个数位上的数字之和s declare @a int,@b int,@c int,@x int,@s int set @x=753

set @a=floor(@x/100)

set @b=floor((@x-@a*100)/10) set @c=@x-@a*100-@b*10 set @s=@a+@b+@c select @s

5. 若x='abc5hh73k9',求x中的数字之和 declare @a varchar(10),@s int set @s=0

set @a='abc5hh73k9'

set @s=@s+cast(substring(@a,4,1) as int) set @s=@s+cast(substring(@a,7,1) as int) set @s=@s+cast(substring(@a,8,1) as int) set @s=@s+cast(substring(@a,10,1) as int) print @s

6.已知三角形的三条边为a=7,b=9,c=5,求其面积. declare @a int,@b int,@c int,@p real,@s real set @a=7 set @b=9 set @c=5

set @p=(@a+@b+@c)/2

set @s=sqrt((@p-@a)*(@p-@b)*(@p-@c)*@p) print @s

2

7.求解一元二次方程:2x+7x-78=0

declare @a int,@b int,@c int,@d real,@x1 real,@x2 real set @a=2 set @b=7 set @c=-78

set @d=@b*@b-4*@a*@c

set @x1=(-@b+sqrt(@d))/(2*@a) set @x2=(-@b-sqrt(@d))/(2*@a) print @x1 print @x2

8.判断某一年或今年是否为闰年. declare @y int,@p varchar(10) set @y=2013

if @y%4=0 and @y%100<>0 or @y%400=0 set @p='是闰年' else

set @p='不是闰年' print @p

15

9.求和:s=1+2+3+…+100 declare @i int,@s bigint select @i=1,@s=0 while @i<=100 begin

set @s=@s+@i set @i=@i+1 end

select '@s=',@s

10.求和:s=1+3+5+…+99 declare @i int,@s bigint select @i=1,@s=0 while @i<=100 begin

set @s=@s+@i set @i=@i+2 end

select '@s=',@s

11. 求和:s=2+4+6+…+100 declare @i int,@s bigint select @i=2,@s=0 while @i<=100 begin

set @s=@s+@i set @i=@i+2 end

select '@s=',@s

12.求1到100之间能被7整除数的和。declare @i int,@s bigint select @i=1,@s=0 while @i<=100 begin if @i%7=0 set @s=@s+@i set @i=@i+1 end

select '@s=',@s

13.输出一个数列:1,2,3,4,5,6,7,8,9 declare @i int,@s varchar(20) select @i=1,@s='' while @i<=9 begin

set @s=@s+str(@i,1)+',' set @i=@i+1

16

end

print left(@s,len(@s)-1)

14.求s=1+1/2+1/4+1/8+1/16…+1/1024 declare @i real,@s real select @i=1,@s=0 while @i<=1024 begin

set @s=@s+1/@i set @i=@i*2 end

print @s

15.求s=1*2*3*4*5*6的累乘积 declare @i int,@s int select @i=1,@s=1 while @i<=6 begin

set @s=@s*@i set @i=@i+1 end

print @s

16.找出并输出2013-2113之间所有闰年的年份

判断条件为:能被4整除但不能被100整除,或能被400整除 declare @y int set @y=2013 while @y<=2113 begin

if @y%4=0 and @y%100<>0 or @y%400=0 print @y set @y=@y+1 end

17.统计未来100年中闰年的年份个数。 declare @y int,@n int set @y=2013 set @n=0

while @y<=2113 begin

if @y%4=0 and @y%100<>0 or @y%400=0 set @n=@n+1 set @y=@y+1 end

print @n

18.求1!+2!+3!+…+20!

declare @i int,@s bigint,@p bigint select @i=1,@s=1,@p=0

17

while @i<=20 begin

set @s=@s*@i set @i=@i+1 set @p=@p+@s end

print @p 或者

declare @i int,@s bigint,@p bigint,@j int select @i=1,@p=0 while @i<=20 begin set @s=1 set @j=1 while @j<=@i begin

set @s=@s*@j set @j=@j+1 end

set @p=@p+@s set @i=@i+1 end

print @p

19.求使t=1*2*3*……*n>10000 的最小n declare @n int,@s int set @n=0 set @s=1

while @s<10000 begin

set @n=@n+1 set @s=@s*@n end

print @n

20.有一张0.5mm厚足够大的纸,问对折多少次可以达到珠峰高度(8848.13m) declare @n int,@h float set @n=0

set @h=0.0005 while @h<8848.13 begin

set @h=@h*2 set @n=@n+1 end

print @n

21.找出并输出100-999之间所有能被22整除的数

18

declare @n int set @n=100 while @n<999 begin

if @n%22=0 print @n set @n=@n+1 end

22.求s=0.1+0.2+0.3+…+1 declare @n float,@s float set @n=0.1 set @s=0 while @n<=1 begin

set @s=@s+@n set @n=@n+0.1 end

print @s

23.求s=1+1/2+1/3+1/4+…+1/50 declare @n float,@s float set @n=1 set @s=0 while @n<=50 begin

set @s=@s+1/@n set @n=@n+1 end

print @s

24.创建存储过程jszf:计算cj表(字段:姓名、高数、马哲、英语、计算机、总分、平均分)中的总分 create proc jszf as

update cj set 总分=高数+马哲+英语+计算机

25.创建存储过程jspj:计算cj表(字段:姓名、高数、马哲、英语、计算机、总分、平均分)中的平均分 create proc jspj as

update cj set 平均分=(高数+马哲+英语+计算机)/4

26.创建存储过程jssf:计算gz表(字段:单位名称、姓名、基本工资、津贴、个人税、水电费、实发工资、备注)中的实发工资 create proc jssf as

update gz set 实发工资=基本工资+津贴-个人税-水电费

19

27.创建存储过程jsfj:使gz表(字段:单位名称、姓名、基本工资、津贴、个人税、水电费、实发工资、备注)中的基本工资增加50元 create proc jsfj as

update gz set 基本工资=基本工资+50

28.创建存储过程jsfj:使gz表(字段:单位名称、姓名、基本工资、津贴、个人税、水电费、实发工资、备注)中的津贴增加10% create proc jsfj as

update gz set 津贴=津贴*1.1

29.添加gz表(字段:单位名称、姓名、基本工资、津贴、个人税、水电费、实发工资、备

注)中的备注:单位名称为理学院、工学院、商学院分别对应的备注为理、工、商。 Update gz

Set 备注=case 单位名称

When ‘理学院’ then ‘理’ When ‘工学院’ then ‘工’ When ‘商学院’ then ‘商’ End

30.添加gz表(字段:单位名称、姓名、职称、基本工资、津贴、个人税、水电费、实发工资、备注)中的备注:职称为教授、讲师、助教分别对应的备注为高职、中职、初职。 Update gz

Set 备注=case 职称

When ‘教授’ then ‘高职’ When ‘讲师’ then ‘中职’ When ‘助教’ then ‘初职’ End

31.,创建存储过程fd:计算y值:x>0, y为x的平方根; x<=0, y为x的绝对值 create proc fd @x int as

declare @y int if @x>0

set @y=sqrt(@x) else

set @y=abs(@x) print @y

32.创建存储过程fd:计算y值:x>0, y=x*x; x<=0, y=exp(x) create proc fd @x int as

declare @y float if @x>0

set @y=@x*@x else

set @y=exp(@x print @y)

20

33.创建存储过程qh,用于计算两个参数a与b之和并将其输出 create proc qh @x int,@y int ,@s int output as

set @s=@x+@y

21

因篇幅问题不能全部显示,请点此查看更多更全内容