20张力课设报告.docx
- 文档编号:547922
- 上传时间:2023-04-29
- 格式:DOCX
- 页数:39
- 大小:2.52MB
20张力课设报告.docx
《20张力课设报告.docx》由会员分享,可在线阅读,更多相关《20张力课设报告.docx(39页珍藏版)》请在冰点文库上搜索。
20张力课设报告
河北联合大学
数据库课程设计说明书
设计题目:
学生选课系统
姓名:
张力
学号:
201214430120
专业:
地理信息系统
班级:
一班
指导教师:
黄丽
王晓红
王政
矿业工程学院
2015年1月8日
1.概述----------------------------------------------------3
1.1选题背景------------------------------------------3
1.2系统简介------------------------------------------3
2.需求分析设计--------------------------------------------3
3.结构设计------------------------------------------------4
3.1E-R图结构分析-------------------------------------4
3.2数据库结构设计-------------------------------------5
4.行为设计-----------------------------------------------6
5.系统主要说明及主要代码---------------------------------7
5.1结构信息-------------------------------------------7
5.2系统界面--------------------------------------------7
5.3系统功能--------------------------------------------7
6.开发流程图---------------------------------------------32
7.实习心得及体会------------------------------------------33
8.参考文献-----------------------------------------------33
1.概述
本系统的目标是实现选课系统需所需的各种基本功能,包括学生选课,教师查看选修的课程以及添加学生信息,添加教师信息,添加课程信息等。
1.1选题背景
随着社会的进步,尤其是计算机技术与网络的发展,人们对于数据传输,远程控制的实时性要求越来越高,这就使得计算机技术的发展越来越面向网络。
现代学校管理无疑成为网络应用的典型代表,学生在校期间需要进行大量课程的学习,除学校安排的基本课程之外,还要进行部分选修课的学习。
为了达到选课的方便、快捷,高等学校都提供网上选课平台供学生使用。
本次课程设计选做学生选课系统就是建立在面向网络的基础之上,选用VisualStudio2010开发工具和SQLServer2008数据库。
所开发出的系统能够方面学生选课、教师查询和管理员管理。
具有较强的实时性,在面向网络的基础上可以方便在外用户进行各种操作。
但是本人的知识和能力有限,时间有限,所做的系统只实现了基本的选课系统的功能,数据导入导出功能和数据库的基本维护功能。
我会在以后的学习过程中继续完善该系统。
1.2系统简介
本系统面向全校师生,是高校日常教学、教务管理的应用软件。
该系统的目的主要是实现学生选择选修课的公平性和方便性,让他们可以选择课程,删除选课,修改密码,查询选修课程信息;对于教师,可以修改、删除、添加需要选课的课程信息,查看学生的选课情况,以及修改密码等。
2.需求分析
学生选课系统的主要满足来自三个方面的需求,这三个方面分别是学生用户,教师用户和管理员用户,也即是三类用户角色。
(1)学生用户是主要的需求者,主要的需求功能是选课、退课以及查看自己的选课情况。
(2)教师用户主要需求功能是查看自己所教授的课程,课程有哪些学生选修。
(3)管理员用户的功能需求较为复杂,包括对学生的信息,教师的信息,课程的信息进行管理。
在学生信息管理子模块中实现对学生的信息的添加,删除操作。
还可以输入查询条件进行查询操作。
在教室管理模块中实现对教师信息的添加,删除和查询操作。
在课程管理的子模块中实现对课程的添加,删除操作和查询操作。
本系统将管理员用户,教师用户,学生用户的身份及权限进行严格的划分,让管理员拥有最高权限,可以查看,维护系统中的所有信息,如添加学生,添加课程,修改课程的信息等;让教师拥有查看自己开设的课程的信息的权限;让学生拥有选课的权限。
3.结构设计
本系统实在MicrosoftSQLServer2008和MicrosoftVisualStudio2010的支持下进行的。
数据库是网站的核心,数据库设计的合理与否对网站的建设有着至关重要的影响。
数据库的设计是指对于一个给定的应用环境,构造最有效的数据库模式,建立数据及应用系统,实质能够有效地存储数据,满足用户的需求。
3.1学生选课系统E-R图分析
3.2数据库结构设计
学生表
教师表
管理员表
课程表
学生选课信息表
4.行为设计
1.登陆模块:
使用登陆界面进行用户管理,使不同权限用户进行系统的登录,从而实现用户的登陆管理。
登陆后进入主界面,进行权限操作。
2.学生选课模块:
学生用户登陆后进入主操作界面进行课程查询,修改密码,
选课课程,删除课程,查看选课情况等。
3.教师管理模块:
包括查看学生选课信息和打印功能。
4.管理员模块:
管理员登陆进入后可以进行学生信息管理、教师信息管理、课程信息管理以及备份和还原功能。
5.系统说明和主要代码
5.1结构信息
包括系统总体设计审查、系统设计审查和程序编码审查。
测试结果表明,整个系统结构合理,易读易维护,编码正确,达到了设计要求。
5.2系统界面
主要测试了系统界面是否美观,操作是否灵活、简洁、方便、实用,是否符合学校的要求。
测试结果表明,系统界面友好,完全达到了设计的要求。
5.3系统功能
(1)登陆界面
登陆界面显示如下图,输入正确的用户名和密码,选择正确的身份登陆,进入相应的界面。
namespace学生选课系统
{
publicpartialclass登陆界面:
Form
{
public登陆界面()
{
InitializeComponent();
}
publicstaticstringuser;
privatevoidbutton4_Click(objectsender,EventArgse)
{
MessageBox.Show("退出成功");
this.Hide();
}
privatevoidbutton1_Click_1(objectsender,EventArgse)
{
user=this.textBox1.Text;
stringpwd=this.textBox2.Text;
stringstrConn="DataSource=.;InitialCatalog=学生选课系统;IntegratedSecurity=True";
SqlConnectionconn=newSqlConnection(strConn);
conn.Open();
stringstrSql="SELECT*FROM学生表WHERE学号='"+user+"'and密码='"+pwd+"'";
SqlCommandcmd=newSqlCommand(strSql,conn);
SqlDataReaderdr=cmd.ExecuteReader();
if(dr.Read()==false)
{
MessageBox.Show("密码不正确,请再次确认!
");
}
else
{
//MessageBox.Show("登陆成功");
this.Hide();
学生界面b=new学生界面();
b.Show();
}
}
privatevoidbutton2_Click_1(objectsender,EventArgse)
{
user=this.textBox1.Text;
stringpwd=this.textBox2.Text;
stringstrConn="DataSource=.;InitialCatalog=学生选课系统;IntegratedSecurity=True";
SqlConnectionconn=newSqlConnection(strConn);
conn.Open();
stringstrSql="SELECT*FROM教师表WHERE教师编号='"+user+"'and密码='"+pwd+"'";
SqlCommandcmd=newSqlCommand(strSql,conn);
SqlDataReaderdr=cmd.ExecuteReader();
if(dr.Read()==false)
{
MessageBox.Show("密码不正确,请再次确认!
");
}
else
{
//MessageBox.Show("登陆成功");
this.Hide();
教师界面b=new教师界面();
b.Show();
}
}
privatevoidbutton3_Click_1(objectsender,EventArgse)
{
user=this.textBox1.Text;
stringpwd=this.textBox2.Text;
stringstrConn="DataSource=.;InitialCatalog=学生选课系统;IntegratedSecurity=True";
SqlConnectionconn=newSqlConnection(strConn);
conn.Open();
stringstrSql="SELECT*FROM管理员表WHERE管理员编号='"+user+"'and密码='"+pwd+"'";
SqlCommandcmd=newSqlCommand(strSql,conn);
SqlDataReaderdr=cmd.ExecuteReader();
if(dr.Read()==false)
{
MessageBox.Show("密码不正确,请再次确认!
");
}
else
{
//MessageBox.Show("登陆成功");
this.Hide();
管理员界面b=new管理员界面();
b.Show();
}
}
privatevoidbutton4_Click_1(objectsender,EventArgse)
{
MessageBox.Show("退出成功");
this.Hide();
}
}
}
(2)登陆之后回进入相应的身份界面
学生界面
教师界面
管理员界面
(3)学生的选课与退课
namespace学生选课系统
{
publicpartialclass选课界面:
Form
{
public选课界面()
{
InitializeComponent();
}
privatevoid选课界面_Load_1(objectsender,EventArgse)
{
this.课程表TableAdapter.Fill(this.学生选课系统DataSet1.课程表);
}
privatevoidbutton1_Click_1(objectsender,EventArgse)
{
stringstrconn="DataSource=.;InitialCatalog=学生选课系统;IntegratedSecurity=True";
SqlConnectionsqlcon=newSqlConnection(strconn);
sqlcon.Open();
stringgly=comboBox1.Text;
stringsql;
if(comboBox1.Text=="课程名称")
{
sql="select*from课程表where课程名称like'%"+textBox1.Text+"%'";
SqlDataAdapterzl=newSqlDataAdapter(sql,sqlcon);
DataSetmyset=newDataSet();
zl.Fill(myset,"课程表");
dataGridView1.DataSource=myset.Tables["课程表"];
SqlCommandcmd=newSqlCommand(sql,sqlcon);
SqlDataReaderdr=cmd.ExecuteReader();
if(dr.Read()&&dr["课程名称"].ToString().Trim()!
=gly)
{
//MessageBox.Show("查询成功");
}
else
{
MessageBox.Show("您查找的内容不存在","查询错误");
}
}
elseif(comboBox1.Text=="教师姓名")
{
sql="select*from课程表where任课教师like'%"+textBox1.Text+"%'";
SqlDataAdapterzl=newSqlDataAdapter(sql,sqlcon);
DataSetmyset=newDataSet();
zl.Fill(myset,"课程表");
dataGridView1.DataSource=myset.Tables["课程表"];
SqlCommandcmd=newSqlCommand(sql,sqlcon);
SqlDataReaderdr=cmd.ExecuteReader();
if(dr.Read()&&dr["任课教师"].ToString().Trim()!
=gly)
{
//MessageBox.Show("查询成功");
}
else
{
MessageBox.Show("您查找的内容不存在","查询错误");
}
}
}
privatevoidbutton4_Click_1(objectsender,EventArgse)
{
if(textBox2.Text==""&&textBox3.Text=="")
{
MessageBox.Show("信息不完整!
");
}
elseif(textBox2.Text!
=""&&textBox3.Text!
="")
{
//MessageBox.Show("!
");
}
stringstrconn="DataSource=.;InitialCatalog=学生选课系统;IntegratedSecurity=True";
SqlConnectioncon=newSqlConnection(strconn);
con.Open();
stringsql="select课程名称from课程表where课程编号='"+textBox2.Text+"'";
SqlDataAdapterb=newSqlDataAdapter(sql,con);
DataSets=newDataSet();
b.Fill(s,"uer1");
textBox5.Text=s.Tables["uer1"].Rows[0][0].ToString();
stringsql2="select姓名from学生表where学号='"+textBox3.Text+"'";
SqlDataAdapterc=newSqlDataAdapter(sql2,con);
DataSetm=newDataSet();
c.Fill(m,"uer2");
textBox4.Text=m.Tables["uer2"].Rows[0][0].ToString();
}
privatevoidbutton3_Click_1(objectsender,EventArgse)
{
if(textBox2.Text==""&&textBox3.Text==""&&textBox4.Text=="")
{
MessageBox.Show("请输入完整信息!
","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);//提示框
}
else
{
stringstrconn="DataSource=.;InitialCatalog=学生选课系统;IntegratedSecurity=True";
SqlConnectioncon=newSqlConnection(strconn);
con.Open();
stringsql="insertinto学生选课信息表(学生学号,学生姓名,课程编号,课程名称)values('"+textBox3.Text+"','"+textBox4.Text+"','"+textBox2.Text+"','"+textBox5.Text+"')";
SqlCommandcom=newSqlCommand(sql,con);
com.ExecuteNonQuery();
con.Close();
MessageBox.Show("选课成功!
","信息提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
}
privatevoidbutton2_Click_1(objectsender,EventArgse)
{
this.Hide();
学生界面b=new学生界面();
b.Show();
}
privatevoidcomboBox1_SelectedIndexChanged(objectsender,EventArgse)
{
if(comboBox1.Text=="教师姓名")
{
label2.Visible=true;
label3.Visible=false;
}
elseif(comboBox1.Text=="课程名称")
{
label2.Visible=false;
label3.Visible=true;
}
}
}
}
namespace学生选课系统
{
publicpartialclass退课界面:
Form
{
public退课界面()
{
InitializeComponent();
}
privatevoiddataGridView1_CellContentClick(objectsender,DataGridViewCellEventArgse)
{
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
this.Hide();
学生界面b=new学生界面();
b.Show();
}
privatevoid退课界面_Load(objectsender,EventArgse)
{
}
privatevoidbutton3_Click(objectsender,EventArgse)
{
stringstrconn="DataSource=.;InitialCatalog=学生选课系统;IntegratedSecurity=True";
SqlConnectionsqlcon=newSqlConnection(strconn);
sqlcon.Open();
stringgly=登陆界面.user;
stringsql;
sql="select*from学生选课信息表where学生学号like'%"+登陆界面.user+"%'";
SqlDataAdapterzl=newSqlDataAdapter(sql,sqlcon);
DataSetmyset=newDataSet();
zl.Fill(myset,"学生选课信息表");
dataGridView1.DataSource=myset.Tables["学生选课信息表"];
SqlCommandcmd=newSqlCommand(sql,sqlcon);
SqlDataReaderdr=cmd.ExecuteReader();
if(dr.Read()&&dr["学生学号"].ToString().Trim()!
=gly)
{
MessageBox.Show("查询失败");
}
else
{
//MessageBox.Show("您查找的内容不存在","查询错误");
}
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(textBox1.Text==""||textBox2.Text=="")
MessageBox.Show("请选择并输入要删除的课程条件!
");
else
{
if(textBox1.Text!
=""&&textBox2.Text!
="")
{
stringcon="DataSource=.;InitialCatalog=学生选课系统;IntegratedSecurity=True";
SqlConnectionconn=newSqlConnection(con);
conn.Open();
stringsql1="delete学生选课信息
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 20 张力 报告
![提示](https://static.bingdoc.com/images/bang_tan.gif)