

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 《數(shù)據(jù)庫系統(tǒng)原理課程設計報告》</p><p><b> 學生選課系統(tǒng)</b></p><p><b> 一.引言</b></p><p><b> 1.1 問題描述</b></p><p><b> 系統(tǒng)功能的基本要求</b>
2、;</p><p> 學生在校期間除了要修一些必修課之外,還要選修一些課程學習。這就需要進行課程選擇,所以我們試設計一個學生選課系統(tǒng),這可以既便于學生進行老師和課程選擇,也方便老師查看選擇自己所教課程的情況,管理員既可以對教師帶課進行安排也可以對課程進行安排。</p><p> 1.2開發(fā)環(huán)境和運行環(huán)境</p><p> 學生選課系統(tǒng)這運用了當前最流行的SQL
3、 SERVER2005和VS2010運行和開發(fā)的。</p><p> 庫、基本表的建立和修改:在SQL-SERVER 環(huán)境下用CREATE TABLE 建立以及庫中基本表。</p><p> 數(shù)據(jù)加載:用手工錄入實現(xiàn)基本表的數(shù)據(jù)加載。</p><p> 單表查詢以及多表查詢:在建立的基本表中使用select 基本格式和聚集函數(shù);設計合適的視圖,實現(xiàn)多表查詢。&
4、lt;/p><p> 單表刪除以及多表刪除:在建立的基本表中使用delete基本格式和關聯(lián)函數(shù),實現(xiàn)多表刪除。</p><p> 單表插入:在建立的基本表上使用insert 基本格式,實現(xiàn)表的插入。</p><p><b> 二.需求分析</b></p><p> 2.1 系統(tǒng)功能基本的要求</p>&
5、lt;p> 該系統(tǒng)中設置三個角色,管理員,教師和學生。</p><p> 每個用戶需要根據(jù)自己的用戶名、密碼以及角色登錄系統(tǒng)。</p><p> 管理員角色權限為:創(chuàng)建教師、學生用戶,填寫和修改用戶信息。錄入課程信息供學生選課時使用。</p><p> 教師角色權限為:登錄后只能看到自己所帶的選課情況,同時可以添加或修改自己所帶課程的學生成績,教師無權
6、限修改其他老師所帶課程的學生成績。</p><p> ?。?)學生角色權限為:登錄后可以看到自己的選課情況,可以對學?,F(xiàn)有的課程進行查詢,同時進行選課或者是退課。</p><p> 2.2 安全與完整性要求:</p><p><b> ?。?)安全性要求</b></p><p> a.系統(tǒng)應設置訪問用戶的標識以鑒別是
7、否是合法用戶,并要求合法用戶設置其密碼,保證用戶身份不被盜用;</p><p> b. 系統(tǒng)應對不同的數(shù)據(jù)設置不同的訪問級別,限制訪問用戶可查詢和處理數(shù)據(jù)的類別和內(nèi)容;</p><p><b> ?。?)完整性要求</b></p><p> a. 各種信息記錄的完整性,信息記錄內(nèi)容不能為空;</p><p> b.
8、 各種數(shù)據(jù)間相互的聯(lián)系的正確性;</p><p> c. 相同的數(shù)據(jù)在不同記錄中的一致性。</p><p> 2.3系統(tǒng)功能的設計</p><p> 要求能夠根據(jù)用戶登錄的不同角色查看和實現(xiàn)不同操作,學生角色可以查看可選課程和代課老師的信息,可以完成選擇課程;教師角色可以查看自己所帶課程并可以查看所選擇自己代課的學生信息并可以為其添加成績;管理員角色可以添加或
9、學生、老師,院系和課程。</p><p><b> 三.E-R圖設計</b></p><p><b> 四.創(chuàng)建表的代碼</b></p><p><b> 4.1 學生表</b></p><p> CREATE TABLE CoursTB (</p>&l
10、t;p> CoursNO varchar(20),</p><p> CoursName varchar(50),</p><p> CoursType varchar(50) ,</p><p> SumPoint smallint DEFAULT NULL,</p><p> PRIMARY KEY (CoursNO)&l
11、t;/p><p><b> ) ;</b></p><p><b> 4.2 課程表</b></p><p> CREATE TABLE stutb (</p><p> StuNO varchar(20) ,</p><p> StuName varchar(20)
12、,</p><p> StuClass varchar(40) NOT NULL,</p><p> StuSdept varchar(40) ,</p><p> StuMajor varchar(40) NOT NULL,</p><p> PRIMARY KEY (StuNO),</p><p>
13、FOREIGN KEY (StuNO) REFERENCES UserTB (UserNO) ON DELETE CASCADE ON UPDATE CASCADE</p><p><b> )</b></p><p><b> 4.3教師表</b></p><p> CREATE TABLE TechTB (<
14、;/p><p> TechNO varchar(20) NOT NULL,</p><p> TechName varchar(20) NOT NULL,</p><p> TechSdept varchar(40) NOT NULL,</p><p> TechMajor varchar(40) NOT NULL,</p&g
15、t;<p> PRIMARY KEY (TechNO),</p><p> FOREIGN KEY (TechNO) REFERENCES UserTB (UserNO) ON DELETE CASCADE ON UPDATE CASCADE</p><p><b> ) ;</b></p><p><b> 4
16、.4 教師課程表</b></p><p> CREATE TABLE TechCourse (</p><p> TechNO varchar(20) NOT NULL ,</p><p> CoursNO varchar(20) NOT NULL,</p><p> PRIMARY KEY (TechNO,CoursN
17、O),</p><p> FOREIGN KEY (TechNO) REFERENCES TechTB(TechNO) ON DELETE CASCADE ON UPDATE CASCADE,</p><p> FOREIGN KEY (CoursNO) REFERENCES CoursTB(CoursNO) ON DELETE CASCADE ON UPDATE CASCADE<
18、;/p><p><b> ) ;</b></p><p><b> 4.5 用戶表</b></p><p> CREATE TABLE UserTB (</p><p> UserNO varchar(20) NOT NULL,</p><p> PSN varcha
19、r(10) DEFAULT NULL,</p><p> Pwd varchar(20) DEFAULT NULL,</p><p> PRIMARY KEY (UserNO)</p><p><b> )</b></p><p><b> 4.6 學生選課表</b></p>
20、<p> CREATE TABLE StuTechCoursTB (</p><p> StuNO varchar(20) NOT NULL DEFAULT '',</p><p> TechNO varchar(20) NOT NULL DEFAULT '',</p><p> CourNO varchar(
21、20) DEFAULT '',</p><p> getPoint smallint DEFAULT NULL,</p><p> PRIMARY KEY (StuNO,TechNO,CourNO),</p><p> FOREIGN KEY (StuNO) REFERENCES UserTB(UserNO) ON DELETE CASCAD
22、E ON UPDATE CASCADE,</p><p> --FOREIGN KEY (TechNO) REFERENCES UserTB(UserNO) ON DELETE CASCADE ON UPDATE CASCADE,</p><p> FOREIGN KEY (CourNO) REFERENCES CoursTB(CoursNO) ON DELETE CASCADE ON
23、 UPDATE CASCADE</p><p><b> );</b></p><p><b> 五.源程序代碼</b></p><p> /*下面是關于數(shù)據(jù)庫操作例子的部分代碼,所有數(shù)據(jù)庫相關的增刪該查全部包含在代碼中,由于代碼太多這里只能列舉一部分*/</p><p> // 下面是一個
24、關于數(shù)據(jù)庫管理先關的類</p><p> using System;</p><p> using System.Collections.Generic;</p><p> using System.Linq;</p><p> using System.Text;</p><p> using System
25、.Data;</p><p> using System.Data.Sql;</p><p> using System.Data.SqlClient;</p><p> using System.Configuration;</p><p> namespace DBManage</p><p><b&
26、gt; {</b></p><p> class DbHelp</p><p><b> {</b></p><p> private SqlConnection SqlConn;</p><p> private SqlCommand SqlCmd;</p><p> p
27、rivate SqlDataReader Reader;</p><p> private SqlDataAdapter SqlAdapter;</p><p> public DbHelp()</p><p><b> {</b></p><p> string ConnStr = ConfigurationS
28、ettings.AppSettings["ConnStr"];</p><p> SqlConn = new SqlConnection(ConnStr);</p><p> SqlCmd = new SqlCommand(); </p><p><b> }</b></p><p> pub
29、lic string ReturnOneData(string sql)</p><p><b> {</b></p><p> string tempData = "";</p><p> if(ReturnReader(sql) == null)</p><p><b> {&l
30、t;/b></p><p> return null;</p><p><b> }</b></p><p> if (Reader.Read())</p><p><b> {</b></p><p> tempData = Reader[0].ToStri
31、ng();</p><p><b> }</b></p><p> CloseReader();</p><p> return tempData;</p><p><b> }</b></p><p> public SqlDataReader ReturnRea
32、der(string sql)</p><p><b> {</b></p><p> Reader = null;</p><p> SqlCmd.Connection = SqlConn;</p><p> SqlCmd.CommandText = sql;</p><p><b
33、> try</b></p><p><b> {</b></p><p> if (SqlConn.State == ConnectionState.Closed)</p><p><b> {</b></p><p> SqlConn.Open();</p>
34、<p><b> }</b></p><p> Reader = SqlCmd.ExecuteReader();</p><p><b> }</b></p><p><b> catch</b></p><p><b> {</b>
35、;</p><p> SqlConn.Close();</p><p><b> }</b></p><p> return Reader;</p><p><b> }</b></p><p> public void CloseReader()</p>
36、;<p><b> {</b></p><p> if (!Reader.IsClosed)</p><p><b> {</b></p><p> Reader.Close();</p><p><b> }</b></p><p&
37、gt; if (SqlConn.State == ConnectionState.Open)</p><p><b> {</b></p><p> SqlConn.Close();</p><p><b> }</b></p><p><b> }</b></
38、p><p> public bool NoReturnQuery(string sql)</p><p><b> {</b></p><p> SqlCmd.CommandText = sql;</p><p> SqlCmd.Connection = SqlConn;</p><p>&l
39、t;b> try</b></p><p><b> {</b></p><p> if (SqlConn.State == ConnectionState.Closed)</p><p><b> {</b></p><p> SqlConn.Open();</p&
40、gt;<p><b> }</b></p><p> SqlCmd.ExecuteNonQuery();</p><p> SqlConn.Close();</p><p><b> }</b></p><p><b> catch</b></p&
41、gt;<p><b> {</b></p><p> SqlConn.Close();</p><p> return false;</p><p><b> }</b></p><p> return true;</p><p><b>
42、 }</b></p><p> public DataSet ReturnDataSet(string sql)</p><p><b> {</b></p><p> DataSet TempDataSet=new DataSet() ;</p><p><b> try</b>
43、;</p><p><b> {</b></p><p> SqlAdapter = new SqlDataAdapter(sql,SqlConn);</p><p> SqlAdapter.Fill(TempDataSet); </p><p><b> }</b></p>
44、<p><b> catch </b></p><p><b> {</b></p><p> TempDataSet = null;</p><p><b> }</b></p><p> return TempDataSet;</p>&l
45、t;p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> using System;</p><p> using System.Collections.Generic;</p>&
46、lt;p> using System.Linq;</p><p> using System.Windows.Forms;</p><p> namespace MainFormSpace</p><p><b> {</b></p><p> static class Program</p>
47、<p><b> {</b></p><p> [STAThread]</p><p> static void Main()</p><p><b> {</b></p><p> Application.EnableVisualStyles();</p>&
48、lt;p> Application.SetCompatibleTextRenderingDefault(false);</p><p> LognForm logn = new LognForm();</p><p> logn.ShowDialog();</p><p> if (LognForm.ChargePass())</p>&
49、lt;p><b> {</b></p><p> Application.Run(new MainFormSpace.MainForm(LognForm.GetUserNO(),LognForm.GetUserType()));</p><p><b> }</b></p><p><b> }&l
50、t;/b></p><p><b> }</b></p><p><b> }</b></p><p> using System;</p><p> using System.Collections.Generic;</p><p> using Syste
51、m.ComponentModel;</p><p> using System.Data;</p><p> using System.Drawing;</p><p> using System.Linq;</p><p> using System.Text;</p><p> using System.
52、Data.SqlClient;</p><p> using System.Windows.Forms;</p><p> namespace MainFormSpace</p><p><b> {</b></p><p> public partial class LognForm : Form</p&
53、gt;<p><b> {</b></p><p> private UserManageSpace.User user=null;</p><p> private static bool IsPass = false;</p><p> private static string UserType ="&qu
54、ot;;</p><p> private static string UserNO="";</p><p> public LognForm()</p><p><b> {</b></p><p> InitializeComponent();</p><p>
55、UserTypeCBX.SelectedIndex = 0; </p><p><b> }</b></p><p> private void Exitbtn_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> thi
56、s.Close();</p><p><b> }</b></p><p> private void LognBtn_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> if (!ChargeIsNull())<
57、/p><p><b> {</b></p><p><b> return;</b></p><p><b> }</b></p><p> IsPass = false;</p><p> user = new UserManageSpace.U
58、ser(UserNOtxt.Text.Trim(),UserTypeCBX.Text.Trim(),UserPwdtxt.Text.Trim());</p><p> switch(user.ChargeUserIsExist())</p><p><b> {</b></p><p> case 0: //不存在</p>
59、<p> ShowErrlbl.Text = "用戶信息不正確,請核查";</p><p><b> break;</b></p><p> case 1: //存在</p><p> IsPass = true;</p><p> UserNO = UserNOtxt.Text.
60、Trim();//記錄用戶帳號</p><p> this.Close();</p><p><b> break; </b></p><p> case -1: //發(fā)生錯誤</p><p> MessageBox.Show("系統(tǒng)發(fā)生錯誤,請聯(lián)系管理員");</p><
61、p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p> private bool ChargeIsNull()</p><p><b> {</b></p>
62、;<p> bool temp = true;</p><p> if (UserNOtxt.Text.Trim() == "")</p><p><b> {</b></p><p> UserNOErrlbl.Visible=true;</p><p> ShowErrlb
63、l.Text = "輸入項中不能為空";</p><p> temp = false;</p><p><b> }</b></p><p> if (UserPwdtxt.Text.Trim() == "")</p><p><b> {</b>&l
64、t;/p><p> UserPwdlbl.Visible = true;</p><p> ShowErrlbl.Text = "輸入項中不能為空";</p><p> temp = false;</p><p><b> }</b></p><p> switch (U
65、serTypeCBX.Text.Trim())</p><p><b> { </b></p><p> case "學生":</p><p> UserType ="學生";</p><p><b> break;</b></p>&l
66、t;p> case "教師":</p><p> UserType = "教師";</p><p><b> break;</b></p><p> case "管理員":</p><p> UserType = "管理員";
67、</p><p><b> break;</b></p><p><b> }</b></p><p> return temp;</p><p><b> }</b></p><p> public static string GetUser
68、NO()</p><p><b> {</b></p><p> return UserNO;</p><p><b> }</b></p><p> public static string GetUserType()</p><p><b> {&l
69、t;/b></p><p> return UserType;</p><p><b> }</b></p><p> public static bool ChargePass()</p><p><b> {</b></p><p> return IsP
70、ass;</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> using System;</p><p> using System.Collections.Gen
71、eric;</p><p> using System.ComponentModel;</p><p> using System.Data;</p><p> using System.Drawing;</p><p> using System.Linq;</p><p> using System.Te
72、xt;</p><p> using System.Windows.Forms;</p><p> namespace MainFormSpace.StudentManageForm</p><p><b> {</b></p><p> public partial class StuManage : Form
73、</p><p><b> {</b></p><p> private string Sdept = "所有院系";</p><p> private string Class = "所有班級";</p><p> private string Major = "
74、;所有專業(yè)";</p><p> private int CurrentPage = 1; </p><p> private MainFormSpace.QueryStuMsgClass Query;</p><p> private StuManageSpace.Student Stu;</p><p> private
75、 bool IsNew = true;</p><p> private int Selectedindex = 0;</p><p> public StuManage()</p><p><b> {</b></p><p> InitializeComponent();</p><p&g
76、t;<b> }</b></p><p> private void StuManage_Load(object sender, EventArgs e)</p><p><b> {</b></p><p> Query = new QueryStuMsgClass(Class,Sdept,Major,Curre
77、ntPage);</p><p> Query.GetMsgForGDV(StuMsgDGV,CurrentPagelbl,SumPagelbl,RecordMsglbl);</p><p> Query.getMsgForcbx(ClassCBX,SdeptCBX,MajorCBX);</p><p> Query.getMsgForNewcbx(AddNe
78、wStuClassCBX,AddNewStuSdeptCBX,AddNewStuMajorCBX);</p><p><b> }</b></p><p> private void btnQuery_Click(object sender, EventArgs e)</p><p><b> {</b></p
79、><p> StatusMsg.Text = "";</p><p> Sdept = SdeptCBX.Text.Trim();</p><p> Class = ClassCBX.Text.Trim();</p><p> Major = MajorCBX.Text.Trim();</p><p
80、> Query = new QueryStuMsgClass(Class,Sdept,Major,CurrentPage);</p><p> Query.GetMsgForGDV(StuMsgDGV,CurrentPagelbl,SumPagelbl,RecordMsglbl);</p><p><b> }</b></p><p&g
81、t; private void btnExit_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> this.Close();</p><p><b> }</b></p><p> private void Down
82、Pagelbl_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> CurrentPage=int.Parse(CurrentPagelbl.Text.Substring(CurrentPagelbl.Text.IndexOf(":") + 1))+1;</p>
83、<p> Query = new QueryStuMsgClass(Class, Sdept, Major, CurrentPage);</p><p> Query.GetMsgForGDV(StuMsgDGV, CurrentPagelbl, SumPagelbl, RecordMsglbl);</p><p> CurrentPage = int.Parse(Cu
84、rrentPagelbl.Text.Substring(CurrentPagelbl.Text.IndexOf(":") + 1));</p><p><b> }</b></p><p> private void UpPagelbl_Click(object sender, EventArgs e)</p><p>
85、<b> {</b></p><p> CurrentPage = int.Parse(CurrentPagelbl.Text.Substring(CurrentPagelbl.Text.IndexOf(":") + 1)) - 1;</p><p> if (CurrentPage<=0)</p><p>&l
86、t;b> {</b></p><p> CurrentPage = 1;</p><p><b> }</b></p><p> Query = new QueryStuMsgClass(Class, Sdept, Major, CurrentPage);</p><p> Query.Get
87、MsgForGDV(StuMsgDGV, CurrentPagelbl, SumPagelbl, RecordMsglbl);</p><p> CurrentPage = int.Parse(CurrentPagelbl.Text.Substring(CurrentPagelbl.Text.IndexOf(":") + 1));</p><p><b>
88、 }</b></p><p> private void NewStuMsgbtn_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> if (IsNew)</p><p><b> {</b></p&
89、gt;<p> Stu = new StuManageSpace.Student(AddNewStuNOtxt.Text.Trim(), AddNewStuNametxt.Text.Trim(), AddNewStuClassCBX.Text.Trim(), AddNewStuSdeptCBX.Text.Trim(), AddNewStuMajorCBX.Text.Trim());</p><p>
90、; switch (Stu.CreateOneNewStudent())</p><p><b> {</b></p><p> case 1: //創(chuàng)建學生信息成功</p><p> StuManage_Load(null, null);</p><p> StatusMsg.Text = "創(chuàng)建學
91、生成功";</p><p><b> break;</b></p><p> case 0: //創(chuàng)建學生信息失敗</p><p> StatusMsg.Text = "學生信息創(chuàng)建失敗";</p><p><b> break;</b></p>
92、<p> case -1: //該學生信息已經(jīng)錄入</p><p> StatusMsg.Text = "該生已經(jīng)被錄入";</p><p><b> break;</b></p><p><b> }</b></p><p><b> }</
93、b></p><p><b> else</b></p><p><b> {</b></p><p> StatusMsg.Text = "";</p><p> IsNew = false;</p><p> MsgChangebtn.
94、Enabled = false;</p><p> AddNewStuNOtxt.Text = ""; //學號</p><p> AddNewStuNametxt.Text = "";//姓名</p><p> AddNewStuClassCBX.SelectedIndex =0 ;//班級</p>&l
95、t;p> AddNewStuSdeptCBX.SelectedIndex = 0;//院系</p><p> AddNewStuMajorCBX.SelectedIndex = 0; //專業(yè)</p><p><b> }</b></p><p><b> }</b></p><p>
96、 private void StuMsgDGV_CellClick(object sender, DataGridViewCellEventArgs e)</p><p><b> {</b></p><p> if (e.RowIndex < 0)</p><p><b> {</b></p>
97、<p><b> return;</b></p><p><b> }</b></p><p> switch(e.ColumnIndex)</p><p><b> {</b></p><p> case 0: //編輯事件</p><
98、;p> Edit(e.RowIndex);</p><p><b> break;</b></p><p> case 1: //刪除事件</p><p> Delete(StuMsgDGV.Rows[e.RowIndex].Cells[2].Value.ToString());</p><p><
99、b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p> private void Edit(int Rowindex)</p><p><b> {</b></p>&l
100、t;p> Selectedindex = Rowindex;</p><p> AddNewStuNOtxt.Text = StuMsgDGV.Rows[Rowindex].Cells[2].Value.ToString(); //學號</p><p> AddNewStuNametxt.Text = StuMsgDGV.Rows[Rowindex].Cells[3].Valu
101、e.ToString();//姓名</p><p> AddNewStuClassCBX.Text = StuMsgDGV.Rows[Rowindex].Cells[4].Value.ToString();//班級</p><p> AddNewStuSdeptCBX.Text = StuMsgDGV.Rows[Rowindex].Cells[5].Value.ToString();/
102、/院系</p><p> AddNewStuMajorCBX.Text = StuMsgDGV.Rows[Rowindex].Cells[6].Value.ToString(); //專業(yè)</p><p> MsgChangebtn.Enabled = true; //可以修</p><p> IsNew = false;</p><p&g
103、t;<b> }</b></p><p> private void Delete(string Id)</p><p><b> {</b></p><p> Stu = new StuManageSpace.Student(Id);</p><p> if (MessageBox.Sh
104、ow("確認要刪除信息嗎?", "確認信息", MessageBoxButtons.OKCancel) == DialogResult.Cancel)</p><p><b> {</b></p><p><b> return;</b></p><p><b> }
105、</b></p><p> if (Stu.DeleteStudent())</p><p><b> {</b></p><p> StuManage_Load(null, null);</p><p> StatusMsg.Text = "刪除學生信息成功";</p>
106、;<p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> StatusMsg.Text="刪除學生信息失敗";</p><p><b> }</
107、b></p><p><b> }</b></p><p> private void MsgChangebtn_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> Stu = new StuManageSpace
108、.Student(AddNewStuNOtxt.Text.Trim(), AddNewStuNametxt.Text.Trim(), AddNewStuClassCBX.Text.Trim(), AddNewStuSdeptCBX.Text.Trim(), AddNewStuMajorCBX.Text.Trim());</p><p> if (Stu.UpateStuMsg())</p><
109、;p><b> {</b></p><p> StuManage_Load(null,null);</p><p> if (Selectedindex != 0)</p><p><b> {</b></p><p> StuMsgDGV.Rows[0].Selected = fa
110、lse;</p><p><b> }</b></p><p> StuMsgDGV.Rows[Selectedindex].Selected = true;</p><p> IsNew = true;</p><p> MsgChangebtn.Enabled = false;</p><
111、p> AddNewStuNOtxt.Text = ""; //學號</p><p> AddNewStuNametxt.Text = "";//姓名</p><p> AddNewStuClassCBX.SelectedIndex = 0;//班級</p><p> AddNewStuSdeptCBX.Selec
112、tedIndex = 0;//院系</p><p> AddNewStuMajorCBX.SelectedIndex = 0; //專業(yè)</p><p> StatusMsg.Text = "更新學生信息成功";</p><p><b> }</b></p><p><b> els
113、e</b></p><p><b> {</b></p><p> StatusMsg.Text="更改學生信息失敗"; </p><p><b> }</b></p><p><b> }</b></p><p>
114、;<b> }</b></p><p><b> }</b></p><p> // 下面是教師管理界面代碼</p><p> using System;</p><p> using System.Collections.Generic;</p><p> us
115、ing System.ComponentModel;</p><p> using System.Data;</p><p> using System.Drawing;</p><p> using System.Linq;</p><p> using System.Text;</p><p> usin
116、g System.Windows.Forms;</p><p> namespace MainFormSpace.TeachManageForm</p><p><b> {</b></p><p> public partial class TeachMessage : Form</p><p><b>
117、; {</b></p><p> private int CurrentPage=1;//默認當前也是1</p><p> private string Sdept = "所有院系";</p><p> private string Major = "所有專業(yè)";</p><p>
118、 private QuerySpace.QueryTeacherMsg query = null;</p><p> private TeacherSpace.Teacher teacher = null;</p><p> private bool IsNew = true;</p><p> public TeachMessage()</p>
119、<p><b> {</b></p><p> InitializeComponent();</p><p><b> }</b></p><p> private void TeachMessage_Load(object sender, EventArgs e)</p><p&g
120、t;<b> {</b></p><p> query = new QuerySpace.QueryTeacherMsg(TechMsgDiv, CurrentPagelbl, SumPagelbl, RecordSumlbl,AddNewSdeptCBX,AddNewMajor,SdeptCBX,MajorCBX);</p><p> query.Curren
121、Pg();</p><p> query.getMsgForNewcbx();</p><p> query.getMsgForcbx();</p><p><b> }</b></p><p> private void Querybtn_Click(object sender, EventArgs e)<
122、;/p><p><b> {</b></p><p> ShowErrMsg.Text = "";</p><p> Sdept = SdeptCBX.Text.Trim();</p><p> Major = MajorCBX.Text.Trim();</p><p>
123、 query.SetSdept(Sdept, Major);</p><p> query.SetCurrentPage(1);</p><p> query.CurrenPg();</p><p><b> }</b></p><p> private void DownPagelbl_Click(object
124、 sender, EventArgs e)</p><p><b> {</b></p><p> query.SetSdept(Sdept,Major);</p><p> query.DownPage();</p><p><b> }</b></p><p>
125、 private void UpPagelbl_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> query.SetSdept(Sdept, Major);</p><p> query.UpPage();</p><p><b>
126、 }</b></p><p> private void Exitbtn_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> this.Close();</p><p><b> }</b></p&g
127、t;<p> private void AddNewTeacher_Click(object sender, EventArgs e)</p><p><b> {</b></p><p> if (IsNew)</p><p><b> {</b></p><p> tea
128、cher = new TeacherSpace.Teacher(TechNOtxt.Text.Trim(), TechNametxt.Text.Trim(), AddNewSdeptCBX.Text.Trim(), AddNewMajor.Text.Trim());</p><p> switch (teacher.CreateNewTeacher())</p><p><b>
129、; {</b></p><p><b> case 1:</b></p><p> query.SetSdept(Sdept, Major);</p><p> query.CurrenPg();</p><p> query.getMsgForcbx();</p><p>
130、 query.getMsgForNewcbx();</p><p> ClearMsg();</p><p> SdeptCBX.Text = Sdept;</p><p> MajorCBX.Text = Major;</p><p> ShowErrMsg.Text = "創(chuàng)建教師信息成功";</p&g
131、t;<p><b> break;</b></p><p><b> case 0:</b></p><p> MessageBox.Show("創(chuàng)建教師信息失敗");</p><p> ShowErrMsg.Text = "創(chuàng)建教師信息失敗";</p&g
132、t;<p><b> break;</b></p><p><b> case -1:</b></p><p> ShowErrMsg.Text = "數(shù)據(jù)庫中已經(jīng)存在該教師信息";</p><p><b> break;</b></p><
133、;p><b> }</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> IsNew = true;</p><p> C
134、hangeMsgbtn.Enabled = false;</p><p> ClearMsg();</p><p><b> }</b></p><p><b> }</b></p><p> private void ClearMsg()</p><p><b
135、> {</b></p><p> TechNametxt.Text = "";</p><p> TechNOtxt.Text = "";</p><p><b> }</b></p><p> private void TechMsgDiv_CellC
136、lick(object sender, DataGridViewCellEventArgs e)</p><p><b> {</b></p><p> if (e.RowIndex < 0)</p><p><b> {</b></p><p><b> return;&l
137、t;/b></p><p><b> }</b></p><p> // MessageBox.Show(e.ColumnIndex+"");</p><p> switch(e.ColumnIndex)</p><p><b> {</b></p>
138、<p> case 0: //編輯事件</p><p> Edit(e.RowIndex);</p><p><b> break;</b></p><p> case 1: //添加課程事件</p><p> AddCourse(TechMsgDiv.Rows[e.RowIndex].Cells[3
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)結構課程設計報告---學生學籍管理系統(tǒng)
- 數(shù)據(jù)結構-課程設計--學生管理系統(tǒng)
- 數(shù)據(jù)結構課程設計報告--學生成績管理系統(tǒng)
- 數(shù)據(jù)結構課程設計報告---學生成績管理系統(tǒng)
- 數(shù)據(jù)結構課程設計報告
- 數(shù)據(jù)結構課程設計報告
- 數(shù)據(jù)結構課程設計報告
- 數(shù)據(jù)結構課程設計報告
- 數(shù)據(jù)結構課程設計報告
- 數(shù)據(jù)結構課程設計報告
- 數(shù)據(jù)結構課程設計報告
- 數(shù)據(jù)結構課程設計報告
- 數(shù)據(jù)結構課程設計報告
- 《數(shù)據(jù)結構》課程設計報告
- 數(shù)據(jù)結構課程設計報告
- 數(shù)據(jù)結構課程設計--學生籍貫管理系統(tǒng)
- 數(shù)據(jù)結構課程設計--學生信息系統(tǒng)
- 數(shù)據(jù)結構課程設計--數(shù)據(jù)結構課程設計----huffman編碼
- 數(shù)據(jù)結構課程設計報告-學校導游系統(tǒng)
- 數(shù)據(jù)結構課程設計報告--車庫管理系統(tǒng)
評論
0/150
提交評論