《软件工程》 课程设计说明书
教务管理系统
学生姓名 学 号 所在专业 所在班级 指导教师 提交时间
计算机科学与技术
目 录
第一章 绪言 .................................................................................................................................... 4 1.1 系统及需求分析 ................................................................................................................... 4 1.1.1 系统需求 ....................................................................................................................... 4 1.1.2可行性分析 .................................................................................................................... 4 1.2系统功能简介 ........................................................................................................................ 4 1.2.1 项目规划 ....................................................................................................................... 5 1.2.2 教师管理 ....................................................................................................................... 5 1.2.3 学生管理 ....................................................................................................................... 5 1.2.4 成绩管理 ....................................................................................................................... 5 1.2.5 课程管理 ....................................................................................................................... 6 1.2.6 用户管理 ....................................................................................................................... 6 1.2.7 系统开发的目标 ........................................................................................................... 6 第二章 系统分析 ...................................................................................................................... 6 2.1业务流程分析 ........................................................................................................................ 6 2.1.1教师管理业务流程图 .................................................................................................... 6 2.1.2学生管理业务流程图 .................................................................................................... 7 2.1.3课程管理业务流程图 .................................................................................................... 7 2.1.4成绩管理业务流程图 .................................................................................................... 7 2.2数据流程分析 ........................................................................................................................ 8 2.2.1数据流程图 .................................................................................................................... 8 2.3数据存储分析:实体联系图 ................................................................................................ 8 第三章 系统设计 .......................................................................................................................... 10 3.1软件模块结构设计 .............................................................................................................. 10 3.1.1 系统方案确定 ............................................................................................................. 10 3.1.2 软件结构设计 ............................................................................................................. 10 3.2 数据库设计 ......................................................................................................................... 11 3.2.1 数据库表 ..................................................................................................................... 11 第四章 系统的功能 ................................................................................................................ 15 4.1 系统界面 ............................................................................................................................. 15 4.1.1 系统登录界面 ............................................................................................................. 15 4.1.2 系统主界面 ................................................................................................................. 15 4.1.3 系统用户管理界面 ..................................................................................................... 16 4.1.4 系统教师资料管理界面 ............................................................................................. 16 4.1.5 系统课程界面 ............................................................................................................. 17 4.1.6 系统成绩界面 ............................................................................................................. 18 4.1.7 系统学生界面 ............................................................................................................. 18 4.2 代码部分 ............................................................................................................................. 19 4.2.1 login.aspx ................................................................................................................. 19 4.2.2 class.aspx ................................................................................................................. 20
4.2.3 course.aspx ............................................................................................................... 26 4.2.4 department.aspx ....................................................................................................... 32 4.2.5 editstu.aspx ............................................................................................................. 35 4.2.6 grade.aspx ................................................................................................................. 38 4.2.7 speciality.aspx ....................................................................................................... 44 4.2.8 student.aspx ............................................................................................................. 49 4.2.9 teacher.aspx ............................................................................................................. 54
结束语 ............................................................................................................................................ 57 致 谢 ............................................................................................................................................ 57
第一章 绪言
教务系统管理平台充分利用互联网络B/S管理系统模式,以网络为平台,为各个学校教务系统的管理提供一个平台,帮助学校管理教务系统,用一个帐号解决学校教务教学管理,并且学校可以自由选择学校需要的教务管理系统,灵活地定制符合学校自己实际情况的教务系统
1.1 系统及需求分析
1.1.1 系统需求
通过调查,要求系统需要有以下功能:
⑴ 由于操作人员的计算机知识普遍较差,要求有良好的人机界面; ⑵ 由于该系统的使用对象多,要求有较好的权限管理; ⑶ 原始数据修改简单方便,支持多条件修改 ⑷ 方便的数据查询,支持多条件查询;
⑸ 在相应的权限下,删除数据方便简单,数据稳定性好; ⑹ 数据计算自动完成,尽量减少人工干预; 1.1.2可行性分析
由于本系统管理的对象单一,都是在校学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。因此,比较适合于采用数据库管理。且学校用于学生管理的微机都是PIII以上的机器,在存储量、速度方面都能满足数据库运行的要求。在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。
本系统的设计是在Window XP中文版操作系统环境下,使用VS2005开发成功的。数据库是SQL2005,在开发过程中,如何选择数据库管理是一个重要的问题,目前,数据库产品较多、开发工具也很多。每种产品都具有各自的特点和适用范围,因此,在选择数据库时,应考虑数据库应用的特点及适用范围,在选择开发工具时也考虑它的健壮性、可移性、安全性等问题。
1.2系统功能简介
本系统主要可以实现以下的管理功能:教师管理、学生管理、课程管理、班
级管理、成绩管理等等。 1.2.1 项目规划
教务管理系统是一个典型的数据库应用程序,由教师级管理、学生管理、课程管理、班级管理、成绩管理等模块组成,特规划如下:
1.2.2 教师管理
教师管理囊括了教师资料管理,教师资料添加的相关信息。
a.教师资料管理:可以按条件分类查询教师信息;如果没有选择条件,系统将查询出全部的教师信息。可根据需要打印查询结果。
b. 教师资料添加:按照教师号,姓名,所在院系等等信息添加到数据库中,并予以显示是否成功。
1.2.3 学生管理
a.学生资料管理:可以按条件分类查询学生信息;如果没有选择条件,系统将查询出全部的学生信息。可根据需要打印查询结果。
b.学生资料添加:按学号,姓名,所在院系等等信息添加到数据库中,并予以显示是否成功。
c.所在院系资料:可以按条件分类查询院系信息;如果没有选择条件,系统将查询出全部的院系信息。可根据需要打印查询结果。
d.所在专业资料:可以按条件分类查询专业信息;如果没有选择条件,系统将查询出全部的专业信息。可根据需要打印查询结果。。
1.2.4 成绩管理
可以对考试成绩进行查询,修改以及录入。也可以将补考通知单按指定格式进行打印,发放给学生。
1.2.5 课程管理
本模块包括课程资料管理,课程资料添加,课程类别资料等等功能 a.课程资料管理:可以按条件分类查询课程信息;如果没有选择条件,系统将查询出全部的课程信息。可根据需要打印查询结果。
b.课程资料添加:按课程号,课程名,课程类别等等信息添加到数据库中,并予以显示是否成功。
c.课程类别资料:可以按条件分类查询课程信息;如果没有选择条件,系统将查询出全部的院系信息。可根据需要打印查询结果。
1.2.6 用户管理
此项功能只限管理员使用,管理登录用户的密码等信息和进行增加删除修改功能。
1.2.7 系统开发的目标
出于本系统是学校学生管理的一个综合性的系统,本系统的设计目标将最终定位于完成以上所述的系统主要业务的基本模型上。
第二章 系统分析
2.1业务流程分析
2.1.1教师管理业务流程图
教务处
教师 院系 班级 系主任 输出 输入计算机 教务处
2.1.2学生管理业务流程图
班主任 学生 班级 档案 教务处 输出 教务处 输入计算机 2.1.3课程管理业务流程图
教师 教务处 学生 课程 课程 输入计算机 输出 教务处 输出 输入计算机 2.1.4成绩管理业务流程图 教务处
班主任 学生 成绩 班级 教务处
2.2数据流程分析
2.2.1数据流程图
由于本系统的数据模块较多,下面仅以学生成绩管理模块为例来进行编制。
学生成绩管理系统0层数据流程图
教师 3.0 成绩管理 D3 4.0 学生成绩管理系统1层数据流程图 统计分析
管理查询成绩 教务2.0 课程管理 D2 系主任 1.0 学生管理 D1 课程 学生 教师 学生成绩 学籍管理部门 学生情况 学生成绩管理系统 查询 统计分析 教务处 学生 教师 2.3数据存储分析:实体联系图
数据模型设计。首先来做出学生成绩管理系统的E-R图,分析这个问题的实体,从系统分析可以知道,学生的成绩是由任课教师按照课程给出的,学生、课程、教师组成了这个系统的三个实体。
学生 m 学习 n 课程 成绩
学生成绩管理系统中学生与课程的E-R图
教师与课程这两个实体之间,是一对多联系;一位教师可以都多门课程,而一门课程对于学生成绩来说只能有一位教师(英语、高等数学有多位教师教,但对某个固定的学生来说只能有一位教师)。其E-R图,如下所示。
教师
l 教学 n 课程 教师与课程的E-R图组合到一起,得到最后的E-R图,有了E-R图,就可以设计数据库。下图为数据模型图。
学习
课程 学生 教师 教师 实体模型
数据模型
m 学习 n l 课程 学生 数据库 m 学习
第三章 系统设计
3.1软件模块结构设计
3.1.1 系统方案确定
通过对系统的调研与分析,系统主要应完成的功能有:教师管理,学生管理,课程管理,成绩管理,班级管理,用户管理。
3.1.2 软件结构设计
本系统在执行时,先根据不同的操作人员的需要来进行相应的模块,然后可以输入数据或者进行其它的查询或浏览等操作;总体来说,本系统属于一个事务型管理系统。
教师管理 学生管理 课程管理 成绩管理 班级管理 处理中心 接受数据
保存数据
3.2 数据库设计
数据库采用了Microsoft的SQL2005 3.2.1 数据库表
数据库关系图如下
开发系统时涉及的表如下
Class表
字段名称 classID 类型 char Varchar Char Varchar Char Char 宽度 7 12 5 30 4 10 className specialityID specialityName EntranceYear MonitorID
Course表
字段名称 courseID 类型 Char Varchar varchar tinyint tinyint tinyint Varchar 宽度 8 20 3 50 coursename coursetypeID totalperiod weekperiod credithour remark
Coursetype表
字段名称 coursetypeIDTypename
类型 varchar varchar 宽度 3 18 DepartmentID表
字段名称 departmentID 类型 char varchar Char 宽度 3 30 8 departmentName departmentHead
Grade表
字段名称 studentIDcourseIDGrade
类型 Char Char Tinyint 宽度 10 8 Speciality表
字段名称 specialityID 类型 varchar Varchar Char 宽度 5 30 3 specialityName DepartmentID
Speciality_course 表
字段名称 specialityIDCourseIDTerm
类型 Char Char Tinyint 宽度 5 8 Student表
字段名称 studentID studentName Nation Sex Birthday classID Telephone Credithour Ru_data Address Pwd Remark
类型 Char Varchar Char Char Datetime Char Varchar Tinyint Char Varchar varchar Varchar 宽度 10 10 10 2 7 16 4 50 16 200 Teacher表
字段名称 teachaerID 类型 Char
宽度 8
teacherName deparmentID Sex technicalPost Telephone Homeaddr Pwd Remark
Varchar Char Char Char Char Varchar Varchar Varchar 10 3 2 16 16 50 16 200 User表 字段名称 usename
类型 Char Varchar varchar 宽度 10 50 20 Mypassword Usertype
第四章 系统的功能
4.1 系统界面
4.1.1 系统登录界面
4.1.2 系统主界面
4.1.3 系统用户管理界面
4.1.4 系统教师资料管理界面
4.1.5 系统课程界面
4.1.6 系统成绩界面
4.1.7 系统学生界面
4.2 代码部分
4.2.1 login.aspx
using System; using System.Data;
using System.Configuration; using System.Web;
using System.Web.Security; using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page {
SqlConnection sms_conn;
public int PageCount, PageSize, RecordCount, CurrentPage; protected void Page_Load(object sender, EventArgs e) {
string sms_connstr =
System.Configuration.ConfigurationManager.AppSettings[\"sms_dbconn\"]; //建立连接 sms_conn = new SqlConnection(sms_connstr); }
protected void Button_logoin(object sender, EventArgs e) {
string str_pwd = this.mypassword.Text.Trim().Replace(\"'\", \"''\");
string sqlstr = \"select usertype from Users where username='\" + username.Text + \"'and mypassword=@password\";
SqlCommand cmd = new SqlCommand(sqlstr, sms_conn);
cmd.Parameters.Add(new SqlParameter(\"@password\", SqlDbType.VarChar, 50)); cmd.Parameters[\"@password\"].Value =
System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(str_pwd, \"MD5\").ToString();//密码加密 sms_conn.Open();
SqlDataReader dr = cmd.ExecuteReader(); if (dr.Read() == true) {
Session[\"user\"] = this.username.Text.Trim();//管理员用户,Session进行传值 Session[\"type\"] = dr[\"userType\"].ToString().Trim();//管理员类型 FormsAuthentication.RedirectFromLoginPage(username.Text, false); sms_conn.Close(); } else {
sms_conn.Close();
message.Text = \"您必须输入有效的用户名和密码!\"; } }
protected void Button_Cancel(object sender, EventArgs e) { } }
4.2.2 class.aspx
using System;
using System.Collections; using System.ComponentModel; using System.Data; using System.Drawing; using System.Web;
using System.Web.SessionState; using System.Web.UI;
using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Data.SqlClient; using System.Configuration;
public partial class _class : System.Web.UI.Page {
SqlConnection sms_conn;
public int PageCount, PageSize, RecordCount, CurrentPage; protected void Page_Load(object sender, EventArgs e) {
string sms_connstr =
System.Configuration.ConfigurationManager.AppSettings[\"sms_dbconn\"]; // 建立连接
sms_conn = new SqlConnection(sms_connstr); PageSize =8; if (!IsPostBack) {
//计算总共有多少记录 ListBind();
ViewState[\"PageIndex\"] = 0; RecordCount = CalculateRecord();
lblRecordCount.Text = RecordCount.ToString(); //计算总共有多少页
if ((RecordCount % PageSize) == 0) PageCount = (RecordCount / PageSize); else
PageCount = (RecordCount / PageSize) + 1;
lblPageCount.Text = PageCount.ToString(); ViewState[\"PageCount\"] = PageCount; sms_conn.Open();
string sms_sqlstr2 = \"select specialityname from [speciality]\"; SqlDataAdapter sms_da2 = new SqlDataAdapter(sms_sqlstr2, sms_conn); DataSet sms_ds2 = new DataSet(); sms_da2.Fill(sms_ds2, \"T\"); sms_conn.Close();
DropDownList1.DataSource = sms_ds2.Tables[\"T\"]; DropDownList1.DataTextField = \"specialityname\"; DropDownList1.DataValueField = \"specialityname\"; DropDownList1.DataBind(); sms_ds2.Clear(); sms_ds2.Dispose(); } }
//计算总共有多少条记录 public int CalculateRecord() {
int intCount;
string strCount = \"select count(*) as co from class\"; sms_conn.Open();
SqlCommand MyComm = new SqlCommand(strCount, sms_conn); SqlDataReader dr = MyComm.ExecuteReader(); if (dr.Read()) {
intCount = Int32.Parse(dr[\"co\"].ToString()); } else {
intCount = 0; }
dr.Close(); sms_conn.Close(); return intCount; }
public ICollection CreateSource() {
int StartIndex; //设定导入的起终地址
StartIndex = CurrentPage * PageSize;
string strSel = \"select * from [class],[student],[speciality] where
class.specialityid=speciality.specialityid and class.monitorid=student.studentid\"; DataSet ds = new DataSet();
SqlDataAdapter MyAdapter = new SqlDataAdapter(strSel,sms_conn); MyAdapter.Fill(ds, StartIndex, PageSize, \"guest\"); return ds.Tables[\"guest\"].DefaultView; }
#region Web 窗体设计器生成的代码 override protected void OnInit(EventArgs e) { //
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。 //
InitializeComponent(); base.OnInit(e); }
/// /// 设计器支持所需的方法 - 不要使用代码编辑器修改 /// 此方法的内容。 ///
private void InitializeComponent() {
this.Load += new System.EventHandler(this.Page_Load); }
#endregion
public void ListBind() {
sms_class.DataSource = CreateSource(); sms_class.DataBind(); lbnNextPage.Enabled = true; lbnPrevPage.Enabled = true;
if (CurrentPage == (PageCount - 1)) lbnNextPage.Enabled = false; if (CurrentPage == 0) lbnPrevPage.Enabled = false; lblCurrentPage.Text = (CurrentPage + 1).ToString(); }
public void Page_OnClick(Object sender, CommandEventArgs e) {
CurrentPage = (int)ViewState[\"PageIndex\"]; PageCount = (int)ViewState[\"PageCount\"]; string cmd = e.CommandName; //判断cmd,以判定翻页方向 switch (cmd) {
case \"next\":
if (CurrentPage < (PageCount - 1)) CurrentPage++; break; case \"prev\":
if (CurrentPage > 0) CurrentPage--; break; }
ViewState[\"PageIndex\"] = CurrentPage; ListBind(); }
public void DataList_EditCommand(object sender, DataListCommandEventArgs e) {
sms_class.EditItemIndex = e.Item.ItemIndex;
sms_class.SelectedIndex = -1; ListBind(); }
public void Datalist_CancelCommand(object sender, DataListCommandEventArgs e) {
sms_class.EditItemIndex = -1; ListBind(); }
public void Datalist_UpdateCommand(object sender, DataListCommandEventArgs e) {
TextBox spename, cname, ent, monname; Label cid;
cid = (Label)(e.Item.FindControl(\"Lblcid\")); spename = (TextBox)(e.Item.FindControl(\"TextBox2\")); cname = (TextBox)(e.Item.FindControl(\"TextBox4\")); ent = (TextBox)(e.Item.FindControl(\"TextBox3\")); monname = (TextBox)(e.Item.FindControl(\"TextBox1\"));
string sms_sqlstr2 = \"update class set monitorid=(Select studentid from student where studentname='\" + monname.Text + \"'),classname='\" + cname.Text + \"',EntranceYear='\" + ent.Text + \"'where classid='\" + cid.Text + \"'\";
SqlCommand sms_comm = new SqlCommand(sms_sqlstr2, sms_conn); sms_comm.Connection.Open(); try {
sms_comm.ExecuteNonQuery(); }
catch (SqlException) {
}
sms_comm.Connection.Close();
sms_class.SelectedIndex = -1; //屏蔽已选的 sms_class.EditItemIndex = -1; ListBind(); }
public void Datalist_DeleteCommand(object sender, DataListCommandEventArgs e) {
Label cid;
cid = (Label)(e.Item.FindControl(\"Label3\"));
string sms_sqlstr = \" delete from class where classid='\" + cid.Text + \"'\"; SqlCommand sms_comm = new SqlCommand(sms_sqlstr, sms_conn);
sms_comm.Connection.Open(); try {
sms_comm.ExecuteNonQuery(); }
catch (SqlException) {
}
sms_comm.Connection.Close(); ListBind(); }
protected void Button2_Click(object sender, EventArgs e) {
//TextBox name = (TextBox)(e.Item.FindControl(\"TextBox1\"));
string strCount = \"select studentname from student where studentname='\" + message.Text + \"'\";
sms_conn.Open();
SqlCommand MyComm = new SqlCommand(strCount, sms_conn); SqlDataReader dr = MyComm.ExecuteReader(); if (dr.Read()) {
message.Text = \"专业和学生信息不正确!\"; } else {
message.Text = \"专业和学生信息有误!\"; }
dr.Close(); sms_conn.Close(); }
protected void Button1_Click(object sender, EventArgs e) {
ListBind2(); }
public ICollection CreateSource2() {
int StartIndex; //设定导入的起终地址
StartIndex = CurrentPage * PageSize;
string strSel = \"select * from [class],[student],[speciality] where
class.specialityid=speciality.specialityid and class.monitorid=student.studentid and class.specialityname='\"+DropDownList1.SelectedItem.Text +\"'\";
DataSet ds = new DataSet();
SqlDataAdapter MyAdapter = new SqlDataAdapter(strSel, sms_conn); MyAdapter.Fill(ds, StartIndex, PageSize, \"guest\"); return ds.Tables[\"guest\"].DefaultView; }
public void ListBind2() {
sms_class.DataSource = CreateSource2(); sms_class.DataBind(); }
protected void add_Click(object sender, EventArgs e) {
Response.Redirect(\"addclass.aspx\"); } }
4.2.3 course.aspx
using System;
using System.Collections; using System.ComponentModel; using System.Data;
using System.Data.SqlClient; using System.Drawing; using System.Web;
using System.Web.SessionState; using System.Web.UI;
using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Configuration;
public partial class course : System.Web.UI.Page {
SqlConnection sms_conn;
string sms_sqlstr, sms_sqlstr2,str;
protected void Page_Load(object sender, EventArgs e) {
string sms_connstr= ConfigurationSettings.AppSettings[\"sms_dbconn\"]; // 建立连接
sms_conn = new SqlConnection(sms_connstr); if (!IsPostBack)
SMS_BindGrid(); }
public void SMS_BindGrid() {
sms_conn.Open();
string sms_sqlstr = \"select * from [course],[coursetype] where course.coursetypeid=coursetype.coursetypeid\";
SqlDataAdapter sms_adp = new SqlDataAdapter(sms_sqlstr, sms_conn); DataSet sms_ds = new DataSet(); sms_adp.Fill(sms_ds); sms_conn.Close();
sms_student.DataSource = sms_ds; sms_student.DataBind(); sms_ds.Clear(); sms_ds.Dispose();
sms_conn.Open();
sms_sqlstr2 = \"select * from coursetype\";
SqlDataAdapter sms_da2 = new SqlDataAdapter(sms_sqlstr2, sms_conn); DataSet sms_ds2 = new DataSet(); sms_da2.Fill(sms_ds2, \"T\"); sms_conn.Close();
DropDownList1.DataSource = sms_ds2.Tables[\"T\"]; DropDownList1.DataTextField = \"typename\"; DropDownList1.DataValueField = \"typename\"; DropDownList1.DataBind(); sms_ds2.Clear(); sms_ds2.Dispose(); }
public void Data_Page(object sender,GridViewPageEventArgs e) { try {
sms_student.PageIndex = e.NewPageIndex; SMS_BindGrid(); } catch { } }
/// /// //////////////////////////////////////////////////////////////// ///
///
#region Web Form Designer generated code override protected void OnInit(EventArgs e) { //
// CODEGEN:该调用是ASP.NET Web 窗体设计器所必需的。 //
InitializeComponent(); base.OnInit(e); }
/// /// 设计器支持所需的方法- 不要使用代码编辑器修改 /// 此方法的内容。 ///
private void InitializeComponent() {
this.Load += new System.EventHandler(this.Page_Load); }
#endregion /// /// /////////////////////////////////////////////////////////////// ///
/// ///
protected void LinkButton1_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_student.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_student.Rows[i].FindControl(\"chkSelect\"); chkSelect.Checked = true; } }
protected void LinkButton2_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_student.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_student.Rows[i].FindControl(\"chkSelect\"); chkSelect.Checked = !chkSelect.Checked; }
}
protected void LinkButton3_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_student.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_student.Rows[i].FindControl(\"chkSelect\"); if (chkSelect.Checked) {
string str = ((Label)sms_student.Rows[i].FindControl(\"Label3\")).Text; string sms_sqlstr = \"delete from course where courseid='\" + str+ \"'\";
SqlCommand sms_comm = new SqlCommand(sms_sqlstr, sms_conn); sms_comm.Connection.Open(); try {
sms_comm.ExecuteNonQuery(); sms_lbl_note.Text = \"删除成功\";
}
catch (SqlException) {
sms_lbl_note.Text = \"删除失败\"; sms_lbl_note.Style[\"color\"] = \"red\"; }
sms_comm.Connection.Close(); SMS_BindGrid(); } } }
protected void LinkButton4_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_student.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_student.Rows[i].FindControl(\"chkSelect\"); chkSelect.Checked = false; } }
protected void Button1_Click(object sender, EventArgs e) {
sms_sqlstr = \"select * from [course],[coursetype] where
course.coursetypeid=coursetype.coursetypeid and (coursename='\" + TextBox3.Text + \"' or courseid='\" + TextBox4.Text + \"' or coursetype.typename='\" + DropDownList1.SelectedItem.Text +
\"')\";
sms_conn.Open();
SqlDataAdapter sms_da = new SqlDataAdapter(sms_sqlstr, sms_conn); DataSet sms_ds = new DataSet(); sms_da.Fill(sms_ds); sms_conn.Close();
sms_student.DataSource = sms_ds; sms_student.DataBind(); }
protected void Button2_Click(object sender, EventArgs e) {
SMS_BindGrid(); }
protected void Linkbutton1_Click(object sender, EventArgs e) {
int index = 0;
LinkButton lb = (LinkButton)sender;
for (int i = 0; i < sms_student.Rows.Count; i++) {
if ((LinkButton)(sms_student.Rows[i].FindControl(\"LinkButton1\")) == lb) {
index = i; break; } } str =
((Label)(sms_student.Rows[index].Cells[0].FindControl(\"Label3\"))).Text.ToString(); //
Label14.Text = str; //
string sms_sqlstr2 = \"select * from course,coursetype where course.coursetypeid=coursetype.coursetypeid and courseid='\" + str + \"'\"; SqlDataAdapter sms_da2 = new SqlDataAdapter(sms_sqlstr2, sms_conn); DataSet sms_ds2 = new DataSet(); sms_da2.Fill(sms_ds2);
DataList1.DataSource = sms_ds2; DataList1.DataBind(); }
public void Bindlist() {
sms_sqlstr2 = \"select * from course,coursetype where
course.coursetypeid=coursetype.coursetypeid and courseid='\" + Label14.Text + \"'\"; SqlDataAdapter sms_da2 = new SqlDataAdapter(sms_sqlstr2, sms_conn); DataSet sms_ds2 = new DataSet(); sms_da2.Fill(sms_ds2);
DataList1.DataSource = sms_ds2; DataList1.DataBind(); }
protected void DataList1_EditCommand(object sender, DataListCommandEventArgs e) {
DataList1.EditItemIndex = e.Item.ItemIndex; DataList1 .SelectedIndex = -1; //屏蔽已选的 Bindlist(); }
protected void DataList1_ConcelCommand(object sender, DataListCommandEventArgs e) {
DataList1.EditItemIndex = -1; Bindlist(); SMS_BindGrid(); }
protected void DataList1_UpdateCommand(object sender, DataListCommandEventArgs e) {
TextBox rem,tot; DropDownList cre,wee;
rem = (TextBox)(e.Item.FindControl(\"TextBox8\"));
cre = (DropDownList)(e.Item.FindControl(\"DropDownList3\")); tot = (TextBox)(e.Item.FindControl(\"TextBox5\"));
wee = (DropDownList)(e.Item.FindControl(\"DropDownList4\"));
sms_sqlstr2 = \"update course set remark='\" + rem.Text + \"',credithour='\" +
cre.SelectedItem.Text + \"',weekperiod='\" + wee.SelectedItem.Text + \"',totalperiod='\" + tot.Text + \"'where courseid='\" + Label14.Text + \"'\";
SqlCommand sms_comm = new SqlCommand(sms_sqlstr2, sms_conn); sms_comm.Connection.Open(); try {
sms_comm.ExecuteNonQuery();
}
catch (SqlException) {
}
sms_comm.Connection.Close();
DataList1.SelectedIndex = -1; //屏蔽已选的 DataList1.EditItemIndex = -1; Bindlist(); SMS_BindGrid(); }
protected void LinkButton5_Click(object sender, EventArgs e) {
Response.Redirect(\"addcourse.aspx\"); }
protected void RowDataBound(object sender, GridViewRowEventArgs e) {
if (e.Row.RowType == DataControlRowType.DataRow) {
//鼠标经过时,行背景色变
e.Row.Attributes.Add(\"onmouseover\", \"this.style.backgroundColor='#E6F5FA'\"); //鼠标移出时,行背景色变
e.Row.Attributes.Add(\"onmouseout\", \"this.style.backgroundColor='#FFFFFF'\"); } } }
4.2.4 department.aspx
using System; using System.Data;
using System.Configuration; using System.Collections; using System.Web;
using System.Web.Security; using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient;
public partial class Department: System.Web.UI.Page {
SqlConnection sms_conn; string sqlstr;
protected void Page_Load(object sender, EventArgs e) {
string sms_connstr = ConfigurationSettings.AppSettings[\"sms_dbconn\"]; // 建立连接
sms_conn = new SqlConnection(sms_connstr);
if (!IsPostBack) {
SMS_BindRepeater();
sqlstr = \"select * from department\";
SqlDataAdapter cmd = new SqlDataAdapter(sqlstr, sms_conn); //创建填充DataSet.
DataSet ds = new DataSet(); cmd.Fill(ds, \"T\");
for (int i = 0; i < ds.Tables[\"T\"].Rows.Count; i++) {
DropDownList1.Items.Add(new
ListItem(ds.Tables[\"T\"].Rows[i][\"departmentname\"].ToString(), ds.Tables[\"T\"].Rows[i][\"departmentid\"].ToString())); }
ds.Clear(); ds.Dispose(); sms_conn.Close(); sms_conn.Dispose(); } }
private void SMS_BindRepeater() {
sqlstr = \"select * from department\";
SqlDataAdapter cmd = new SqlDataAdapter(sqlstr,sms_conn); //创建填充DataSet.
DataSet ds = new DataSet(); cmd.Fill(ds, \"TD1\");
RepeaterD.DataSource = ds.Tables[\"TD1\"]; RepeaterD.DataBind(); ds.Clear();
ds.Dispose(); }
public void RepeaterIC(object sender,RepeaterCommandEventArgs e) {
System.Web.UI.WebControls.LinkButton update =
(LinkButton)e.Item.FindControl(\"LinkButton2\");//找到这个按钮 System.Web.UI.WebControls.LinkButton cancel = (LinkButton)e.Item.FindControl(\"LinkButton1\");//找到这个按钮 System.Web.UI.WebControls.LinkButton edit = (LinkButton)e.Item.FindControl(\"LinkButton3\");
System.Web.UI.WebControls.LinkButton delete = (LinkButton)e.Item.FindControl(\"LinkButton4\");
System.Web.UI.WebControls.Label LabDepid = (Label)e.Item.FindControl(\"LabDepid\"); System.Web.UI.WebControls.Label LabDepname = (Label)e.Item.FindControl(\"LabDepname\");
System.Web.UI.WebControls.Label LabDephead = (Label)e.Item.FindControl(\"LabDephead\");
System.Web.UI.WebControls.TextBox TetDepid = (TextBox)e.Item.FindControl(\"TxtDepid\");
System.Web.UI.WebControls.TextBox TetDepname = (TextBox)e.Item.FindControl(\"TxtDepname\");
System.Web.UI.WebControls.TextBox TetDephead = (TextBox)e.Item.FindControl(\"TxtDephead\"); if (e.CommandName == \"edit\") {
update.Visible = true; cancel.Visible = true; edit.Visible = false;
LabDepname.Visible = false; LabDephead.Visible = false;
TetDepname.Visible = true; TetDephead.Visible = true; }
if (e.CommandName == \"cancel\") {
SMS_BindRepeater(); }
if (e.CommandName == \"update\") {
sqlstr = \"update Department set departmentname='\" + TetDepname.Text + \"',departmenthead='\" + TetDephead.Text + \"'where departmentid='\" + LabDepid.Text + \"'\";
SqlCommand sqlcom = new SqlCommand(sqlstr, sms_conn); sms_conn.Open();
sqlcom.ExecuteNonQuery(); SMS_BindRepeater(); sms_conn.Close(); }
if (e.CommandName == \"delete\")
{
sqlstr = \"delete Department where departmentid='\" + LabDepid.Text + \"'\"; SqlCommand sqlcom = new SqlCommand(sqlstr, sms_conn); sms_conn.Open();
sqlcom.ExecuteNonQuery(); SMS_BindRepeater(); sms_conn.Close(); } }
protected void Button1_Click(object sender, EventArgs e) {
sqlstr = \"select * from department where
departmentid='\"+DropDownList1.SelectedValue.ToString() +\"'\"; SqlDataAdapter cmd = new SqlDataAdapter(sqlstr, sms_conn); //创建填充DataSet.
DataSet ds = new DataSet(); cmd.Fill(ds, \"TD1\");
RepeaterD.DataSource = ds.Tables[\"TD1\"]; RepeaterD.DataBind(); }
protected void Button2_Click(object sender, EventArgs e) {
SMS_BindRepeater(); }
protected void LinkButton1_Click(object sender, EventArgs e) {
Response.Redirect(\"addDepartment.aspx\"); } }
4.2.5 editstu.aspx
using System; using System.Data;
using System.Configuration; using System.Collections; using System.Web;
using System.Web.Security; using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
public partial class stuadd : System.Web.UI.Page {
SqlConnection sms_conn;
string sms_sqlstr, sms_sqlstr2;
private void Page_Load(object sender, System.EventArgs e) {
// 在此处放置用户代码以初始化页面
string sms_connstr = ConfigurationSettings.AppSettings[\"SMS_dbconn\"]; sms_conn = new SqlConnection(sms_connstr); if (!IsPostBack) SMS_BindGrid(); }
public void SMS_BindGrid() {
TextBox1.Text = Request.QueryString[\"id\"];
sms_sqlstr = \"select * from class,student where student.classid=class.classid and studentid='\" + TextBox1.Text + \"'\";
SqlDataAdapter sms_da = new SqlDataAdapter(sms_sqlstr, sms_conn); DataSet sms_ds = new DataSet(); sms_da.Fill(sms_ds,\"table1\");
TextBox2.Text = sms_ds.Tables[\"table1\"].Rows[0][\"studentname\"].ToString();
RadioButtonList1.SelectedValue= sms_ds.Tables[\"table1\"].Rows[0][\"sex\"].ToString(); TextBox5.Text = sms_ds.Tables[\"table1\"].Rows[0][\"birthday\"].ToString(); TextBox8.Text = sms_ds.Tables[\"table1\"].Rows[0][\"telephone\"].ToString(); TextBox7.Text = sms_ds.Tables[\"table1\"].Rows[0][\"credithour\"].ToString(); TextBox11.Text = sms_ds.Tables[\"table1\"].Rows[0][\"pwd\"].ToString(); TextBox10.Text = sms_ds.Tables[\"table1\"].Rows[0][\"address\"].ToString(); TextBox6.Text = sms_ds.Tables[\"table1\"].Rows[0][\"remark\"].ToString(); for (int i = 2000; i <=2020; i++) {
DropDownList2.Items.Add(new ListItem(i.ToString(), i.ToString())); }
string x =sms_ds.Tables[\"table1\"].Rows[0][\"ru_date\"].ToString() ; DropDownList2.Items.FindByValue(x).Selected = true; //绑定Dropdownlist2;
sms_sqlstr2 = \"select * from [class]\";
SqlDataAdapter sms_da2 = new SqlDataAdapter(sms_sqlstr2, sms_conn); DataSet sms_ds2 = new DataSet(); sms_da2.Fill(sms_ds2, \"T\");
for (int i = 0; i < sms_ds2.Tables[\"T\"].Rows.Count; i++) {
DropDownList1.Items.Add(new
ListItem(sms_ds2.Tables[\"T\"].Rows[i][\"classname\"].ToString(), sms_ds2.Tables[\"T\"].Rows[i][\"classid\"].ToString())); }
x = sms_ds.Tables[\"table1\"].Rows[0][\"classname\"].ToString(); DropDownList1.Items.FindByText(x).Selected = true; sms_conn.Close(); sms_ds.Clear(); sms_ds.Dispose(); sms_ds2.Clear(); sms_ds2.Dispose(); }
protected void Button1_Click(object sender, EventArgs e) {
string sms_sqlstr = \"update student set studentname='\" + TextBox2.Text + \"',sex='\" + RadioButtonList1.SelectedItem.Text + \"',classid='\" + DropDownList1.SelectedValue.ToString() + \"',telephone='\" + TextBox8.Text + \"',address='\" + TextBox10.Text + \"',credithour='\" + TextBox7.Text + \"',pwd='\" + TextBox11.Text + \"',remark='\" + TextBox6.Text + \"',ru_date='\" + DropDownList2.SelectedValue.ToString() + \"',birthday='\" + TextBox5.Text + \"' where studentid='\" + TextBox1.Text + \"'\";
SqlCommand sms_comm = new SqlCommand(sms_sqlstr, sms_conn); sms_comm.Connection.Open(); try {
sms_comm.ExecuteNonQuery(); sms_lbl_note.Text = \"编辑成功\"; }
catch (SqlException) {
sms_lbl_note.Text = \"编辑失败\"; sms_lbl_note.Style[\"color\"] = \"red\"; }
sms_comm.Connection.Close();
SMS_BindGrid(); }
protected void Button3_Click(object sender, EventArgs e) {
Response.Redirect(\"student.aspx\"); }
protected void Button6_Click(object sender, EventArgs e) {
SMS_BindGrid(); } }
4.2.6 grade.aspx
using System;
using System.Collections; using System.ComponentModel; using System.Data;
using System.Data.SqlClient; using System.Drawing; using System.Web;
using System.Web.SessionState; using System.Web.UI;
using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Configuration;
public partial class grade : System.Web.UI.Page {
SqlConnection sms_conn;
string sms_sqlstr, sms_sqlstr2, str;
protected void Page_Load(object sender, EventArgs e) {
string sms_connstr = ConfigurationSettings.AppSettings[\"sms_dbconn\"]; // 建立连接
sms_conn = new SqlConnection(sms_connstr); if (!IsPostBack) SMS_BindGrid();
LinkButton3.Attributes.Add(\"onclick\", \"javascript:return confirm('你确认要删除
吗?')\"); }
public void SMS_BindGrid() {
TextBox2.Text = Request.QueryString[\"id\"];
string sms_sqlstr = \"select * from [grade],[course],[student] where grade.courseid=course.courseid and grade.studentid=student.studentid\"; if (TextBox2.Text !=\"\") {
sms_sqlstr = \"select * from [grade],[course],[student] where
grade.courseid=course.courseid and grade.studentid=student.studentid and grade.courseid='\" + TextBox2.Text + \"'\";
TextBox2.Text =\"\"; }
SqlDataAdapter sms_adp = new SqlDataAdapter(sms_sqlstr, sms_conn); DataSet sms_ds = new DataSet(); sms_adp.Fill(sms_ds); sms_conn.Close();
sms_grade.DataSource = sms_ds; sms_grade.DataBind(); sms_ds.Clear(); sms_ds.Dispose();
sms_conn.Open();
sms_sqlstr2 = \"select coursename,courseid from course\";
SqlDataAdapter sms_da2 = new SqlDataAdapter(sms_sqlstr2, sms_conn); DataSet sms_ds2 = new DataSet(); sms_da2.Fill(sms_ds2, \"T\"); sms_conn.Close();
DropDownList1.DataSource = sms_ds2.Tables[\"T\"]; DropDownList1.DataTextField = \"coursename\"; DropDownList1.DataValueField = \"coursename\"; DropDownList1.DataBind();
RepeaterC.DataSource = sms_ds2.Tables[\"T\"]; RepeaterC.DataBind(); sms_ds2.Clear(); sms_ds2.Dispose(); }
public void Data_Page(object sender, GridViewPageEventArgs e) { try {
sms_grade.PageIndex = e.NewPageIndex; SMS_BindGrid(); } catch { } }
#region Web Form Designer generated code override protected void OnInit(EventArgs e) { //
// CODEGEN:该调用是ASP.NET Web 窗体设计器所必需的。 //
InitializeComponent(); base.OnInit(e); }
/// /// 设计器支持所需的方法- 不要使用代码编辑器修改 /// 此方法的内容。 ///
private void InitializeComponent() {
this.Load += new System.EventHandler(this.Page_Load); }
#endregion
protected void LinkButton1_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_grade.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_grade.Rows[i].FindControl(\"chkSelect\"); chkSelect.Checked = true; } }
protected void LinkButton2_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_grade.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_grade.Rows[i].FindControl(\"chkSelect\"); chkSelect.Checked = !chkSelect.Checked; } }
protected void LinkButton3_Click(object sender, EventArgs e)
{
//如果是绑定数据行
for (int i = 0; i < sms_grade.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_grade.Rows[i].FindControl(\"chkSelect\"); if (chkSelect.Checked) {
string str = ((Label)sms_grade.Rows[i].FindControl(\"Label3\")).Text; string sid = ((Label)sms_grade.Rows[i].FindControl(\"lblsid\")).Text;
string sms_sqlstr = \"delete from grade where studentid='\"+ sid +\"'and courseid='\" + str + \"'\";
SqlCommand sms_comm = new SqlCommand(sms_sqlstr, sms_conn); sms_comm.Connection.Open(); try {
sms_comm.ExecuteNonQuery(); sms_lbl_note.Text = \"删除成功\";
}
catch (SqlException) {
sms_lbl_note.Text = \"删除失败\"; sms_lbl_note.Style[\"color\"] = \"red\"; }
sms_comm.Connection.Close(); } }
SMS_BindGrid(); }
protected void LinkButton4_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_grade.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_grade.Rows[i].FindControl(\"chkSelect\"); chkSelect.Checked = false; } }
protected void Button1_Click(object sender, EventArgs e) {
if (TextBox3.Text == \"\" && TextBox4.Text != \"\") {
sms_sqlstr = \"select * from [student],[grade],[course] where
grade.studentid=student.studentid and grade.courseid=course.courseid and (student.studentid='\" + TextBox4.Text + \"')\"; }
else if (TextBox4.Text == \"\" && (TextBox3.Text != \"\")) {
sms_sqlstr = \"select * from [student],[grade],[course] where grade.studentid=student.studentid and grade.courseid=course.courseid and (student.studentname='\" + TextBox3.Text + \"')\"; }
else if ((TextBox3.Text == \"\") && (TextBox4.Text == \"\")) {
sms_sqlstr = \"select * from [student],[grade],[course] where grade.studentid=student.studentid and grade.courseid=course.courseid and
(student.studentname='\" + TextBox3.Text + \"' or student.studentid='\" + TextBox4.Text + \"' or course.coursename='\" + DropDownList1.SelectedItem.Text + \"')\"; } else {
sms_sqlstr = \"select * from [student],[grade],[course] where grade.studentid=student.studentid and grade.courseid=course.courseid and
(studentstudentname='\" + TextBox3.Text + \"' or student.studentid='\" + TextBox4.Text + \"' or course.coursename='\" + DropDownList1.SelectedItem.Text + \"')\"; }
sms_conn.Open();
SqlDataAdapter sms_da = new SqlDataAdapter(sms_sqlstr, sms_conn); DataSet sms_ds = new DataSet(); sms_da.Fill(sms_ds); sms_conn.Close();
sms_grade.DataSource = sms_ds; sms_grade.DataBind(); TextBox3.Text = \"\";
TextBox4.EnableViewState = false; }
protected void Button2_Click(object sender, EventArgs e) {
Response.Redirect(\"grade.aspx\"); }
protected void Linkbutton1_Click(object sender, EventArgs e) {
int index = 0;
LinkButton lb = (LinkButton)sender;
for (int i = 0; i < sms_grade.Rows.Count; i++) {
if ((LinkButton)(sms_grade.Rows[i].FindControl(\"LinkButton1\")) == lb) {
index = i; break; } }
str =
((Label)(sms_grade.Rows[index].Cells[0].FindControl(\"Label3\"))).Text.ToString(); Label14.Text = str; }
protected void LinkButton5_Click(object sender, EventArgs e) {
Response.Redirect(\"addgrade.aspx\"); }
protected void RowEditing(object sender, GridViewEditEventArgs e) {
sms_grade.EditIndex = e.NewEditIndex; SMS_BindGrid(); } //更新
protected void RowUpdata(object sender, GridViewUpdateEventArgs e) {
string sqlstr = \"update grade set grade='\" +
((TextBox)(sms_grade.Rows[e.RowIndex].Cells[4].Controls[1])).Text.ToString().Trim() + \"' where studentid='\" +
((Label)(sms_grade.Rows[e.RowIndex].Cells[2].Controls[1])).Text.ToString().Trim() + \"'and courseid='\" +
((Label)(sms_grade.Rows[e.RowIndex].Cells[0].Controls[1])).Text.ToString().Trim() + \"'\";
SqlCommand sqlcom = new SqlCommand(sqlstr, sms_conn); sms_conn.Open();
sqlcom.ExecuteNonQuery(); sms_grade.EditIndex = -1; SMS_BindGrid(); sms_conn.Close(); }
//取消
protected void RowCancel(object sender, GridViewCancelEditEventArgs e) {
sms_grade.EditIndex = -1; SMS_BindGrid(); }
protected void RowDataBound(object sender, GridViewRowEventArgs e) {
if (e.Row.RowType == DataControlRowType.DataRow) {
//鼠标经过时,行背景色变
e.Row.Attributes.Add(\"onmouseover\", \"this.style.backgroundColor='#E6F5FA'\"); //鼠标移出时,行背景色变
e.Row.Attributes.Add(\"onmouseout\", \"this.style.backgroundColor='#FFFFFF'\"); } } }
4.2.7 speciality.aspx
using System;
using System.Collections; using System.ComponentModel; using System.Data;
using System.Data.SqlClient; using System.Drawing; using System.Web;
using System.Web.SessionState; using System.Web.UI;
using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Configuration;
public partial class speciality : System.Web.UI.Page {
SqlConnection sms_conn;
string sms_sqlstr, sms_sqlstr2, str;
protected void Page_Load(object sender, EventArgs e) {
string sms_connstr = ConfigurationSettings.AppSettings[\"sms_dbconn\"]; // 建立连接
sms_conn = new SqlConnection(sms_connstr); if (!IsPostBack)
SMS_BindView();
LinkButton3.Attributes.Add(\"onclick\", \"javascript:return confirm('你确认要删除吗?')\"); }
public void SMS_BindView() {
sms_sqlstr = \"select * from [speciality],[department] where department.departmentid=speciality.departmentid\";
SqlDataAdapter sms_adp = new SqlDataAdapter(sms_sqlstr, sms_conn); DataSet sms_ds = new DataSet(); sms_adp.Fill(sms_ds,\"T\"); sms_conn.Close();
sms_grade.DataSource = sms_ds.Tables[\"T\"]; sms_grade.DataBind(); sms_ds.Clear(); sms_ds.Dispose();
sms_sqlstr2 = \"select * from [department] \";
SqlDataAdapter sms_adp2 = new SqlDataAdapter(sms_sqlstr2, sms_conn); DataSet sms_ds2 = new DataSet(); sms_adp2.Fill(sms_ds2, \"T\");
DropDownList2.DataSource = sms_ds2.Tables[\"T\"]; DropDownList2.DataTextField = \"departmentname\"; DropDownList2.DataValueField = \"departmentid\"; DropDownList2.DataBind(); sms_ds2.Clear(); sms_ds2.Dispose(); }
public void Data_Page(object sender, GridViewPageEventArgs e) { try {
sms_grade.PageIndex = e.NewPageIndex; SMS_BindView(); } catch { } }
#region Web Form Designer generated code override protected void OnInit(EventArgs e) { //
// CODEGEN:该调用是ASP.NET Web 窗体设计器所必需的。 //
InitializeComponent(); base.OnInit(e); }
/// /// 设计器支持所需的方法- 不要使用代码编辑器修改 /// 此方法的内容。 ///
private void InitializeComponent() {
this.Load += new System.EventHandler(this.Page_Load); }
#endregion
protected void LinkButton1_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_grade.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_grade.Rows[i].FindControl(\"chkSelect\"); chkSelect.Checked = true; } }
protected void LinkButton2_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_grade.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_grade.Rows[i].FindControl(\"chkSelect\"); chkSelect.Checked = !chkSelect.Checked; } }
protected void LinkButton3_Click(object sender, EventArgs e) {
//如果是绑定数据行
for (int i = 0; i < sms_grade.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_grade.Rows[i].FindControl(\"chkSelect\"); if (chkSelect.Checked) {
string sid = ((Label)sms_grade.Rows[i].FindControl(\"Labspeid\")).Text; string sms_sqlstr = \"delete from speciality where specialityid='\" + sid + \"'\"; SqlCommand sms_comm = new SqlCommand(sms_sqlstr, sms_conn); sms_comm.Connection.Open();
try {
sms_comm.ExecuteNonQuery(); sms_lbl_note.Text = \"删除成功\";
}
catch (SqlException) {
sms_lbl_note.Text = \"删除失败\"; sms_lbl_note.Style[\"color\"] = \"red\"; }
sms_comm.Connection.Close(); } }
SMS_BindView(); }
protected void LinkButton4_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_grade.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_grade.Rows[i].FindControl(\"chkSelect\"); chkSelect.Checked = false; } }
protected void Button1_Click(object sender, EventArgs e) {
sms_sqlstr = \"select * from [speciality],[department] where
department.departmentid=speciality.departmentid and speciality.departmentid='\" + DropDownList2.SelectedValue.ToString() + \"'\";
sms_conn.Open();
SqlDataAdapter sms_da = new SqlDataAdapter(sms_sqlstr, sms_conn); DataSet sms_ds = new DataSet(); sms_da.Fill(sms_ds); sms_conn.Close();
sms_grade.DataSource = sms_ds; sms_grade.DataBind(); }
protected void Button2_Click(object sender, EventArgs e) {
SMS_BindView();
}
protected void Linkbutton1_Click(object sender, EventArgs e) {
int index = 0;
LinkButton lb = (LinkButton)sender;
for (int i = 0; i < sms_grade.Rows.Count; i++) {
if ((LinkButton)(sms_grade.Rows[i].FindControl(\"LinkButton1\")) == lb) {
index = i; break; } }
str =
((Label)(sms_grade.Rows[index].Cells[0].FindControl(\"Label3\"))).Text.ToString(); //
Label14.Text = str; // }
protected void LinkButton5_Click(object sender, EventArgs e) {
Response.Redirect(\"addspeciality.aspx\"); }
protected void RowEditing(object sender, GridViewEditEventArgs e) {
sms_grade.EditIndex = e.NewEditIndex; SMS_BindView(); } //更新
protected void RowUpdata(object sender, GridViewUpdateEventArgs e) {
string sqlstr = \"update speciality set specialityname='\" +
((TextBox)(sms_grade.Rows[e.RowIndex].Cells[1].Controls[1])).Text.ToString().Trim() + \"' where specialityid='\" +
((Label)(sms_grade.Rows[e.RowIndex].Cells[0].Controls[1])).Text.ToString().Trim() + \"'\";
SqlCommand sqlcom = new SqlCommand(sqlstr, sms_conn); sms_conn.Open();
sqlcom.ExecuteNonQuery();
sms_grade.EditIndex = -1; SMS_BindView(); sms_conn.Close(); }
//取消
protected void RowCancel(object sender, GridViewCancelEditEventArgs e) {
sms_grade.EditIndex = -1; SMS_BindView(); }
protected void RowDataBound(object sender, GridViewRowEventArgs e) {
if (e.Row.RowType == DataControlRowType.DataRow) {
//鼠标经过时,行背景色变
e.Row.Attributes.Add(\"onmouseover\", \"this.style.backgroundColor='#E6F5FA'\"); //鼠标移出时,行背景色变
e.Row.Attributes.Add(\"onmouseout\", \"this.style.backgroundColor='#FFFFFF'\"); } } }
4.2.8 student.aspx
using System;
using System.Collections; using System.ComponentModel; using System.Data;
using System.Data.SqlClient; using System.Drawing; using System.Web;
using System.Web.SessionState; using System.Web.UI;
using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Configuration;
public partial class student : System.Web.UI.Page {
SqlConnection sms_conn; string sms_sqlstr2;
protected void Page_Load(object sender, EventArgs e) {
string sms_connstr =
System.Configuration.ConfigurationManager.AppSettings[\"sms_dbconn\"]; // 建立连接
sms_conn = new SqlConnection(sms_connstr); if (!IsPostBack) SMS_BindGrid(); }
public void SMS_BindGrid() {
sms_conn.Open();
string sms_sqlstr = \"select * from [student],[class] where student.classid=class.classid\";
SqlDataAdapter sms_adp = new SqlDataAdapter(sms_sqlstr, sms_conn); DataSet sms_ds = new DataSet(); sms_adp.Fill(sms_ds); sms_conn.Close();
sms_student.DataSource = sms_ds; sms_student.DataBind(); sms_ds.Clear(); sms_ds.Dispose();
sms_conn.Open();
sms_sqlstr2 = \"select * from class\";
SqlDataAdapter sms_da2 = new SqlDataAdapter(sms_sqlstr2, sms_conn); DataSet sms_ds2 = new DataSet(); sms_da2.Fill(sms_ds2, \"T\"); sms_conn.Close();
DropDownList1.DataSource = sms_ds2.Tables[\"T\"]; DropDownList1.DataTextField = \"classname\"; DropDownList1.DataValueField = \"classname\"; DropDownList1.DataBind(); sms_ds2.Clear(); sms_ds2.Dispose(); }
public void Data_Page(object sender, GridViewPageEventArgs e) { try {
sms_student.PageIndex = e.NewPageIndex; SMS_BindGrid(); } catch { } }
/// /// //////////////////////////////////////////////////////////////// ///
///
#region Web Form Designer generated code override protected void OnInit(EventArgs e) { //
// CODEGEN:该调用是ASP.NET Web 窗体设计器所必需的。 //
InitializeComponent(); base.OnInit(e); }
/// /// 设计器支持所需的方法- 不要使用代码编辑器修改 /// 此方法的内容。 ///
private void InitializeComponent() {
this.Load += new System.EventHandler(this.Page_Load); }
#endregion /// /// /////////////////////////////////////////////////////////////// ///
/// ///
protected void LinkButton1_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_student.Rows.Count; i++)
{
CheckBox chkSelect = (CheckBox)sms_student.Rows[i].FindControl(\"chkSelect\"); chkSelect.Checked = true; } }
protected void LinkButton2_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_student.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_student.Rows[i].FindControl(\"chkSelect\"); chkSelect.Checked = !chkSelect.Checked; } }
protected void LinkButton3_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_student.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_student.Rows[i].FindControl(\"chkSelect\"); if (chkSelect.Checked) {
string str = ((Label)sms_student.Rows[i].FindControl(\"Label3\")).Text; string sms_sqlstr = \"delete from student where studentid='\" + str + \"'\"; SqlCommand sms_comm = new SqlCommand(sms_sqlstr, sms_conn); sms_comm.Connection.Open(); try {
sms_comm.ExecuteNonQuery(); sms_lbl_note.Text = \"删除成功\";
}
catch (SqlException) {
sms_lbl_note.Text = \"删除失败\"; sms_lbl_note.Style[\"color\"] = \"red\"; }
sms_comm.Connection.Close(); } }
SMS_BindGrid(); }
protected void LinkButton4_Click(object sender, EventArgs e) {
for (int i = 0; i < sms_student.Rows.Count; i++) {
CheckBox chkSelect = (CheckBox)sms_student.Rows[i].FindControl(\"chkSelect\"); chkSelect.Checked = false; } }
protected void Button1_Click(object sender, EventArgs e) {
sms_conn.Open();
SqlCommand sms_comm = new SqlCommand(\"Student_Sel\", sms_conn); sms_comm.CommandType = CommandType.StoredProcedure; sms_comm.CommandText = \"Student_Sel\"; sms_comm.Connection = sms_conn;
SqlDataAdapter sms_da = new SqlDataAdapter(sms_comm);
sms_da.SelectCommand.Parameters.Add(\"@lastname\", SqlDbType.NVarChar); sms_da.SelectCommand.Parameters.Add(\"@department\", SqlDbType.VarChar, 30); sms_da.SelectCommand.Parameters.Add(\"@studentid\", SqlDbType.VarChar, 10); sms_da.SelectCommand.Parameters[\"@lastname\"].Value = this.TextBox3.Text.Trim().Replace(\"'\", \"''\");
sms_da.SelectCommand.Parameters[\"@department\"].Value = this.DropDownList1.SelectedValue.ToString();
sms_da.SelectCommand.Parameters[\"@studentid\"].Value = this.TextBox4.Text.Trim().Replace(\"'\", \"''\"); DataSet sms_ds = new DataSet(); sms_da.Fill(sms_ds); sms_conn.Close();
sms_student.DataSource = sms_ds; sms_student.DataBind(); }
protected void Button2_Click(object sender, EventArgs e) {
SMS_BindGrid(); }
protected void LinkButton5_Click(object sender, EventArgs e) {
Response.Redirect(\"addstu.aspx\"); }
protected void RowDataBound(object sender, GridViewRowEventArgs e) {
if (e.Row.RowType == DataControlRowType.DataRow) {
//鼠标经过时,行背景色变
e.Row.Attributes.Add(\"onmouseover\", \"this.style.backgroundColor='#E6F5FA'\"); //鼠标移出时,行背景色变
e.Row.Attributes.Add(\"onmouseout\", \"this.style.backgroundColor='#FFFFFF'\"); } } }
4.2.9 teacher.aspx
using System; using System.Data;
using System.Configuration; using System.Collections; using System.Web;
using System.Web.Security; using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient;
public partial class teacher : System.Web.UI.Page {
SqlConnection sms_conn; string sms_sqlstr,sms_sqlstr2;
private void Page_Load(object sender, System.EventArgs e) {
// 在此处放置用户代码以初始化页面 string sms_connstr =
System.Configuration.ConfigurationManager.AppSettings[\"sms_dbconn\"]; sms_conn = new SqlConnection(sms_connstr); if (!IsPostBack) SMS_BindGrid(); }
#region Web Form Designer generated code override protected void OnInit(EventArgs e) { //
// CODEGEN:该调用是ASP.NET Web 窗体设计器所必需的。 //
InitializeComponent(); base.OnInit(e); }
/// /// 设计器支持所需的方法- 不要使用代码编辑器修改 /// 此方法的内容。 ///
private void InitializeComponent() {
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
public void DataGrid_Page(object sender, DataGridPageChangedEventArgs e) {
sms_teacher.CurrentPageIndex = e.NewPageIndex; SMS_BindGrid(); }
public void DataGrid_edit(object sender, DataGridCommandEventArgs e) {
sms_teacher.EditItemIndex = (int)e.Item.ItemIndex; SMS_BindGrid();
}
public void DataGrid_cancel(object sender, DataGridCommandEventArgs e) {
sms_teacher.EditItemIndex = -1; SMS_BindGrid();
}
public void DataGrid_delete(object sender, DataGridCommandEventArgs e) {
string sms_sqlstr = \"delete from teacher where Teacherid=@teacher_id\"; SqlCommand sms_comm = new SqlCommand(sms_sqlstr, sms_conn);
sms_comm.Parameters.Add(new SqlParameter(\"@teacher_id\", SqlDbType.Char, 8)); sms_comm.Parameters[\"@teacher_id\"].Value = sms_teacher.DataKeys[(int)e.Item.ItemIndex]; sms_comm.Connection.Open(); try
{
sms_comm.ExecuteNonQuery(); sms_lbl_note.Text = \"删除成功\";
}
catch (SqlException) {
sms_lbl_note.Text = \"删除失败\"; sms_lbl_note.Style[\"color\"] = \"red\"; }
sms_comm.Connection.Close(); SMS_BindGrid(); }
public void SMS_BindGrid() {
sms_sqlstr = \"select
teacherid,teachername,department.departmentid,department.departmentname,sex,telephone from teacher,department where teacher.departmentid=department.departmentid\"; SqlDataAdapter sms_da = new SqlDataAdapter(sms_sqlstr, sms_conn); DataSet sms_ds = new DataSet(); sms_da.Fill(sms_ds,\"T\"); sms_teacher.DataSource = sms_ds; sms_teacher.DataBind();
sms_sqlstr2 = \"select * from department\";
SqlDataAdapter sms_da2 = new SqlDataAdapter(sms_sqlstr2, sms_conn); DataSet sms_ds2 = new DataSet(); sms_da2.Fill(sms_ds2, \"T\");
DropDownList1.DataSource = sms_ds2.Tables[\"T\"]; DropDownList1.DataTextField = \"departmentname\"; DropDownList1.DataValueField = \"departmentname\"; DropDownList1.DataBind();
}
protected void Button1_Click(object sender, EventArgs e) {
SqlCommand sms_comm = new SqlCommand(\"Employess_Sel\", sms_conn); sms_comm.CommandType = CommandType.StoredProcedure; sms_comm.CommandText = \"Employess_Sel\"; sms_comm.Connection = sms_conn;
SqlDataAdapter sms_da = new SqlDataAdapter(sms_comm);
sms_da.SelectCommand.Parameters.Add(\"@lastname\", SqlDbType.NVarChar); sms_da.SelectCommand.Parameters.Add(\"@department\", SqlDbType.VarChar,30); sms_da.SelectCommand.Parameters[\"@lastname\"].Value = this.TextBox1.Text.Trim().Replace(\"'\", \"''\");
sms_da.SelectCommand.Parameters[\"@department\"].Value = this.DropDownList1.SelectedValue.ToString();; DataSet sms_ds = new DataSet(); sms_da.Fill(sms_ds);
sms_teacher.DataSource = sms_ds; sms_teacher.DataBind(); } }
结束语
在本系统的开发过程中,由于是开发的教务管理软件,加上学校同学老师的帮助开发起来比较顺手。在知识、经验方面存在着一些不足。另外,在整个开发的过程中,时间也比较仓促。因此,该系统必然会存在一些缺陷和不足。因为对学生管理的整个流程不够熟悉,在需求分析时未能做到完全满足用户的需求。
尽管本管理系统存在着很多不足,但其功能全面、易于日后程序更新、数据库管理容易、界面友好、操作方便、效率高、安全性好等优点是本管理系统所必需的。相信本教务管理系统是一套学校在日常管理中必不可少的管理软件,通过开发这个系统,我掌握了的项本过程,了解了的基本知识巩固了我对软件工程的学习,但在这课程设计中的最大收获并不是掌握这几门开发工具的应用,而是学会了设计系统的思维方法,以及与同学们之间相互帮助的精神。
致 谢
在实验即将完成之际,回顾紧张但又充实的和开发过程,本人在此向所有关心我的及帮助我的老师和同学们致以最真诚的感谢。
在本次课程设计中,我从授课老师身上学到了很多东西。他认真负责的工作
态度,严谨的治学精神和深厚的理论水平都使我受益匪浅。他们无论在理论上还是在实践中,都给与我很大的帮助,使我得到很大的提高,这对于我以后的工作和学习都有一种巨大的帮助,在此感谢他耐心的辅导。在编写过程中,老师几次检查我们的进程,提出了许多宝贵意见,没有他的指导,我们就不能较好的完成课题设计的任务。
另外,我还要感谢老师孜孜不倦的教诲不但让我学到了很多知识,而且让我掌握了学习的方法,更教会了我做人处事的道理,在此表示感谢。同时,在系统开发过程中还有同学也给了我不少帮助,这里一并表示感谢。
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo9.cn 版权所有 赣ICP备2023008801号-1
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务