数据库 实验报告文档格式.docx
《数据库 实验报告文档格式.docx》由会员分享,可在线阅读,更多相关《数据库 实验报告文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
严格按照实验步骤规范进行实验不但能有效地避免上述种种问题,更重要的是有利于培养软件工作者不可缺少的科学工作方法和作风,培养软件的设计规范。
实验报告的内容
1.题目
描述每个实验的内容是什么。
2.需求分析、程序数据流与功能图
用E-R图描述数据库的模式设计及每个关系模式的建立;
描述数据字典及程序数据流与功能图;
每个事件、函数或过程的头和规格说明;
列出每个过程或函数所调用和被调用的过程或函数,也可以通过调用关系图表示。
主要算法的框架。
3.调试报告
调试过程中遇到的主要问题是如何解决的;
对设计和编码的回顾讨论和分析;
改进设想;
经验和体会等。
4.源程序清单和结果
源程序要加注释,要有测试数据及结果。
实验1:
学习SQLSERVER2000的数据库操纵语句和PB运行环境(4学时)
本次实验的主要目的在于学会使用SQLSERVER2000环境建库的方法和PB编程环境,通过数据库操纵环境,了解库的建立、表的建立、索引的建立、数据库的查询实现方法。
实验数据如下:
Student
SC
sclass
sno
sname
ssex
sage
Sdept
1
李勇
男
20
IS
2
刘晨
女
19
3
刘朋
王敏
18
MA
张锋
李敏
cno
grade
92
85
88
90
80
75
87
89
Course
cname
cpno
ccredit
数据库
5
4
数学
信息系统
操作系统
6
数据结构
7
数据处理
PASCAL语言
实验报告1
日期:
一.题目:
1.建立课程表
2.建立学生表
3.建立选课表
4.查询所有学生的详细信息
5.查询1班的学生学及姓名(某些列)
6.查询‘刘晨’的出生年(列表达式)
7.查询姓‘刘’的学生的详细情况
8.查询选修了1号课的学生姓名、性别、成绩
9.查询没有先行课的课程的课号和课名(NULL的使用)
10.查询2班的所有女生的情况(ANDOR)
11.查询学分为2到4之间的课程(Betweenand)
12.查询选修1或2号课的学生的详细情况
13.查询2班至少选修一门其先行课为1号课的学生的详细情况
14.查询2号科成绩最高的学生
15.查询1班2号课成绩最低的学生
16.查询选修2号课且成绩不是最低的同学(ANY)
17.*查询至少选了1班2号同学所选课的所有同学(EXISTS\相关子查询)
18.*查询不选1号课的学生(EXISTS)
19.查询1班平均分在85分以上的同学详细情况及各科成绩(GROUP)
20.查询选了1号课且选了2号课的学生的学号
22.查询选了1号课但不选2号课的学生的学号
23.查询选2号课的学生的名字及相应2号课成绩,按成绩排序(ORDERBY连接)
二.题目
熟悉PB编程环境,完成PB实用教程中(第2版)实验1。
二.源程序清单和结果
4.SELECT*
FROMStudent
5.SELECTsno,sname
WHERE(sclass='
1'
)
6.SELECTsno,sname,2008-sageASBirthyear
WHERE(sname='
刘晨'
7SELECT*
WHERE(snameLIKE'
刘%'
8SELECTStudent.sname,Student.ssex,SC.grade
FROMSCINNERJOIN
StudentONSC.sno=Student.snoANDSC.sclass=Student.sclass
WHERE(SC.cno='
9.SELECTcno,cname
FROMCourse
WHERE(cpnoISNULL)
10.SELECT*
2'
)AND(ssex='
女'
11SELECTcno,cname,ccredit
WHERE(ccreditBETWEEN2AND4)
12SELECTDISTINCTStudent.*
FROMStudentINNERJOIN
SCONStudent.sclass=SC.sclassANDStudent.sno=SC.sno
)OR
(SC.cno='
13SELECTDISTINCTStudent.*
FROMCourseINNERJOIN
SCONCo=SC.cnoINNERJOIN
WHERE(Course.cpno='
AND)
14SELECTDISTINCTStudent.*
WHERE(SC.gradeIN
(SELECTMAX(grade)
FROMSC
WHEREcno='
))AND(SC.cno='
15SELECT*
(SELECTMIN(grade)
)AND(Student.sclass='
16SELECTStudent.*
WHERE(SC.grade>
ANY
17SELECTDISTINCTStudent.*
SCSCXONStudent.sclass=SCX.sclassANDStudent.sno=SCX.sno
WHERE(NOTEXISTS
(SELECT*
FROMSCSCY
WHERESCY.sclass='
ANDSCY.sno='
ANDNOTEXISTS
FROMSCSCZ
WHERESCZ.sclass=SCX.sclassANDSCZ.sno=SCX.snoAND
SCZ.cno=SCY.cno)))
18SELECTStudent.*
WHEREsno=Student.snoANDcno='
))
20SELECTDISTINCTSC1.sclass,SC1.sno
FROMSCSC1INNERJOIN
SCSC2ONSC1.sclass=SC2.sclassANDSC1.sno=SC2.sno
WHERE(SCo='
)AND(SCo='
实验2:
学习PB及PB与SQLSERVER数据库的连接(4学时)
本次实验的主要目的是掌握PB8.0环境及语句的使用,学习PB与SQLSEREVR数据库的连接方法与编程技巧。
实验报告2
题目见PB实用教程(第2版)中实验2、实验3和实验4,编程序,然后上机调试运行。
二.需求分析设计、程序数据流与功能图
三.调试报告
四.源程序清单和结果
实验3:
学习嵌入SQL及PB常用功能控件的编程使用(4学时)
本次实验的主要目的是掌握嵌入SQL及PB常用功能控件,学会使用嵌入SQL对数据库进行单表精确查询、模糊查询的方法。
实验报告3
见PB实用教程(第2版)中实验5,实验6,另加如下题目。
编程序,然后上机调试运行,也可自选。
采用嵌入SQL实现如下界面功能的查询。
建立学生表:
S(SNO,SNAME,SSEX,SAGE,SADDR)
95001王明24威海
┇
结果显示列表输入家庭地址:
结果
查询
退出
实验4:
学会PB数据窗口编程(4学时)
本次实验的主要目的在于学习SQLSERVER数据库备份与恢复技术,掌握PB数据窗口与数据库的连接操作与编程技巧及方法。
实验报告4
1、练习SQLSERVER数据库备份与恢复技术方法。
2、见PB实用教程(第2版)中实验7、8、9,编程序,然后上机调试运行。
二、需求分析设计、程序数据流与功能图
实验5学会SQL中游标使用、SQL触发器的使用及PB编程菜单生成(4学时)
本次实验的主要目的在于掌握PB中如何用SQL游标进行数据库编程,及使用PB生成报表和菜单,学会SQL触发器的建立。
实验报告5
见PB实用教程(第2版)中实验12、13,编程序,然后上机调试运行。
用SQL2000上机实现书中第5章中例18和例19触发器的定义,并检测触发器是否执行。
[例18]定义一个BEFORE行级触发器,为教师表Teacher定义完整性规则“教授的工资不得低于4000元,如果低于4000元,自动改为4000元。
”
[例19]定义AFTER行级触发器,当教师表Teacher的工资发生变化后就自动在工资表Sal-log中增加一条相应的记录。