数据库原理课程设计

上传人:鲁** 文档编号:495253193 上传时间:2023-04-23 格式:DOC 页数:10 大小:137KB
返回 下载 相关 举报
数据库原理课程设计_第1页
第1页 / 共10页
数据库原理课程设计_第2页
第2页 / 共10页
数据库原理课程设计_第3页
第3页 / 共10页
数据库原理课程设计_第4页
第4页 / 共10页
数据库原理课程设计_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《数据库原理课程设计》由会员分享,可在线阅读,更多相关《数据库原理课程设计(10页珍藏版)》请在金锄头文库上搜索。

1、数据库原理课程设计一、概述 数据库的普及,学校利用数据库,设计的学生管理系统,大大减少了学校学生管理的工作量。通过对学校日常教学管理中的课程、选课、学生、班级、教师、成绩等相关内容进行分析,完成具有学生管理、成绩管理、班级管理、教师管理、课程管理等相关功能的小型数据库管理应用系统。 通过课程设计,使学生掌握数据库的基本概念,结合实际的操作和设计,巩固课堂教学内容,使学生掌握数据库系统的基本概念、原理和技术,将理论与实际相结合,应用现有的数据建模工具和数据库管理系统软件,规范、科学地完成一个小型数据库的设计与实现,把理论课与实验课所学内容做一综合,并在此基础上强化学生的实践意识、提高其实际动手能

2、力和创新能力。设计环境:本学期学习了PB,在这里就采用PB环境进行数据库原理课程设计。二、需求分析1、问题的提出:为了对数据库的学习进行深入的理解和使用,做一个高效率的学生信息管理管理系统,进行本次的数据库课程设计。2、需完成的功能: 通过对学校日常教学管理中的课程、选课、学生、班级、教师、成绩等相关内容进行分析,完成具有学生管理、成绩管理、班级管理、教师管理、课程管理等相关功能的小型数据库管理应用系统。3、E-R图:课程信息表学分教师号课程号课程名学时学生信息表学号姓名专业年龄系别性别选课成绩课程号学号教师信息表教师号教师名教师性别教课教师系别成绩三、数据表:数据项是数据库的关系中不可再分的

3、数据单位,下表分别列出了数据的名称、数据类型、长度、取值能否为空。设计学生成绩管理数据库,包括课程、学生、教师、成绩四个关系, 其关系模式中对每个实体定义的属性如下:课程信息表course:(课程号,课程名,教师号,学分,学时)学生信息表info:(学号,姓名,性别,年龄,专业,系别)成绩信息表Exam:(学号号,课程名,成绩)教师信息表Teacher:(教师号,教师名,教师性别,教师系别)1、课程信息表(course)字段名描述数据类型字段限制cno课程号char(10)主关键字cname课程名char(10)不能为空teano教师号char(10)不能为空credit学分char(4)不能

4、为空ctime学时char(50)不能为空2、学生信息表(info)字段名描述数据类型字段权限sno学号char(10)主关键字sname姓名char(10)不能为空ssex性别char(2)不能为空sage 年龄char(2)不能为空major专业char(10)不能为空depart系别char(10)不能为空3.教师表(teacher)字段名属 性数据类型字段权限teano教师号char(10)主关键字tname教师名char(10)不能为空Tsex教师性别char(2)不能为空Tdepart教室系别char(10)不能为空4.成绩表(Exam)字段名属 性数据类型字段权限sno学号cha

5、r(10)主关键字cno课程名char(10)不能为空degree成绩char(10)不能为空四、视图,索引,数据库权限:createviewtemp(sno,sname,cname,score)asselectinfo.sno,info.sname,ame,exam.scorefrominfo,exam,coursewhereinfo.sno=o=oCREATEUNIQUEINDEXSTUSNOONinfo(sno);GRANTSELECTONTABLEexamTOPUBLIC;五、软件功能设计功能表: 系统维护(下设系统退出) 信息录入(下设学生基本信息录入|学生成绩录入) 信息查询(下设

6、学生基本信息查询|学生成绩查询*) 报表功能描述:退出系统:退出程序。学生数据输入:输入学号、姓名、性别、年龄、出生年月等学生基本信息。成绩输入:输入各学期学生考试成绩。学生信息查询:查询学生基本信息。学生成绩查询:查询学生考试成绩。按年级输出报表:输出全年级学生各科目考试成绩。按班级输出报表:输出全班学生各科目考试成绩。六、程序代码及控件描述启动封面:(w_start)Open事件代码:SQLCA.dbms=ODBCSQLCA.database=SQLCA.userid=SQLCA.dbpass=SQLCA.logid=SQLCA.logpass=SQLCA.dbparm=ConnectSt

7、ring=DSN=student;UID=dba;PWD=sqlSQLCA.lock=SQLCA.autocommit=falseconnectusingSQLCA;IFSQLCA.Sqlcode0thenmessagebox(无法连接数据库!,SQLCA.sqlerrtext)close(w_start)/else/open(w_startscc)endifCommandButton.text=“进入系统”CommandButtonclicked事件代码:open(w_main)close(w_start)主程序窗口(w_main):title=“学生信息管理系统”包含菜单m_main窗口(

8、w_infoinput)Open事件代码:dw_1.SetTransObject(SQLCA)dw_1.Retrieve()控件datawindow的dataobject属性:i_info(一个freeform风格的数据窗口对象,显示info表的全部列)commandbutton(text属性:保存)clicked事件的代码:dw_1.Update()commandbutton(text属性:取消)clicked事件的代码:dw_1.Retrieve()commandbutton(text属性:插入)clicked事件的代码:dw_1.InsertRow(dw_1.GetRow()comman

9、dbutton(text属性:删除)clicked事件的代码:dw_1.DeleteRow(dw_1.GetRow()窗口(w_scoreinput)Open事件代码:dw_1.SetTransObject(SQLCA)dw_1.Retrieve()控件datawindow的dataobject属性:i_score(一个freeform风格的数据窗口对象,显示exam表的全部列)commandbutton(text属性:保存)clicked事件的代码:dw_1.Update()commandbutton(text属性:取消)clicked事件的代码:dw_1.Retrieve()command

10、button(text属性:插入)clicked事件的代码:dw_1.InsertRow(dw_1.GetRow()commandbutton(text属性:删除)clicked事件的代码:dw_1.DeleteRow(dw_1.GetRow()窗口(w_query)控件statictext的text属性:“请输入学号:”控件groupbox包含24个statictext控件,它们的text属性分别对应info表的字段名和查询结果控件SingleLineEdit的text属性为nullcommandbutton(text属性:查询)clicked事件的代码:Connect;ifSQLCA.SQ

11、LCode0THENMessageBox(数据库错误,SQLCA.SQLErrText,Exclamation!)ENDIF窗口(w_squery)控件groupbox(text属性为:“选择查询模式”)包含2个RadioButton控件,它们的text属性分别为按年级查询和按班级查询控件SingleLineEdit(text属性为Null)功能为获得输入的年级/班级编号控件CommandButton(text属性为确定)的Clicked事件代码:integernintegerslenslen=Len(sle_1.text)n=asc(sle_1.text)-48if(slen1orslen=0)thenmessagebox(错误,数据非法!)sle_1.text=elseif(n9)thenmessagebox(错误,数据非法!)endifconnectusingSQLCA;ifrb_1.checked=truethenselectinfo.sno,info.sname,o,ame,exam.scorefrominfo,course,examwhereinfo.sno=exam.snoand,e

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号