數(shù)據(jù)庫課程設計--學生選課成績管理系統(tǒng)_第1頁
已閱讀1頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  《數(shù)據(jù)庫系統(tǒng)概論》課程設計</p><p><b>  實驗報告書</b></p><p><b>  姓名:</b></p><p><b>  學號:</b></p><p><b>  專業(yè):軟件工程</b></p>

2、<p><b>  班級:軟093班</b></p><p><b>  學院:計算機</b></p><p><b>  一 概述</b></p><p>  1.1.1 問題的提出 </p><p>  隨著科技的發(fā)展,基本上所有的具有一定數(shù)量數(shù)據(jù)的機構都開始

3、使用計算機數(shù)據(jù)庫來做管理。幾乎所有學校也都已經(jīng)在使用計算機管理數(shù)據(jù)的機制,大大減少了學校學生成績管理的工作量。系統(tǒng)概述:通過對學校日常教學管理中的課程、選課、學生、教師、成績等相關內容進行分析,完成具有學生管理、成績管理、課程管理等相關功能的小型數(shù)據(jù)庫管理應用系統(tǒng)?;疽螅和瓿蓪W生、班級、課程表的維護。 完成成績表的維護、瀏覽查找 。 按班級、按課程計算平均成績、最高成績、最低成績、及格率。統(tǒng)計某學生、某學期的所有課程的平均成績。 完

4、成用戶管理功能。 完成數(shù)據(jù)備份與恢復功能,</p><p>  1.1.2 本課題的意義</p><p>  通過該課程設計,可以達到把數(shù)據(jù)庫理論知識更加的鞏固加深,加強動手能力與實踐能力,學以致用,與現(xiàn)實生活中的應用充分的結合起來。</p><p><b>  1.2設計環(huán)境</b></p><p>  ① 

5、; Oracle 11G</p><p> ?、?#160;   C# .net平臺</p><p><b>  二 需求分析</b></p><p>  2.1 系統(tǒng)功能要求設計</p><p>  此系統(tǒng)實現(xiàn)如下系統(tǒng)功能:</p><p> ?。?)使得

6、學生的成績管理工作更加清晰、條理化、自動化。</p><p> ?。?)通過用戶名和密碼登錄系統(tǒng),查詢課程基本資料,學生所選課程成績,修改用戶密碼等功能。 容易地完成學生信息的查詢操作。</p><p>  (3) 設計人機友好界面,功能安排合理,操作使用方便,并且進一步考慮系統(tǒng)在安全性,完整性,并發(fā)控制,備份和恢復等方面的功能要求。</p><p>  2.2 系

7、統(tǒng)模塊設計</p><p>  成績管理系統(tǒng)大體可以分成二大模塊如, 一是學生的基本信息模塊,里面應該包含學生的各方面的基本信息;再者便是課程管理模塊, 在該模塊中應該包含有對學生成績信息的查詢和處理,如平均成績、最好成績、最差成績以及不及格學生的統(tǒng)計等功能模塊;再其次還有教師、課程等相關信息的模塊; </p><p><b>  2.3 數(shù)據(jù)字典</b></p

8、><p>  數(shù)據(jù)項是數(shù)據(jù)庫的關系中不可再分的數(shù)據(jù)單位,下表分別列出了數(shù)據(jù)的名稱、數(shù)據(jù)類型、長度、取值能否為空。利用SQL Server 2000建立“學生選課”數(shù)據(jù)庫,其基本表清單及表結構描述如下:</p><p><b>  數(shù)據(jù)庫中用到的表:</b></p><p>  Student基本情況數(shù)據(jù)表,結構如下:</p><

9、p>  Teach基本情況數(shù)據(jù)表,結構如下</p><p>  Course數(shù)據(jù)表,結構如下:</p><p>  Stu_cour情況數(shù)據(jù)表,結構如下:</p><p>  Score情況數(shù)據(jù)表,結構如下:</p><p><b>  三 概念模型設計</b></p><p>  由需求分

10、析的結果可知,本系統(tǒng)設計的實體包括:</p><p>  (1)學生基本信息:學號,姓名,學院,班級,年齡,性別。</p><p>  (2)課程基本信息: 課程名,課程號,學時。</p><p> ?。?)教師基本信息:教師號,教師姓名,職稱,年齡,性別,學院</p><p> ?。?)學院基本信息:學院名、學院號、院長姓名</p&g

11、t;<p>  這些實體間的聯(lián)系包括:</p><p>  每位學生可以學習多門課程,每門課程可供多位學生學習。</p><p>  每門課可以由多個老師教,每個老師可以教多門課程</p><p>  學生每選一門課就可以得到一個成績,不選此課就不能取得該課程成績</p><p>  由上述分析可得到系統(tǒng)的E—R圖:</p

12、><p>  四 邏輯和物理結構設計</p><p>  4.1由系統(tǒng)E—R圖轉化而得到的關系模式如下:</p><p>  (1)學生(學號,姓名,性別,年齡,學院,班級),其主關鍵字為學號;</p><p> ?。?)課程(課程名,課程號,學時),其中主關鍵字為課程號;</p><p> ?。?)教師(教師號,教師姓名

13、,職稱,年齡,性別,學院,所授課程號)</p><p> ?。?)選課(課程號,學號)其中主關鍵字為學號和課程號</p><p> ?。?)成績(課程號,學號,分數(shù))其中主關鍵字為學號和課程號。</p><p>  4.2 確定關系模型的存取方法</p><p>  在將概念模型轉換成物理模型之后,我們可以對物理模型進行設計,雙擊物理模型的關

14、系,可以對該關系的名稱、注釋等信息進行查詢。可對該關系的屬性列進行設計,可分別設置其名稱、碼、數(shù)據(jù)類型以及主碼、是否為空等。在實際設計中最常用的存取方法是索引發(fā),使用索引可以大大減少數(shù)據(jù)的查詢時間,在建立索引時應遵循:在經(jīng)常需要搜索的列上建立索引;  在主關鍵字上建立索引;在經(jīng)常用于連接的列上建立索引,即在外鍵上建立索引;在經(jīng)常需要根據(jù)范圍進行搜索的列上創(chuàng)建索引,因為索引已經(jīng)排序,其指定的范圍是連續(xù)的等規(guī)則。才能充分利用索引的

15、作用避免因索引引起的負面作用。</p><p>  4.3 確定數(shù)據(jù)庫的存儲結構</p><p>  確定數(shù)據(jù)庫的存儲結構主要指確定數(shù)據(jù)的存放位置和存儲結構,包括確定關系、索引、日志、備份等的存儲安排及存儲結構,以及確定系統(tǒng)存儲參數(shù)的配置。因為該成績管理系統(tǒng)的數(shù)據(jù)量小,,所以我們只用把數(shù)據(jù)存儲在使用的電腦硬盤上,不用作更多的安排。</p><p>  (1)創(chuàng)建學生

16、基本信息表:</p><p>  CREATE TABLE Student (</p><p>  SNO CHAR(5) ,</p><p>  SNAME CHAR(10) NOT NULL,</p><p>  SDEPT CHAR(2) NOT NULL,</p><p>  SCLASS CHAR(2) NO

17、T NULL,</p><p>  SAGE NUMBER(2),</p><p>  SSEX CHAR(2),</p><p>  CONSTRAINT SNO_PK PRIMARY KEY(SNO));</p><p>  2,創(chuàng)建表Course</p><p>  CREATE TABLE Course(<

18、;/p><p>  CNO CHAR(3),</p><p>  CNAME VARCHAR2(16) ,</p><p>  CTIME NUMBER(3),</p><p>  CONSTRAINT CNO_PK PRIMARY KEY(CNO)</p><p><b>  )</b></p

19、><p>  3,創(chuàng)建表Teach </p><p>  CREATE TABLE Teach(</p><p>  TNO VARCHAR(6),</p><p>  TNAME VARCHAR(8),</p><p>  TSEX CHAR(2),</p><p>  CNO CHAR(3),&

20、lt;/p><p>  TAGE NUMBER(2),</p><p>  TDEPT CHAR(2),</p><p>  CONSTRAINT TT_PK PRIMARY KEY(TNO),</p><p>  CONSTRAINT CNO_FK FOREIGN KEY(CNO) REFERENCES Course(CNO)</p>

21、;<p><b>  )</b></p><p>  4,創(chuàng)建表Stu_cno</p><p>  CREATE TABLE Score(</p><p>  SNO CHAR(5),</p><p>  CNO CHAR(3),</p><p>  CONSTRAINT SC_PK

22、 PRIMARY KEY(SNO,CNO),</p><p>  CONSTRAINT SNO_FK FOREIGN KEY(SNO) REFERENCES Student(SNO),</p><p>  CONSTRAINT CNOM_FK FOREIGN KEY(CNO) REFERENCES Course(CNO)</p><p><b>  )&l

23、t;/b></p><p><b>  5.創(chuàng)建成績表</b></p><p>  CREATE TABLE Score(</p><p>  SNO CHAR(5),</p><p>  CNO CHAR(3),</p><p>  SCORE NUMBER(5,2),</p>

24、<p>  CONSTRAINT SC_PK PRIMARY KEY(SNO,CNO),</p><p>  CONSTRAINT SNO_FK FOREIGN KEY(SNO) REFERENCES Student(SNO),</p><p>  CONSTRAINT CNOM_FK FOREIGN KEY(CNO) REFERENCES Course(CNO)</p

25、><p>  CONSTRAINT Score_FK FOREIGN KEY(SNO,CNO) REFERENCES Stu_cno(SNO,CNO)</p><p><b>  )</b></p><p><b>  二、插入數(shù)據(jù)</b></p><p><b>  1,Student<

26、;/b></p><p>  INSERT INTO Student VALUES('96001','馬小燕','CS','01',21,'女');</p><p>  INSERT INTO Student VALUES('96002','黎明','CS'

27、,'01',18,'男');</p><p>  INSERT INTO Student VALUES('96003','劉東明','MA','01',18,'男');</p><p>  INSERT INTO Student VALUES('96004',&#

28、39;趙志勇','IS','02',20,'男');</p><p>  INSERT INTO Student VALUES('97001','馬蓉','MA','02',19,'女');</p><p>  INSERT INTO Student VA

29、LUES('97002','李成功','CS','01',20,'男');</p><p>  INSERT INTO Student VALUES('97003','黎明','IS','03',19,'女');</p><p> 

30、 INSERT INTO Student VALUES('97004','李麗','CS','02',19,'女');</p><p>  INSERT INTO Student VALUES('96005','司馬志明','CS','02',18,'男'

31、);</p><p><b>  2,Course</b></p><p>  INSERT INTO Course VALUES('001','數(shù)學分析',144);</p><p>  INSERT INTO Course VALUES('002','普通物理',144);&l

32、t;/p><p>  INSERT INTO Course VALUES('003','微機原理',72);</p><p>  INSERT INTO Course VALUES('004','數(shù)據(jù)結構',72);</p><p>  INSERT INTO Course VALUES('005&

33、#39;,'操作系統(tǒng)',64);</p><p>  INSERT INTO Course VALUES('006','數(shù)據(jù)庫原理',64);</p><p>  INSERT INTO Course VALUES('007','DB_Design',48);</p><p>  INS

34、ERT INTO Course VALUES('008','程序設計',56);</p><p><b>  3,Teach</b></p><p>  INSERT INTO Teach VALUES('9401','王成鋼','男','004',35,'CS&#

35、39;);</p><p>  INSERT INTO Teach VALUES('9402','李正科','男','003',40,'CS');</p><p>  INSERT INTO Teach VALUES('9403','嚴敏','女','00

36、1',33,'MA');</p><p>  INSERT INTO Teach VALUES('9404','趙高','男','004',28,'IS');</p><p>  INSERT INTO Teach VALUES('9405','李正科',

37、'男','003',32,'MA');</p><p>  INSERT INTO Teach VALUES('9406','李玉蘭','女','006',43,'CS');</p><p>  INSERT INTO Teach VALUES('9407

38、','王成鋼','男','004',49,'IS');</p><p>  INSERT INTO Teach VALUES('9408','馬悅','女','008',35,'CS');</p><p>  INSERT INTO Tea

39、ch VALUES('9409','王成鋼','男','007',48,'CS');</p><p><b>  4,Score</b></p><p>  INSERT INTO Score VALUES('96001','001',77.5);</

40、p><p>  INSERT INTO Score VALUES('96001','003',89);</p><p>  INSERT INTO Score VALUES('96001','004',86);</p><p>  INSERT INTO Score VALUES('96001

41、9;,'005',82);</p><p>  INSERT INTO Score VALUES('96002','001',88);</p><p>  INSERT INTO Score VALUES('96002','003',92.5);</p><p>  INSERT INT

42、O Score VALUES('96002','006',90);</p><p>  INSERT INTO Score VALUES('96005','004',92);</p><p>  INSERT INTO Score VALUES('96005','005',90);</p&

43、gt;<p>  INSERT INTO Score VALUES('96005','006',89);</p><p>  INSERT INTO Score VALUES('96005','007',76);</p><p>  INSERT INTO Score VALUES('96003'

44、,'001',69);</p><p>  INSERT INTO Score VALUES('97001','001',96);</p><p>  INSERT INTO Score VALUES('97001','008',95);</p><p>  INSERT INTO Sc

45、ore VALUES('96004','001',87);</p><p>  INSERT INTO Score VALUES('96003','003',91);</p><p>  INSERT INTO Score VALUES('97002','003',91);</p>

46、<p>  INSERT INTO Score VALUES('97002','004','');</p><p>  INSERT INTO Score VALUES('97002','006',92);</p><p>  INSERT INTO Score VALUES('97004&

47、#39;,'005',90);</p><p>  INSERT INTO Score VALUES('97004','006',85);</p><p>  INSERT INTO Score VALUES('97004','008',75);</p><p>  INSERT INT

48、O Score VALUES('97003','001',59);</p><p>  INSERT INTO Score VALUES('97003','003',58)</p><p>  五 數(shù)據(jù)庫的實施與維護</p><p>  5.1 數(shù)據(jù)庫的實施:</p><p> 

49、 此階段主要任務包括創(chuàng)建數(shù)據(jù)庫,加載初始數(shù)據(jù),數(shù)據(jù)庫試運行,數(shù)據(jù)庫的安全性和完整性控制數(shù)據(jù)庫的備份與恢復,數(shù)據(jù)庫性能的監(jiān)督分析和改僅,數(shù)據(jù)庫的重組和重構等。首先在數(shù)據(jù)庫中建立一個學生成績管理系統(tǒng)數(shù)據(jù)庫,然后新建一個數(shù)據(jù)源。</p><p>  部分截圖和代碼如下:</p><p><b>  學生表的增刪改查:</b></p><p><

50、b>  增加學生信息</b></p><p><b>  \</b></p><p><b>  更新學生信息</b></p><p><b>  刪除學生信息</b></p><p>  學生表增加、刪除、修改代碼(部分)</p><p&

51、gt;  using System;</p><p>  using System.Collections.Generic;</p><p>  using System.ComponentModel;</p><p>  using System.Data;</p><p>  using System.Data.OracleClient;

52、</p><p>  using System.Drawing;</p><p>  using System.Linq;</p><p>  using System.Text;</p><p>  using System.Windows.Forms;</p><p>  namespace MyProgram&l

53、t;/p><p><b>  {</b></p><p>  public partial class Form3 : Form</p><p><b>  {</b></p><p>  private string ConnectionString = "Data Source=ahut;

54、" +</p><p>  "User ID=Scott;Password=123456";</p><p>  private OracleConnection conn = null;</p><p>  private OracleDataAdapter DataAdapter = null;</p><p&g

55、t;  private DataSet dataset = null;</p><p>  // private OracleCommand command= null;</p><p>  public Form3()</p><p><b>  {</b></p><p>  InitializeComponent(

56、);</p><p><b>  }</b></p><p>  private void Form3_Load(object sender, EventArgs e)</p><p><b>  {</b></p><p>  conn = new OracleConnection(Connect

57、ionString);</p><p>  showData();</p><p><b>  }</b></p><p>  private void showData()</p><p><b>  {</b></p><p>  string tname = "

58、;";</p><p><b>  try</b></p><p><b>  {</b></p><p>  if (conn == null)</p><p>  conn.Open();</p><p>  DataAdapter = new OracleDa

59、taAdapter("select * from student", conn);</p><p>  dataset = new DataSet();</p><p>  DataAdapter.Fill(dataset);</p><p>  dataGridView1.DataSource = dataset;</p><

60、;p>  dataGridView1.DataMember = dataset.Tables[0].ToString();</p><p>  tname = dataset.Tables[0].ToString();</p><p>  //先清除所有綁定,然后再重新綁定</p><p>  textBox1.DataBindings.Clear();<

61、;/p><p>  textBox2.DataBindings.Clear();</p><p>  textBox3.DataBindings.Clear();</p><p>  textBox4.DataBindings.Clear();</p><p>  textBox5.DataBindings.Clear();</p>

62、<p>  textBox6.DataBindings.Clear();</p><p>  textBox1.DataBindings.Add("Text", dataset, "table.sno");</p><p>  textBox2.DataBindings.Add("Text", dataset, &qu

63、ot;table.sname");</p><p>  textBox3.DataBindings.Add("Text", dataset, "table.sdept");</p><p>  textBox4.DataBindings.Add("Text", dataset, "table.sclass&qu

64、ot;);</p><p>  textBox5.DataBindings.Add("Text", dataset, "table.sage");</p><p>  textBox6.DataBindings.Add("Text", dataset, "table.ssex");</p><

65、;p><b>  }</b></p><p>  catch (Exception ex)</p><p><b>  {</b></p><p>  MessageBox.Show(ex.ToString());</p><p><b>  }</b></p>

66、;<p><b>  }</b></p><p>  private void button1_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  string strOracle = "insert into studen

67、t values(";</p><p>  strOracle += "'" + textBox1.Text;//學號</p><p>  strOracle += "','" + textBox2.Text;//姓名</p><p>  strOracle += "',&#

68、39;" + textBox3.Text;//學院</p><p>  strOracle += "','" + textBox4.Text;//班級</p><p>  strOracle += "'," + textBox5.Text;//年齡</p><p>  strOracle +=

69、 ",'" + textBox6.Text + "')";//性別</p><p>  OracleCommand command = null;</p><p><b>  try</b></p><p><b>  {</b></p><p&g

70、t;  command = new OracleCommand();</p><p>  command.Connection = conn;</p><p>  command.CommandText = strOracle;</p><p>  conn.Open();</p><p>  int n = command.ExecuteN

71、onQuery();//執(zhí)行Insert語句</p><p>  if (n > 0)</p><p>  MessageBox.Show("成功插入數(shù)據(jù)!");</p><p><b>  }</b></p><p>  catch (Exception ex)</p><

72、p><b>  {</b></p><p>  MessageBox.Show(ex.Message);</p><p><b>  }</b></p><p><b>  finally</b></p><p><b>  {</b></p&

73、gt;<p>  if (conn != null)</p><p>  conn.Close();</p><p>  command.Dispose();</p><p><b>  }</b></p><p>  showData();</p><p><b>  }

74、</b></p><p>  private void button2_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  Form7 f7 = new Form7();</p><p>  f7.Show();</p>

75、<p><b>  }</b></p><p>  private void button3_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p><b>  try</b></p><p>&l

76、t;b>  {</b></p><p>  OracleCommandBuilder builder = new OracleCommandBuilder(DataAdapter);</p><p>  int n = DataAdapter.Update(dataset, "Table");</p><p>  Message

77、Box.Show("成功更新數(shù)據(jù),有" + n.ToString() + "行受到更新!");</p><p><b>  }</b></p><p><b>  catch</b></p><p><b>  {</b></p><p>

78、;  MessageBox.Show("更新不成功!");</p><p><b>  }</b></p><p><b>  }</b></p><p>  private void button4_Click(object sender, EventArgs e)</p><p&

79、gt;<b>  {</b></p><p>  string curNo = "";</p><p>  if (dataGridView1.Rows.Count <= 1)</p><p><b>  return;</b></p><p>  int index =

80、dataGridView1.CurrentRow.Index;</p><p>  dataGridView1.Rows[index].Selected = true;</p><p>  curNo = this.dataGridView1.Rows[index].Cells[0].Value.ToString();</p><p>  OracleCommand

81、 command = null;</p><p>  string strOracle = "delete from student where sno='" + curNo + "'";</p><p><b>  try</b></p><p><b>  {</b&g

82、t;</p><p>  command = new OracleCommand();</p><p>  command.Connection = conn;</p><p>  command.CommandText = strOracle;</p><p>  conn.Open();</p><p>  int

83、 n = command.ExecuteNonQuery();</p><p><b>  }</b></p><p>  catch (Exception ex)</p><p><b>  {</b></p><p>  MessageBox.Show(ex.Message);</p>

84、;<p><b>  }</b></p><p><b>  finally</b></p><p><b>  {</b></p><p>  if (conn != null)</p><p>  conn.Close();</p><p&

85、gt;  command.Dispose();</p><p><b>  }</b></p><p>  showData();</p><p>  MessageBox.Show("成功刪除一行!");</p><p><b>  }</b></p><p

86、><b>  }</b></p><p><b>  }</b></p><p>  選擇檢索條件(學生表查詢)</p><p><b>  學生表查詢代碼</b></p><p>  using System;</p><p>  using S

87、ystem.Collections.Generic;</p><p>  using System.ComponentModel;</p><p>  using System.Data;</p><p>  using System.Data.OracleClient;</p><p>  using System.Drawing;<

88、/p><p>  using System.Linq;</p><p>  using System.Text;</p><p>  using System.Windows.Forms;</p><p>  namespace MyProgram</p><p><b>  {</b></p&

89、gt;<p>  public partial class Form7 : Form</p><p><b>  {</b></p><p>  private string ConnectionString = "Data Source=ahut;" +</p><p>  "User ID=Sco

90、tt;Password=123456";</p><p>  private OracleConnection conn = null;</p><p>  private OracleDataAdapter DataAdapter = null;</p><p>  private DataSet dataset = null;</p>&

91、lt;p>  private OracleCommand cmd = null;</p><p>  public Form7()</p><p><b>  {</b></p><p>  InitializeComponent();</p><p><b>  }</b></p>

92、;<p>  private void Form7_Load(object sender, EventArgs e)</p><p><b>  {</b></p><p><b>  try</b></p><p><b>  {</b></p><p>  c

93、onn = new OracleConnection(ConnectionString);</p><p>  conn.Open();</p><p>  DataAdapter = new OracleDataAdapter();</p><p>  dataset = new DataSet();</p><p>  cmd = new

94、 OracleCommand();</p><p>  cmd.Connection = conn;</p><p>  cmd.CommandText = "SELECT * from student";</p><p>  DataAdapter.SelectCommand = cmd;</p><p>  DataA

95、dapter.Fill(dataset, "t1");</p><p>  comboBox1.Items.Clear();</p><p>  for (int i = 0; i < dataset.Tables["t1"].Columns.Count; i++)</p><p>  comboBox1.Items.A

96、dd(dataset.Tables["t1"].Columns[i].ToString());</p><p>  dataset.Clear();</p><p>  comboBox2.Items.Add("=");</p><p>  comboBox2.Items.Add("<");</

97、p><p>  comboBox2.Items.Add(">");</p><p>  comboBox2.Items.Add("like");</p><p><b>  }</b></p><p>  catch (Exception ex)</p><p

98、><b>  {</b></p><p>  MessageBox.Show(ex.Message);</p><p><b>  }</b></p><p><b>  }</b></p><p>  private void button1_Click(object

99、sender, EventArgs e)</p><p><b>  {</b></p><p>  string tb1 = textBox1.Text;</p><p>  if (comboBox2.Text == "like")</p><p>  tb1 = "%" +

100、textBox1.Text + "%";</p><p>  string strOracle = "select * from student where";</p><p>  strOracle += " " + comboBox1.Text + " " + comboBox2.Text + "

101、 " + "'" + tb1 + "'";</p><p><b>  try</b></p><p><b>  {</b></p><p>  cmd.CommandText = strOracle;</p><p>  Data

102、Adapter.SelectCommand = cmd;</p><p>  dataset.Clear();</p><p>  DataAdapter.Fill(dataset, "t1");</p><p>  dataGridView1.DataSource = dataset;</p><p>  dataGri

103、dView1.DataMember = "t1";</p><p><b>  }</b></p><p><b>  catch</b></p><p><b>  {</b></p><p>  MessageBox.Show("請正確設置檢索

104、條件!");</p><p><b>  }</b></p><p><b>  finally</b></p><p><b>  {</b></p><p>  if (conn != null)</p><p>  conn.Close(

105、);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  教師表信息</b>

106、;</p><p><b>  成績表信息</b></p><p>  學生成績檢索(單表操作)</p><p>  按照課程檢索最高分、最低分和平均分</p><p>  按照課程檢索選課總數(shù)</p><p>  按照個人檢索最高分、最低分和平均分</p><p>  按

107、照班級檢索最高分、最低分和平均分</p><p>  按照班級檢索選課總數(shù)</p><p><b>  成績表查詢代碼</b></p><p>  #include "stdafx.h"</p><p>  using System;</p><p>  using Syste

108、m.Collections.Generic;</p><p>  using System.ComponentModel;</p><p>  using System.Data;</p><p>  using System.Data.OracleClient;</p><p>  using System.Drawing;</p&g

109、t;<p>  using System.Linq;</p><p>  using System.Text;</p><p>  using System.Windows.Forms;</p><p>  namespace MyProgram</p><p><b>  {</b></p>

110、<p>  public partial class Form9 : Form</p><p><b>  {</b></p><p>  private string ConnectionString = "Data Source=ahut;" +</p><p>  "User ID=Scott;P

111、assword=123456";</p><p>  private OracleConnection conn = null;</p><p>  private OracleDataAdapter DataAdapter = null;</p><p>  private DataSet dataset = null;</p><p

112、>  private OracleCommand cmd = null;</p><p>  public Form9()</p><p><b>  {</b></p><p>  InitializeComponent();</p><p><b>  }</b></p>&

113、lt;p>  private void button1_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  string tb1 = textBox1.Text;</p><p>  if (comboBox2.Text == "like")&

114、lt;/p><p>  tb1 = "%" + textBox1.Text + "%";</p><p>  string strOracle = "select * from score where";</p><p>  strOracle += " " + comboBox1.Text

115、 + " " + comboBox2.Text + " " + "'" + tb1 + "'";</p><p><b>  try</b></p><p><b>  {</b></p><p>  cmd.CommandTe

116、xt = strOracle;</p><p>  DataAdapter.SelectCommand = cmd;</p><p>  dataset.Clear();</p><p>  DataAdapter.Fill(dataset, "t1");</p><p>  dataGridView1.DataSourc

117、e = dataset;</p><p>  dataGridView1.DataMember = "t1";</p><p><b>  }</b></p><p><b>  catch</b></p><p><b>  {</b></p>

118、<p>  MessageBox.Show("請正確設置檢索條件!");</p><p><b>  }</b></p><p><b>  finally</b></p><p><b>  {</b></p><p>  if (conn

119、!= null)</p><p>  conn.Close();</p><p><b>  }</b></p><p><b>  }</b></p><p>  private void Form9_Load(object sender, EventArgs e)</p><

120、p><b>  {</b></p><p><b>  try</b></p><p><b>  {</b></p><p>  conn = new OracleConnection(ConnectionString);</p><p>  conn.Open();&

121、lt;/p><p>  DataAdapter = new OracleDataAdapter();</p><p>  dataset = new DataSet();</p><p>  cmd = new OracleCommand();</p><p>  cmd.Connection = conn;</p><p&g

122、t;  cmd.CommandText = "SELECT * from score";</p><p>  DataAdapter.SelectCommand = cmd;</p><p>  DataAdapter.Fill(dataset, "t1");</p><p>  comboBox1.Items.Clear()

123、;</p><p>  for (int i = 0; i < dataset.Tables["t1"].Columns.Count; i++)</p><p>  comboBox1.Items.Add(dataset.Tables["t1"].Columns[i].ToString());</p><p>  dat

124、aset.Clear();</p><p>  comboBox2.Items.Add("=");</p><p>  comboBox2.Items.Add("<");</p><p>  comboBox2.Items.Add(">");</p><p>  comb

125、oBox2.Items.Add("like");</p><p>  comboBox3.Items.Add("Max(score)");</p><p>  comboBox3.Items.Add("Min(score)");</p><p>  comboBox3.Items.Add("avg

126、(score)");</p><p>  comboBox4.Items.Add("001");</p><p>  comboBox4.Items.Add("002");</p><p>  comboBox4.Items.Add("003");</p><p>  co

127、mboBox4.Items.Add("004");</p><p>  comboBox4.Items.Add("005");</p><p>  comboBox4.Items.Add("006");</p><p>  comboBox4.Items.Add("007");</

128、p><p>  comboBox4.Items.Add("008");</p><p>  comboBox5.Items.Add("Max(score)");</p><p>  comboBox5.Items.Add("Min(score)");</p><p>  comboBox

129、5.Items.Add("avg(score)");</p><p>  comboBox6.Items.Add("CS");</p><p>  comboBox6.Items.Add("MA");</p><p>  comboBox6.Items.Add("IS");</p&

130、gt;<p>  comboBox7.Items.Add("01");</p><p>  comboBox7.Items.Add("02");</p><p>  comboBox7.Items.Add("03");</p><p>  comboBox8.Items.Add("M

131、ax(score)");</p><p>  comboBox8.Items.Add("Min(score)");</p><p>  comboBox8.Items.Add("avg(score)");</p><p>  comboBox9.Items.Add("96001");</p&

132、gt;<p>  comboBox9.Items.Add("96002");</p><p>  comboBox9.Items.Add("96003");</p><p>  comboBox9.Items.Add("96004");</p><p>  comboBox9.Items.Ad

133、d("96005");</p><p>  comboBox9.Items.Add("97001");</p><p>  comboBox9.Items.Add("97002");</p><p>  comboBox9.Items.Add("97003");</p>&

134、lt;p>  comboBox9.Items.Add("97004");</p><p><b>  }</b></p><p>  catch (Exception ex)</p><p><b>  {</b></p><p>  MessageBox.Show(ex.

135、Message);</p><p><b>  }</b></p><p><b>  }</b></p><p>  private void button2_Click(object sender, EventArgs e)</p><p><b>  {</b></

136、p><p>  string strOracle = "select Max(score),Min(score),avg(score) ";</p><p>  strOracle += " from score where cno ='" + comboBox4.Text + "'";</p><

137、;p><b>  try</b></p><p><b>  {</b></p><p>  cmd.CommandText = strOracle;</p><p>  DataAdapter.SelectCommand = cmd;</p><p>  dataset.Clear();&l

138、t;/p><p>  DataAdapter.Fill(dataset, "t1");</p><p>  dataGridView1.DataSource = dataset;</p><p>  dataGridView1.DataMember = "t1";</p><p><b>  }&

139、lt;/b></p><p><b>  catch</b></p><p><b>  {</b></p><p>  MessageBox.Show("請正確設置檢索條件!");</p><p><b>  }</b></p><

140、;p><b>  finally</b></p><p><b>  {</b></p><p>  if (conn != null)</p><p>  conn.Close();</p><p><b>  }</b></p><p><

141、;b>  }</b></p><p>  private void button4_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  string strOracle = "select Max(score),Min(score),avg(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論