數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告---學(xué)生選課系統(tǒng)_第1頁(yè)
已閱讀1頁(yè),還剩29頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  《數(shù)據(jù)庫(kù)系統(tǒng)原理課程設(shè)計(jì)報(bào)告》</p><p><b>  學(xué)生選課系統(tǒng)</b></p><p><b>  一.引言</b></p><p><b>  1.1 問(wèn)題描述</b></p><p><b>  系統(tǒng)功能的基本要求</b>

2、;</p><p>  學(xué)生在校期間除了要修一些必修課之外,還要選修一些課程學(xué)習(xí)。這就需要進(jìn)行課程選擇,所以我們?cè)囋O(shè)計(jì)一個(gè)學(xué)生選課系統(tǒng),這可以既便于學(xué)生進(jìn)行老師和課程選擇,也方便老師查看選擇自己所教課程的情況,管理員既可以對(duì)教師帶課進(jìn)行安排也可以對(duì)課程進(jìn)行安排。</p><p>  1.2開(kāi)發(fā)環(huán)境和運(yùn)行環(huán)境</p><p>  學(xué)生選課系統(tǒng)這運(yùn)用了當(dāng)前最流行的SQL

3、 SERVER2005和VS2010運(yùn)行和開(kāi)發(fā)的。</p><p>  庫(kù)、基本表的建立和修改:在SQL-SERVER 環(huán)境下用CREATE TABLE 建立以及庫(kù)中基本表。</p><p>  數(shù)據(jù)加載:用手工錄入實(shí)現(xiàn)基本表的數(shù)據(jù)加載。</p><p>  單表查詢以及多表查詢:在建立的基本表中使用select 基本格式和聚集函數(shù);設(shè)計(jì)合適的視圖,實(shí)現(xiàn)多表查詢。&

4、lt;/p><p>  單表刪除以及多表刪除:在建立的基本表中使用delete基本格式和關(guān)聯(lián)函數(shù),實(shí)現(xiàn)多表刪除。</p><p>  單表插入:在建立的基本表上使用insert 基本格式,實(shí)現(xiàn)表的插入。</p><p><b>  二.需求分析</b></p><p>  2.1 系統(tǒng)功能基本的要求</p>&

5、lt;p>  該系統(tǒng)中設(shè)置三個(gè)角色,管理員,教師和學(xué)生。</p><p>  每個(gè)用戶需要根據(jù)自己的用戶名、密碼以及角色登錄系統(tǒng)。</p><p>  管理員角色權(quán)限為:創(chuàng)建教師、學(xué)生用戶,填寫和修改用戶信息。錄入課程信息供學(xué)生選課時(shí)使用。</p><p>  教師角色權(quán)限為:登錄后只能看到自己所帶的選課情況,同時(shí)可以添加或修改自己所帶課程的學(xué)生成績(jī),教師無(wú)權(quán)

6、限修改其他老師所帶課程的學(xué)生成績(jī)。</p><p> ?。?)學(xué)生角色權(quán)限為:登錄后可以看到自己的選課情況,可以對(duì)學(xué)?,F(xiàn)有的課程進(jìn)行查詢,同時(shí)進(jìn)行選課或者是退課。</p><p>  2.2 安全與完整性要求:</p><p><b> ?。?)安全性要求</b></p><p>  a.系統(tǒng)應(yīng)設(shè)置訪問(wèn)用戶的標(biāo)識(shí)以鑒別是

7、否是合法用戶,并要求合法用戶設(shè)置其密碼,保證用戶身份不被盜用;</p><p>  b. 系統(tǒng)應(yīng)對(duì)不同的數(shù)據(jù)設(shè)置不同的訪問(wèn)級(jí)別,限制訪問(wèn)用戶可查詢和處理數(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)功能的設(shè)計(jì)</p><p>  要求能夠根據(jù)用戶登錄的不同角色查看和實(shí)現(xiàn)不同操作,學(xué)生角色可以查看可選課程和代課老師的信息,可以完成選擇課程;教師角色可以查看自己所帶課程并可以查看所選擇自己代課的學(xué)生信息并可以為其添加成績(jī);管理員角色可以添加或

9、學(xué)生、老師,院系和課程。</p><p><b>  三.E-R圖設(shè)計(jì)</b></p><p><b>  四.創(chuàng)建表的代碼</b></p><p><b>  4.1 學(xué)生表</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 學(xué)生選課表</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>  /*下面是關(guān)于數(shù)據(jù)庫(kù)操作例子的部分代碼,所有數(shù)據(jù)庫(kù)相關(guān)的增刪該查全部包含在代碼中,由于代碼太多這里只能列舉一部分*/</p><p>  // 下面是一個(gè)

24、關(guān)于數(shù)據(jù)庫(kù)管理先關(guān)的類</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 = "用戶信息不正確,請(qǐng)核查";</p><p><b>  break;</b></p><p>  case 1: //存在</p><p>  IsPass = true;</p><p>  UserNO = UserNOtxt.Text.

60、Trim();//記錄用戶帳號(hào)</p><p>  this.Close();</p><p><b>  break; </b></p><p>  case -1: //發(fā)生錯(cuò)誤</p><p>  MessageBox.Show("系統(tǒng)發(fā)生錯(cuò)誤,請(qǐng)聯(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 = "輸入項(xiàng)中不能為空";</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 = "輸入項(xiàng)中不能為空";</p><p>  temp = false;</p><p><b>  }</b></p><p>  switch (U

65、serTypeCBX.Text.Trim())</p><p><b>  { </b></p><p>  case "學(xué)生":</p><p>  UserType ="學(xué)生";</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 = "所有班級(jí)";</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)建學(xué)生信息成功</p><p>  StuManage_Load(null, null);</p><p>  StatusMsg.Text = "創(chuàng)建學(xué)

91、生成功";</p><p><b>  break;</b></p><p>  case 0: //創(chuàng)建學(xué)生信息失敗</p><p>  StatusMsg.Text = "學(xué)生信息創(chuàng)建失敗";</p><p><b>  break;</b></p>

92、<p>  case -1: //該學(xué)生信息已經(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 = ""; //學(xué)號(hào)</p><p>  AddNewStuNametxt.Text = "";//姓名</p><p>  AddNewStuClassCBX.SelectedIndex =0 ;//班級(jí)</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(); //學(xué)號(hào)</p><p>  AddNewStuNametxt.Text = StuMsgDGV.Rows[Rowindex].Cells[3].Valu

101、e.ToString();//姓名</p><p>  AddNewStuClassCBX.Text = StuMsgDGV.Rows[Rowindex].Cells[4].Value.ToString();//班級(jí)</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("確認(rèn)要?jiǎng)h除信息嗎?", "確認(rèn)信息", 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 = "刪除學(xué)生信息成功";</p>

106、;<p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  StatusMsg.Text="刪除學(xué)生信息失敗";</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 = ""; //學(xué)號(hào)</p><p>  AddNewStuNametxt.Text = "";//姓名</p><p>  AddNewStuClassCBX.SelectedIndex = 0;//班級(jí)</p><p>  AddNewStuSdeptCBX.Selec

112、tedIndex = 0;//院系</p><p>  AddNewStuMajorCBX.SelectedIndex = 0; //專業(yè)</p><p>  StatusMsg.Text = "更新學(xué)生信息成功";</p><p><b>  }</b></p><p><b>  els

113、e</b></p><p><b>  {</b></p><p>  StatusMsg.Text="更改學(xué)生信息失敗"; </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;//默認(rèn)當(dāng)前也是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ù)庫(kù)中已經(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. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論