数据库课程设计指导书课程设计指导教师评语成绩:___________指导教师签字:___________附录学生作业管理系统1 选题背景及需求简介随着科技以及教育水平的发展,网络逐渐成为一种新型的教育平台。
作业作为老师教学过程中的一个重要环节,作为学生学习情况的直接反馈,却一直没有得到相应的重视。
为了加强对作业的管理,提高学生的学习效率,我们小组开发了一套学生作业信息管理系统。
本系统采用云平台的技术手段,通过此系统,我们可以解决许多问题。
1、学生能直接提交电子版的作业,方便老师们查看学生作业,给出评语,查询学生作业上交情况,也方便老师对作业信息进行管理,提高管理效率。
2、学生们能及时得到关于作业的反馈,了解到自己在相关课程上的不足。
3、课程论坛为同学们提供了一个可以自由与其他同学或者老师进行学习交流的平台,大大地增加了师生之间的互动,拉近师生间的距离。
学生可以在零散的课余时间里解决自己学习中存在的问题。
这样可以把学生的零散时间充分利用起来,既为学生带来了方便又提高了学习效率。
4、网络资源模块为同学们提供了许多教学资源,及其他学习相关的学习资源。
学生可以利用这些资源对自己的学习做补充,同时也可以学习一些上课时老师没有讲到的课外知识。
5、电子版作业能做到节能环保,符合现在社会的主流趋势。
该作业提交系统有很强得实用性,而且目前已经有一部分学生进行了试用,得到了不错的评价。
该系统减少了学生们和老师们的负担,很大程度上有利于学生学习。
而且做到了节能环保,适用学科也比较广,所以推广前景很好。
2 系统总体设计2.1系统功能组成系统功能可概括分为3大模块,即:管理员模块,教师模块,学生模块。
系统功能模块如图2-1-1所示。
数据库课程设计指导书图2-1-1 系统功能模块图1.管理员模块:a.管理老师1)增加老师(增加账号,姓名,给出默认密码)2)删除老师3)修改老师(账号,姓名)4)一键重置老师密码b.管理学生1)增加学生(学号,姓名,专业,年级,班级,给出默认密码)2)删除学生3)修改学生(学号,姓名,专业,年级,班级)4)根据姓名,学号查询学生5)一键重置密码c.管理课程1)增加课程(课程号,课程名,课程图片,课程简介,课程专业,课程年级,课程老师)附录2)删除课程3)修改课程d.修改管理员密码e.注销登陆2.教师模块:a.修改密码,注销登陆b.进入自己所教的全部课程c.设置课程作业内容d.查询作业1)按照班级,作业次数查询2)按照学号查询3)按照班级,和作业次数查询没交作业人名单4)按照姓名模糊查询e.下载学生作业f.评论学生作业,发布作业评论3.学生模块:a.修改密码,注销登陆b.进入自己所学所有课程c.按照作业次数,上交作业d.查看作业评语2.2 数据库结构基于前述功能,系统数据库共设计7张表,如表2.1所示。
表2.1 数据库表清单表名说明ADMIN 管理员表TEACHER 教师表STUDENT 学生表COURSE 课程表SC 学生课程关系表TASK 作业表COMMENT 评论表数据库课程设计指导书管理员表结构见下表2.2.表2.2 管理员表列名说明数据类型(长度)是否主键是否外键AID 管理员标识主键Int(11) TRUE FALSE ANO 管理员账号Varchar(15)FALSE TRUE ANAME 管理员姓名Varchar(5)FALSE FALSE APASSWORD 管理员密码Varchar(16)FALSE FALSE教师表结构见下表2.3.表2.3 教师表列名说明数据类型(长度)是否主键是否外键TID 教师标识主键Int(11) TRUE FALSE TNO 教师账号Varchar(15)FALSE TRUE TNAME 教师姓名Varchar(5)FALSE FALSE TPASSWORD 教师密码Varchar(16)FALSE FALSE学生表结构见下表2.4.表2.4 学生表列名说明数据类型(长度)是否主键是否外键SID 学生标识主键Int(11) TRUE FALSE SNO 学生账号Varchar(15)FALSE TRUE SNAME 学生姓名Varchar(5)FALSE FALSE SPASSWORD 学生密码Varchar(16)FALSE FALSE SMAJOR 学生专业Varchar(30)FALSE FALSE SGRADE 学生年级Varchar(10)FALSE FALSE SCLASS 学生班级Varchar(10)FALSE FALSE附录课程表结构见下表2.5.表2.5 课程表列名说明数据类型(长度)是否主键是否外键CID 课程标识主键Int(11) TRUE FALSE CNO 课程号Varchar(15)FALSE TRUE CNAME 课程名Varchar(20)FALSE FALSE CTIMES 课程作业次数Varchar(11)FALSE FALSE CIMAGE 课程图片Varchar(255)FALSE FALSE CMAJOR 学生专业Varchar(30)FALSE FALSE CGRADE 学生年级Varchar(10)FALSE FALSE TNO 教师号Varchar(15)FALSE FALSE学生课程关联表结构见下表2.6.表2.6 学生课程关联表列名说明数据类型(长度)是否主键是否外键SCID 关联表标识主键Int(11) TRUE FALSE SNO 学生号Varchar(15)TRUE FALSE CNO 课程号Varchar(15)TRUE FALSE SCTIMES 课程作业次数Int(11)FALSE TRUE SCFILENAME 上交作业名Varchar(60)FALSE FALSE UPLOADTIME 上交时间datetime FALSE FALSE ALLOWLOOK 允许查看作业Int(2)FALSE FALSE数据库课程设计指导书作业表结构见下表2.7.表2.7 作业表评论表结构见下表2.8.表2.8 评论表列名 说明数据类型(长度) 是否主键 是否外键 COMMENT_ID 评语标识主键 Int(11) TRUE FALSE SNO 学生号 Varchar (15) TRUE FALSE SCTIMES 作业次数 Int (11) FALSE FALSE COMMENT_TIME 评论时间 Datetime FALSE FALSE COMMENT_SCORE 作业分数 Varchar (5) FALSE FALSE COMMENT_CONTEN T评论内容Varchar (2000)FALSEFALSE2.3开发工具前端数据库开发工具:Navicat for MySQL 后端数据库:MySQL列名 说明数据类型(长度) 是否主键 是否外键 TASK_ID 作业标识主键 Int(11) TRUE FALSE SCTIMES 课程作业数 Int (11) FALSE TRUE STOPTIME 截至时间 Datetime FALSE FALSE STITLE 作业题目 Varchar (200) FALSE FALSE SCONTENT作业内容Varchar (3000)FALSEFALSE附录3 详细设计3.1用户登录窗口3.1.1界面与功能描述用户登录窗口的运行界面如图3-1所示。
图3-1 用户登录窗口该模块主要用来验证用户是否合法,以及合法用户对自己密码的修改。
用户输入用户号和密码后,点击“确定”按钮,如果数据库中有相应数据,则说明为合法用户,就可以进入到下一个页面。
3.1.2 关键代码分析(1)[确定]按钮的clicked事件该事件主要功能是验证用户的合法性,它与密码输入控件的modify事件功能相同,为了避免重复代码的重复编写,这里使用了triggerevent函数,该函数能够触发任何指定对象的事件,并立即执行该事件的处理代码。
具体代码如下:sle_password.triggerevent(modified!)(2) 密码输入控件的modify事件实现流程该事件的流程图如图3-2所示。
数据库课程设计指导书图3-2 用户登录流程图4 程序运行结果4.1 综合查询模块运行画面图4-1综合查询窗口图5 出现的问题及解决方法(1)下拉列表中选项数据的动态加载系统中许多信息的录入是通过下拉列表框来完成的。
通过选择录入,不仅可以加附录快数据的录入速度,更重要的是有利于保证数据的规范性。
列表框中的选项信息是通过对相应数据表的查询动态加载的,这里用到了数据库中的游标技术。
游标是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果。
当利用嵌入式SQL语句对数据库进行查询时,如果不能确定查询结束为单记录,就要使用游标。
在窗口的Open事件中,加入如下代码片段:string s_dep_nameDeclare Cursor_dep Cursor for //声明游标Select dep_nameFrom Department;Open Cursor; //打开游标Fetch Cursor into :s_dep_name; //提取信息并推进游标Do While SQLCA.Sqlcode=0Tab_1.Tabpage_1.Ddlb_dep.additem(s_dep_name) //向下拉框中加载选项Fetch Cursor into :s_dep_name;LoopClose Cursor_dep; //关闭游标6 参考资料[1] 王珊.数据库系统概论(第四版).北京:高等教育出版社,2006.[2] 陈永强.PowerBuilder数据库开发经典实例精解.北京:机械工业出版社,2007.[3] 王艳青.PowerBuilder程序设计基础.北京:中国水利水电出版社,2006.7 总结通过此次课程设计,能够真正做出一个小系统,将所学的知识应用到实际中去,心中特别高兴.尽管上课时我们也有做实验,但比较单一,缺少联系性,不能从整体上和实际需要上去考虑问题,有被牵着走的感觉。
通过设计还锻炼了我们自己思考、深入学习和解决问题的能力。
- 11 -数据库课程设计指导书附件3:课程设计参考题目1.学生信息管理系统2.图书借阅管理系统3.学生成绩管理系统4.人事档案管理系统5.高校教师管理系统6.商品进销存管理系统7.书店管理系统8.工资管理系统9.科研项目管理系统10.科技论文管理系统11.客户管理系统12.固定资产管理系统13.销售合同管理系统14.健身俱乐部管理系统15.小型药店管理系统16.家庭财务开支管理系统17.房屋销售管理系统18.门诊、住院收费管理系统19.音像租借管理系统20.餐饮酒店管理系统21.旅行社管理系统22.美容院信息管理系统- 12 -。