资源描述:
《数据库实验报告SQL编程基础》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、数学与计算科学系实验报告第一九周实验课程数据库原理实验名称SQL编程基础姓名班级学号指导老师实验性质(必修、选修)必修实验类型(验证、设计、创新、综合)综合实验课时2实验日期、时间2012-4-13实验仪器设备(实验软硬件要求)操作系统XP,惠普微机,CPU3.3G,内存3G,硬盘容量500G实验目的1、掌握SQL程序设计的基木知识2、掌握SQL的变量、控制流语句、游标的应用等的正确使用方法实验内容(实验原理、运用的理论知识、算法、程序、步骤和方法)、一:建M数据库:CREATEDATABASE教学nrAARERETETEDATABASE进程正在磁盘
2、’教学’上分配0.75MB的空间。DATABASE进程正在磁盘’教学上分配0.49MB的空间。-:有学生关系R(学号,姓名,性别,年龄),检索学号为‘200490111’的学生姓名、性别和年龄,并将查询结果传递给局部变量@NAME、@SEX和@人6己1、建立学生表并插入数据CREATETABLE学生(学号CHAR(16),姓名CHAR⑻,性别CHAR⑵,年龄STiIALLINTNOTNULL)2、TTTRRREEEsss999JJJ999明江平明漓纪姜何康(所影响的行数为1行)操作:DECLARE©NAMECHAR(8),©SEXCHAR(2.),©
3、AGESMALLINTSELECT硼ANE二姓名,@SEX二性别,@AGE二年龄FROM学生WHERE学号=,200490111?GO命令已成功完成。三:根据成绩表实现操作如果平均分数小于60分则显示“成绩不及格”;如果分数大于90分则显示“成绩优秀”;其他的则显示:1、建立成绩表并插入数据:CREATETABLE成绩(学号CHAR(16),分数NUMERIC(4谏程编号CHAR8GOINSERTINTOINSERTINTOINSERTINTOINSERTINTOINSERTINTOINSERTINTOINSERTINTOINSERTINTOINSE
4、RTINTOINSERTINTOINSERTINTOGO成成成成成成成成成成成绩绩绩绩绩绩绩绩绩绩绩,1),JVALUESVALUES(7VALUESVALUES(7VALUESVALUES(7VALUESVALUES(7VALUESVALUES(7VALUES1022,1022',2124乙212几2124乙402P,4021402P,1223122兀3012?88?67,/C2,))?95,/C2,)F5;C3'),87,/C4?)?78,/C2,)?67,/C3,)'66;C「)?89,/C2,),93,/C2,)(所影响的行数为1行)2
5、、操作:USE教学GOIF(SELECTAVG(分数)FROM成绩)<60PRINT'成绩不及格’elseIF(SELECTAVG(分数)FROM成绩)>90PRINT,戒综优秀,elsePRINT'成绩及格’GO成绩.及格四:如果平均成绩小于60则执行循环,将成绩加10分,然后选择最高分。如皋最高分小于等于80则继续执行循环,再将分数加10分,直到最高分超过80分退出循环。USE教学G0WILE(SELECTAUG(分数)FROM成绩)<60BEGINUPDATE成绩SET分毀二分数+10SELECTMAX(幷数)FROM成绩IF(SELECTMA
6、X(分数)FROM成绩)>80BREAKELSECONTINUEEND'命令已成功完成。实验内容(实验原理、运用的理论知识、算法、程序、步骤和方法)五:已知学生关系,定义一个STU_CURSOR游标,查询学号以4开头的学生姓名和性别,然后打开游标,提取数据并传递给两个局部变量,最后关闭游标和释放游标:USE教学GODECLARESTU.CURSORCURSORFORSELECT姓名,性别FROM学生WHERE学号LIKE‘4/DECLARE©NAMECHAR(8),©SEXCHAR(2)OPENSTU—CURSORFETCHNEXTFROMSTU.C
7、URSORINTO©NAME,©SEXWHILE©SFETCH^STATUS^OBEGINPRINT©SFETCH.STATUSPRINT@NAME+@SEXFETCHNEXTFROMSTU.SURSORINTO©NAJiffi,©SEXPRINT©SFETCH.STATUSENDCLOSESTU.CURSORDEALLOCATESTUCURSOR命令已成功完成。结论・结果如上所示:心得与思考1、容易出错的地方:@NAME屮间不能有空格;分数前要有AVG不能反回多个值;2、感觉自己所学的还远远不够,还有好多只是没有学到位,也希望在今后的学习中加强自己
8、上机动手能力。成绩评定