研究生成绩管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计
课程设计名称:数据库应用系统课程设计
专业班级:计科0902
****:***
学号: ************ ****:***
课程设计时间: 2011-12-19至2011-12-30
计算机科学与技术专业课程设计任务书
说明:本表由指导教师填写,由教研室主任审核后下达给选题学生,装订在设计(论文)首页
研究生成绩管理系统
1 概述
一直以来学校使用传统人工的方式管理研究生成绩,这种管理方式存在着许多缺点,譬如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。课题要求设计并实现一个研究生成绩管理系统,能够通过计算机和数据库满足对研究生成绩的管理工作。功能应包括:登录对角色的判断、用户基本信息的管理、更新、多条件查询等。界面设计相对友好,方便用户的操作。
2 需求分析
根据需求分析阶段的系统功能,将研究生成绩管理系统分成四个模块,包括管理员管理模块,学生管理模块,教师管理模块和公共模块,如图1所示
图1 系统功能模块
根据以上四个模块,准备设计以下页面:
(1. 登录页面:Login.aspx ;
(2. 管理员主页面:Main.aspx;
(3. 学生信息维护页面:adminStudentDetails.aspx
(4. 课程信息维护页面:adminCourseDetails.aspx;
(5. 教师信息维护页面:adminTeacherDetails.aspx;
(6. 研究生成绩维护页面:adminScoreDetails.aspx;
(7. 教师查询选课情况页面:teacherElect.aspx;
(8. 教师录入成绩页面:teacherQueryScore.aspx;
(9. 学生选修课程页面:studentElect.aspx;
(10. 学生个人成绩查询页面:studentQueryScore.aspx;
(11. 修改密码页面:ModifyPwd.aspx;
3 概念结构设计(小三黑体)
图2 研究生管理系统E-R图
通过需求分析阶段的分析结果,本系统索要设计的实体和属性如下:学生(学号,密码,姓名,姓名,性别,年级,专业)
教师(教师号,密码,姓名,性别,院系)
课程(课程号,课程名,成绩,学分,学号)
管理员(管理员帐号,密码)
E-R图如上图所示,图中省略实体中的属性。
4逻辑结构设计
根据转换原则转换成5个关系模式,关系的主码用下划线标出。
学生(学号,密码,姓名,姓名,性别,年级,专业)
教师(教师号,密码,姓名,性别,院系)
课程(课程号,课程名,成绩,学分,学号)
选课(课程号,学号,成绩)
管理员(管理员帐号,密码)
这部分将E-R模型转换为关系模式,指明所满足的范式并给出理由。
5源代码及系统截图
1.登录页面:Login.aspx ;如图3所示
protected void Page_Load(object sender, EventArgs e)
{
this.Title = "研究生信息管理系统";
}
protected void Button1_Click(object sender, EventArgs e)
{
string userName = txtUserName.Text.ToString().Trim();
string userPwd=txtPwd.Text.ToString().Trim();
string userRole=rblClass.SelectedValue.Trim();
string selectStr = "";
switch (userRole)
{
case"0":
selectStr = "Select * from 教师where 教师号='" + userName + "'";
break;
case"1":
selectStr = "Select * from 学生where 学号='" + userName + "'";
break;
case"2":
selectStr = "Select * from 管理员where 管理员帐号='" + userName + "'";
break;
}
SqlConnection conn = new
SqlConnection(ConfigurationManager.ConnectionStrings["MasterDBConnectionString"].ConnectionS tring);
//SqlConnection conn = new SqlConnection(ConnSql);
SqlCommand cmd = new SqlCommand(selectStr, conn);
//SqlCommand cmd = new SqlCommand(selectStr, conn);
conn.Open();
SqlDataReader sdr = cmd.ExecuteReader();
if (sdr.Read())
{
if (sdr.GetString(1) ==userPwd)
{
Session["userName"] = userName;
Session["userRole"] = userRole;
conn.Close();
switch (userRole)
{