2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  學(xué)生信息管理系統(tǒng)</b></p><p><b>  目 錄 </b></p><p>  1學(xué)生信息管理系統(tǒng)概述5</p><p>  1.1系統(tǒng)的任務(wù)5</p><p>  1.2系統(tǒng)的目標5</p><p>  2 系統(tǒng)具體需求分析

2、6</p><p><b>  2.1系統(tǒng)需求6</b></p><p><b>  2.2數(shù)據(jù)字典6</b></p><p>  2.3數(shù)據(jù)流圖10</p><p>  3 概念結(jié)構(gòu)設(shè)計11</p><p>  4.邏輯結(jié)構(gòu)設(shè)計14</p><

3、p>  5.物理結(jié)構(gòu)設(shè)計15</p><p><b>  表匯總15</b></p><p><b>  表A—F16</b></p><p>  6.數(shù)據(jù)保護設(shè)計18</p><p>  6.1防止用戶直接操作數(shù)據(jù)庫的方法18</p><p>  6.2用戶

4、帳號密碼的加密方法18</p><p>  6.3角色與權(quán)限18</p><p>  7.運行管理與維護說明19</p><p>  8.SQL語句及部分關(guān)鍵Java語句20</p><p>  9.心得與體會29</p><p>  10.參考資料29</p><p>  計算

5、機與信息工程學(xué)院</p><p>  《數(shù)據(jù)庫應(yīng)用》 課程設(shè)計任務(wù)書</p><p><b>  需求分析:</b></p><p>  學(xué)生信息管理系統(tǒng)概述</p><p>  學(xué)生信息管理系統(tǒng)主要用來管理學(xué)生基本信息。本系統(tǒng)是一個簡單的學(xué)生信息管理系統(tǒng),系統(tǒng)管理的信息主要是學(xué)生基本信息、課程信息和學(xué)生選課信息。系統(tǒng)

6、的目的是有效地處理這些信息,同時為用戶提供信息檢索、信息修改和保護功能。</p><p><b>  系統(tǒng)的任務(wù)</b></p><p>  學(xué)生信息管理系統(tǒng)是學(xué)校有效管理學(xué)生的重要工具,它的任務(wù)主要有以下幾項:</p><p>  學(xué)生基本信息管理,主要負責(zé)管理學(xué)生基本信息。</p><p>  學(xué)生選課信息管理,主要

7、負責(zé)管理課程信息和學(xué)生選課信息。</p><p>  信息 檢 索 管 理,主要負責(zé)對學(xué)生各類信息進行查詢和統(tǒng)計。</p><p>  信息 修 改 管 理,主要負責(zé)學(xué)生信息的增加,刪除,更改。</p><p>  系 統(tǒng) 管 理,主要負責(zé)管理用戶信息和用戶登陸,以及配置系統(tǒng)參數(shù)。</p><p><b>  系統(tǒng)的目標&l

8、t;/b></p><p>  學(xué)生信息管理系統(tǒng)是學(xué)校管理學(xué)生的有效方法,也是學(xué)生學(xué)生查詢信息的有效途徑。一個好的學(xué)生信息管理系統(tǒng)應(yīng)具有以下這些目標:</p><p>  能夠管理所有學(xué)生的信息。</p><p>  能夠快速地進行學(xué)生的各類信息查詢,包括基本信息和選課信息的查詢。</p><p>  減少學(xué)校管理學(xué)生的工作任務(wù),降低管

9、理成本。</p><p><b>  2 系統(tǒng)具體需求</b></p><p><b>  2.1系統(tǒng)需求 </b></p><p>  根據(jù)以上對學(xué)生信息管理系統(tǒng)的任務(wù)和目標的分析,藍天大學(xué)學(xué)生信息管理系統(tǒng)的具體需求如下:</p><p>  (1)學(xué)生信息:學(xué)號、姓名、性別、出生日期、電話、部門

10、、民族、政治面貌、來源地、入學(xué)成績、備注。</p><p> ?。?)課程信息:課程號、課程名、先選課、學(xué)時、考核方式、學(xué)分。</p><p> ?。?)選課信息:學(xué)號、 課程號、成績。</p><p> ?。?)教師信息:工號、姓名、性別、職稱、學(xué)院。</p><p>  (5)授課信息:工號、課程號和授課效果。</p>&l

11、t;p>  (6)指導(dǎo)信息:工號、學(xué)號和成績。</p><p> ?。?)學(xué)生能查詢課程信息;自己的學(xué)生信息;自己的選課信息;自己選課的最高分、最低分、平均分、和總分。學(xué)生選課時,該學(xué)生必須是本校學(xué)生,課程必須是本校課程;一個學(xué)生可以選擇多門課程,多個學(xué)生可以選擇同一門課程。學(xué)生選指導(dǎo)老師時,學(xué)生必須是本校學(xué)生,教師必須是本校教師;一個學(xué)生只能選擇一個指導(dǎo)教師。</p><p>  

12、(8)教師只能查詢課程信息、本人的授課信息、本人授課的選課信息、本人的指導(dǎo)信息等。教師只能修改本人授課的選課成績、本人指導(dǎo)的成績等。教師授課時,課程必須使本校課程,教師必須是本校教師;一個教師可以講授多門課,多個教師可以講授一門課。教師指導(dǎo)學(xué)生時,學(xué)生必須使本校學(xué)生,教師必須是本校教師;一個教師可以指導(dǎo)多個學(xué)生。</p><p> ?。?)DBA擁有所有信息的所有權(quán)限。</p><p> 

13、 (10)滿足常規(guī)的完整性、安全性和數(shù)據(jù)備份能力。</p><p><b>  2.2數(shù)據(jù)字典</b></p><p>  根據(jù)系統(tǒng)需求分析,利用表格方式設(shè)計的數(shù)據(jù)字典如下:</p><p><b>  數(shù)據(jù)項</b></p><p>  數(shù)據(jù)字典的數(shù)據(jù)項如表所示:</p><p

14、><b>  數(shù)據(jù)結(jié)構(gòu)</b></p><p>  數(shù)據(jù)字典的數(shù)據(jù)結(jié)構(gòu)如表所示。</p><p><b>  數(shù)據(jù)流</b></p><p>  數(shù)據(jù)字典的數(shù)據(jù)流如表所示。</p><p><b>  數(shù)據(jù)存儲</b></p><p>  數(shù)據(jù)字典

15、的數(shù)據(jù)存儲如表所示。</p><p><b>  處理過程</b></p><p>  數(shù)據(jù)字典的處理過程如表所示。 </p><p><b>  3.數(shù)據(jù)流圖</b></p><p>  學(xué)生登記表 學(xué)生選課表

16、 教師登記表</p><p><b>  3 概念結(jié)構(gòu)設(shè)計</b></p><p>  .根據(jù)需求分析得到的具體要求,繪制E—R 圖如下。</p><p>  圖1-選課管理局部E-R圖</p><p>  圖2-教授管理局部E-R圖</p><p>  圖3-指導(dǎo)管理局部E-R圖</p&

17、gt;<p>  圖4-學(xué)生管理系統(tǒng)全局E-R圖</p><p><b>  4邏輯結(jié)構(gòu)設(shè)計 </b></p><p>  1)根據(jù)系統(tǒng)的概念結(jié)構(gòu),其邏輯結(jié)構(gòu)設(shè)計如下:</p><p>  學(xué)生(學(xué)號,姓名,性別,出生日期,電話,部門,民族,政治面貌,來源地,入學(xué)成績,備注)</p><p>  課程(課程

18、號,課程名,上課地點,學(xué)分,學(xué)時,考核方式)</p><p>  選課(學(xué)號,課程號,成績)</p><p>  2)根據(jù)系統(tǒng)的邏輯結(jié)構(gòu)和應(yīng)用需求,其外模式的視圖設(shè)計如下:</p><p>  學(xué)生視圖(學(xué)號,姓名,性別,年齡, 電話,部門,民族,政治面貌,來源地,入學(xué)成績,課程號,課程名,上課地點,學(xué)時,考核方式學(xué)分,成績,最高分、最低分、平均分,總學(xué)分 )<

19、;/p><p>  DBA選課視圖(學(xué)號,姓名,性別,年齡,電話,部門,民族,政治面貌,來源地,入學(xué)成績,課程號,課程名,上課地點,學(xué)時,考核方式,學(xué)分,成績)</p><p>  3) 根據(jù)上述的轉(zhuǎn)換結(jié)果,在對關(guān)系模式中數(shù)據(jù)進行規(guī)范化處理后,得到了符合第三范式的關(guān)系模式如下:</p><p>  學(xué)生:{學(xué)號、姓名、性別、年齡、電話、部門、民族、政治面貌、來源地、

20、入學(xué)成績、備注} </p><p>  課程:{課程號、課程名、上課地點、學(xué)時、考核方式、學(xué)分}</p><p>  選修:{學(xué)號、課程號、成績}</p><p><b>  4)滿足3NF:</b></p><p>  (1)學(xué)生表(Student)中的屬性有 學(xué)號(SNo),姓名(Sname),性別(Ssex),出生

21、日期(Sbirth),電話(Sphone),部門(Scoll),民族(Snation),政治面貌(Spaob),來源地(Sbirthplace-Sbplace),入學(xué)成績(Ssgrade-Ssg),備注(Sremarks-Srem)。</p><p>  Student(U1,F1)</p><p>  U1={SNo,Sname,SSex,Sbirth,Sphone,SColl,Snat

22、ion,Spaob,Sbp,Ssg,Srem}</p><p>  F1={SNo→(Sname.SSex,Sbirth,Sphone,SColl,Snation,Spaob,Sbplace,Ssg,Srem)}</p><p> ?。?)課程表(Course)中的屬性有 課程號(CNo),課程名(Cname),上課地點(Cclass),考核方式(Cexamsy),學(xué)時(Cperiod),

23、學(xué)分(Credit)。</p><p>  Course(U2,F2)</p><p>  U2={CNo,CName,Ctname,Cclass,Cexamsy,Cperiod,Credit}</p><p>  F2={CNo→(CName ,Cclass,Cexansy,Cperiod,Credit)}</p><p>  (3)選課表

24、(StudentCourse)中的屬性有學(xué)號(SNo),課程號(CNo),成績(Grade)。</p><p>  StudentCourse(U3,F3)</p><p>  U3={SNo,CNo,Grade}</p><p>  F3={(SNo,CNo)→Grade}</p><p>  4)教師表(Teacher)中的屬性有工號(T

25、No),教師姓名(TName),教師性別(Tsex),教師年齡(TAge),職稱(Title),教齡(SchAge),教師電話(Tphone),教師學(xué)院(TColl).</p><p>  Teacher(U4,F4)</p><p>  U4={TNo,TName,TSex,TAge,Title,SchAge,TPhone,TColl}</p><p>  F4=

26、{TNo→(TName,TSex,TAge,Title,SchAge,TPhone,TColl)}</p><p>  授課表(TeacherCourse)中的屬性有教師工號(TNo),課程號(CNo),教學(xué)效果(TGrade).</p><p>  TeacherCourse(U5,F5)</p><p>  U5={TNo,CNo,TGrade}</p&g

27、t;<p>  F5={(TNo,CNo)→TGrade}</p><p>  指導(dǎo)表(TeacherStudent)中的屬性有教師工號(TNo),學(xué)生學(xué)號(SNo),畢設(shè)成績(GDsign)</p><p>  TeacherStudent(U6,F6)</p><p>  U6={TNo,SNo,GDsign}</p><p&g

28、t;  F6={(TNo,SNo)→GDsign}</p><p><b>  5.物理結(jié)構(gòu)設(shè)計</b></p><p> ?。?)主要是設(shè)計表結(jié)構(gòu)。一般地,實體對應(yīng)于表,實體的屬性對應(yīng)于表的列,實體之間的關(guān)系成為表的約束。邏輯設(shè)計中的實體大部分可以轉(zhuǎn)換成物理設(shè)計中的表,但是它們并不一定是一一對應(yīng)的。</p><p> ?。?)對表結(jié)構(gòu)進行規(guī)范

29、化處理(第三范式)。</p><p><b> ?。?)表匯總</b></p><p><b>  表A</b></p><p>  注:(1)該表存放全校所有學(xué)生的基本信息,每個學(xué)生產(chǎn)生一條記錄。 </p><p><b>  表B</b></p><p&

30、gt;  注:該表存放某校所有的課程信息,每門課產(chǎn)生一條記錄。</p><p><b>  表C</b></p><p><b>  表D</b></p><p>  注:該表存放藍天大學(xué)所有學(xué)生的成績信息,每個學(xué)生學(xué)習(xí)每門課程產(chǎn)生一條記錄。</p><p><b>  表E</b&

31、gt;</p><p><b>  表F</b></p><p><b>  6.數(shù)據(jù)保護設(shè)計</b></p><p>  6.1防止用戶直接操作數(shù)據(jù)庫的方法</p><p>  采用用戶標識和鑒別檢測機制。即:用戶進入系統(tǒng)時必須首先輸入用戶的帳號和密碼,然后系統(tǒng)對其進行鑒別 ,通過系統(tǒng)鑒別后才能使

32、用系統(tǒng)資源。</p><p>  6.2用戶帳號密碼的加密方法</p><p>  用動態(tài)戶標識和鑒別,它是使用變化的用戶標識信息進行身份鑒別的機制。即:靜態(tài)用戶名和動態(tài)密碼。采用驗證碼登陸機制(用戶名稱+密碼+驗證碼),其基本思想為:驗證碼是把隨機產(chǎn)生的多個數(shù)字或者字符組成的字符串,生成一幅圖片,同時在圖片里加上噪聲(防止OCR識別),并由用戶肉眼識別其中的驗證碼信息,提交網(wǎng)站驗證。&l

33、t;/p><p><b>  6.3角色與權(quán)限</b></p><p>  7.運行管理與維護說明</p><p> ?。?)轉(zhuǎn)儲和恢復(fù)。DBA需要定期定時有計劃的對數(shù)據(jù)庫及其日志文件進行備份,從而確保發(fā)生故障時,利用后備副本,可以把數(shù)據(jù)庫恢復(fù)到一致狀態(tài),并盡量減少數(shù)據(jù)庫的損失。</p><p>  (2)安全性控制。隨著系

34、統(tǒng)運行,應(yīng)用環(huán)境會發(fā)生變化,對安全性的要求會改變,用戶的密級也隨之改變。因此,需要DBA根據(jù)實際情況修改原有的安全性控制。</p><p> ?。?)完整性控制。在系統(tǒng)運行過程中,對實體、參照和用戶定義等完整性的要求會發(fā)生改變。因此需要DBA根據(jù)實際情況修改原有的完整性控制。</p><p>  (4)性能維護。性能維護是對系統(tǒng)性能的監(jiān)督、分析和改進。監(jiān)督系統(tǒng)運行,并對監(jiān)測數(shù)據(jù)進行分析,從

35、而找出改進系統(tǒng)性能的方法。同時綜合運行管理和評價的改進建議,對系統(tǒng)進行調(diào)整和改進。</p><p> ?。?)重組與重構(gòu)。隨著系統(tǒng)運行,對元組的添加、刪除和修改等更新操作,會降低數(shù)據(jù)庫存儲空間的利用率和數(shù)據(jù)的存取效率,使數(shù)據(jù)庫的性能下降。因此,需要對數(shù)據(jù)庫進行重組。重組通常不需要改變邏輯結(jié)構(gòu)和物理結(jié)構(gòu);如果需要添加新實體,或者實體之間的聯(lián)系發(fā)生了變化,則需要重構(gòu)數(shù)據(jù)庫的邏輯結(jié)構(gòu)和物理結(jié)構(gòu)。顯然重構(gòu)數(shù)據(jù)庫可能會導(dǎo)致

36、數(shù)據(jù)庫數(shù)據(jù)丟失。</p><p>  8.SQL語句及部分關(guān)鍵Java語句</p><p>  ===============================================================</p><p><b>  系統(tǒng)說明書</b></p><p>  ===============

37、================================================</p><p>  建立數(shù)據(jù)庫StudentDatabase的SQL Server語句:</p><p>  ---------------------------------------------------------------</p><p>  JavaID

38、LStudentDatabase-DBTable.txt</p><p>  ---------------------------------------------------------------</p><p><b>  數(shù)據(jù)庫</b></p><p>  --------------------------------------

39、-------------------------</p><p>  StudentDatabase</p><p>  ---------------------------------------------------------------</p><p><b>  數(shù)據(jù)表</b></p><p>  ---

40、------------------------------------------------------------</p><p>  建立數(shù)據(jù)庫StudentDatabase的SQL Server語句:</p><p>  ---------------------------------------------------------------</p><p

41、>  JavaIDLStudentDatabase-DBTable.txt</p><p>  ---------------------------------------------------------------</p><p><b>  數(shù)據(jù)庫</b></p><p>  --------------------------

42、-------------------------------------</p><p>  StudentDatabase</p><p>  ---------------------------------------------------------------</p><p>  部分數(shù)據(jù)表(表Student Course StudentCours

43、e)</p><p>  ---------------------------------------------------------------</p><p><b>  Student</b></p><p>  CREATE TABLE Student(</p><p>  SNo CHAR(10) P

44、RIMARY KEY NOT NULL, </p><p>  SName CHAR(20) NOT NULL, </p><p>  SSex CHAR(2),</p><p>  Sbirth CHAR(10),</p><p>  Sphone CHAR(11),</p><p>  SColl CHAR

45、(40), NOT NULL,</p><p>  Snation CHAR(15), NOTNULL,</p><p>  Spaob CHAR(4), NOT NULL,</p><p>  Sbplace CHAR(10),</p><p>  SSgrade CHAR(4), NOTNULL,</p><p

46、>  Srem CHAR(10);</p><p><b>  Course</b></p><p>  CREATE TABLE Course(</p><p>  CNo CHAR(10) PRIMARY KEY NOT NULL,</p><p>  CName CHAR(20) NOT NULL, &

47、lt;/p><p>  CCredit INT),</p><p>  Cclass CHAR(4),NOTNULL,</p><p>  Cperiod INT(2), NOTNULL,</p><p>  Ces CHAR(1);</p><p>  StudentCourse</p><p&g

48、t;  CREATE TABLE StudentCourse(</p><p>  SNo CHAR(10) NOT NULL,</p><p>  CNo CHAR(10) NOT NULL,</p><p>  Grade FLOAT,</p><p>  PRIMARY KEY (SNo, CNo),</p><p&

49、gt;  FOREIGN KEY (SNo) REFERENCES Student(SNo),</p><p>  FOREIGN KEY (CNo) REFERENCES Course(CNo));</p><p>  TempStudentCourse</p><p>  CREATE TABLE TempStudentCourse(</p>&l

50、t;p>  SNo CHAR(10) NOT NULL,</p><p>  CNo CHAR(10) NOT NULL, </p><p>  Grade FLOAT,</p><p>  SName CHAR(20),</p><p>  CName CHAR(20),</p><p>  PRIMARY K

51、EY (SNo, CNo),</p><p>  FOREIGN KEY (SNo) REFERENCES Student(SNo),</p><p>  FOREIGN KEY (CNo) REFERENCES Course(CNo));</p><p>  -----------------------------------------------------

52、----------</p><p><b>  子程序</b></p><p>  ---------------------------------------------------------------</p><p>  JavaIDLNameDBMS </p><p>  其中:Name為模塊名稱&l

53、t;/p><p>  ---------------------------------------------------------------</p><p>  使用SQL Server 2000建立數(shù)據(jù)庫的說明</p><p>  ---------------------------------------------------------------&l

54、t;/p><p>  如果用戶使用的是SQL Server 2000,</p><p>  則只需使用SQL Server 2000的查詢分析器,</p><p>  并把在SQL Server 2000的查詢分析器中,</p><p>  運行本書提供的建立數(shù)據(jù)庫的相應(yīng)文檔即可。</p><p>  ----------

55、-----------------------------------------------------</p><p><b>  運行環(huán)境設(shè)置</b></p><p>  ---------------------------------------------------------------</p><p>  1. 安裝JDK6.

56、0</p><p>  2. 安裝JDBC驅(qū)動</p><p>  3. 安裝EclipseSDK環(huán)境</p><p><b>  4. 附加數(shù)據(jù)庫</b></p><p>  5. 在Eclipse中導(dǎo)入程序</p><p><b>  END</b></p>

57、<p><b>  添加</b></p><p>  public class add implements ActionListener, ItemListener {</p><p>  JLabel lb[], lable, lable1;</p><p>  JPanel pan[];</p><p>

58、;  JComboBox cmb;</p><p>  JTextField tf1, tf[];</p><p>  JButton bt, handin;</p><p>  CardLayout card;</p><p>  Connection con;</p><p>  public add() thro

59、ws IOException {</p><p>  cmb = new JComboBox();</p><p>  cmb.addItemListener(this);</p><p>  card = new CardLayout();</p><p>  tf1 = new JTextField(10);</p><

60、;p>  tf1.setEditable(false);</p><p>  lable = new JLabel("現(xiàn)在進入新增模式");</p><p>  lable.setHorizontalAlignment(JLabel.CENTER);</p><p>  //lable.setForeground(Color.red);&l

61、t;/p><p>  lable.setFont(new Font("華文行楷", Font.BOLD, 30));</p><p>  bt = new JButton("下一步");</p><p>  bt.setIcon(new ImageIcon("but1.gif"));</p>&l

62、t;p>  bt.addActionListener(this);</p><p>  handin = new JButton("提交");</p><p>  handin.addActionListener(this);</p><p>  // 以下初始化各個成員</p><p>  lb = new JLa

63、bel[7];</p><p>  for (int i = 0; i < lb.length; i++) {</p><p>  lb[i] = new JLabel("", JLabel.RIGHT);</p><p><b>  }</b></p><p>  tf = new JText

64、Field[5];</p><p>  for (int i = 0; i < tf.length; i++) {</p><p>  tf[i] = new JTextField(3);</p><p><b>  }</b></p><p>  // 初始化 pan</p><p>  

65、pan = new JPanel[8];</p><p>  for (int i = 0; i < pan.length; i++) {</p><p>  pan[i] = new JPanel();</p><p><b>  }</b></p><p>  lb[0].setText("您要增加幾

66、名學(xué)生的信息:");</p><p>  lb[1].setText("請輸入您要增加的學(xué)生的數(shù)目:");</p><p>  // 以下進行初級設(shè)置</p><p>  pan[0].setLayout(card);</p><p>  pan[1].setLayout(new GridLayout(4, 1,

67、 0, 20));</p><p>  pan[2].setLayout(new FlowLayout());</p><p>  pan[3].setLayout(new FlowLayout());</p><p>  pan[4].setLayout(new FlowLayout());</p><p><b>  // 以下

68、進入正題</b></p><p>  cmb.addItem("只增加一名");</p><p>  cmb.addItem("增加多名");</p><p>  pan[2].add(lb[0]);</p><p>  pan[2].add(cmb);</p><p&g

69、t;  pan[3].add(lb[1]);</p><p>  pan[3].add(tf1);</p><p>  pan[4].add(bt);</p><p>  pan[1].add(lable);</p><p>  pan[1].add(pan[2]);</p><p>  pan[1].add(pan[

70、3]);</p><p>  pan[1].add(pan[4]);</p><p>  lable1 = new JLabel("請輸入學(xué)生信息", JLabel.CENTER);</p><p>  //lable1.setForeground(Color.red);</p><p>  lable1.setFont(

71、new Font("華文行楷", Font.BOLD, 30));</p><p>  lb[2].setText("學(xué)號 ");</p><p>  lb[3].setText("姓名 ");</p><p>  lb[4].setText("性別");</p><

72、p>  lb[5].setText("年齡");</p><p>  lb[6].setText("專業(yè)");</p><p>  lb[2].setSize(new Dimension(20, 10));</p><p>  pan[5].setLayout(new BorderLayout());</p>

73、<p>  pan[6].setLayout(new GridLayout(5, 3, 0, 50));</p><p>  pan[7].setLayout(new FlowLayout());</p><p>  pan[6].add(lb[2]);</p><p>  pan[6].add(tf[0]);</p><p>

74、  pan[6].add(new JLabel(" "));</p><p>  pan[6].add(lb[3]);</p><p>  pan[6].add(tf[1]);</p><p>  pan[6].add(new JLabel(" "));</p><p>  pan[6].add(l

75、b[4]);</p><p>  pan[6].add(tf[2]);</p><p>  pan[6].add(new JLabel(" "));</p><p>  pan[6].add(lb[5]);</p><p>  pan[6].add(tf[3]);</p><p>  pan[6]

76、.add(new JLabel(" "));</p><p>  pan[6].add(lb[6]);</p><p>  pan[6].add(tf[4]);</p><p>  pan[7].add(handin);</p><p>  pan[5].add("North", lable1);&l

77、t;/p><p>  pan[5].add("Center", pan[6]);</p><p>  pan[5].add("South", pan[7]);</p><p>  //pan[0].add("card1", pan[1]);</p><p>  pan[0].add(&q

78、uot;card2", pan[5]);</p><p><b>  }</b></p><p>  public void actionPerformed(ActionEvent e) {</p><p>  // ********************************************************<

79、;/p><p>  if (e.getSource() == bt) {</p><p>  card.show(pan[0], "card2");</p><p><b>  }</b></p><p>  // *********************************************

80、***********</p><p>  if (e.getSource() == handin) {</p><p><b>  try {</b></p><p>  con = DriverManager.getConnection("jdbc:odbc:student","sa","&

81、quot;);</p><p>  //con= DriverManager. getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=student","sa","");</p><p>  } catch (SQLException e2) {

82、</p><p>  JOptionPane.showMessageDialog(studentGUI.cp, "系統(tǒng)出錯11!!", "學(xué)生信息管理系統(tǒng)",</p><p>  JOptionPane.WARNING_MESSAGE);</p><p><b>  }</b></p>&l

83、t;p>  String id = tf[0].getText();</p><p>  String name = tf[1].getText();</p><p>  String ss1 = tf[2].getText();</p><p>  int ss2 = change(tf[3].getText());</p><p>

84、  String ss3 = tf[4].getText();</p><p>  tf[0].setText("");</p><p>  tf[1].setText("");</p><p>  tf[2].setText("");</p><p>  tf[3].setText

85、("");</p><p>  tf[4].setText("");</p><p><b>  try {</b></p><p>  news(id, name, ss1, ss2, ss3);</p><p>  } catch (SQLException e1) {<

86、/p><p>  JOptionPane.showMessageDialog(studentGUI.cp, "操作失敗!!", "學(xué)生信息管理系統(tǒng)",</p><p>  JOptionPane.WARNING_MESSAGE);</p><p><b>  }</b></p><p>

87、;<b>  }</b></p><p><b>  }</b></p><p>  // *********************************************************</p><p>  public void itemStateChanged(ItemEvent e) {</

88、p><p>  if (cmb.getSelectedIndex() == 1) {</p><p>  tf1.setEditable(true);</p><p><b>  } else</b></p><p>  tf1.setEditable(false);</p><p><b>

89、;  }</b></p><p>  // ********************************************************</p><p>  public void news(String id, String name, String ss1, int ss2, String ss3)</p><p>  throw

90、s SQLException {</p><p>  String sql = "INSERT INTO student VALUES(?,?,?,?,?)";</p><p>  PreparedStatement ps = con.prepareStatement(sql);</p><p>  ps.setString(1, id);<

91、;/p><p>  ps.setString(2, name);</p><p>  ps.setString(3, ss1);</p><p>  ps.setInt(4, ss2);</p><p>  ps.setString(5, ss3);</p><p>  ps.executeUpdate();</p&

92、gt;<p>  con.close();</p><p>  JOptionPane.showMessageDialog(studentGUI.cp, "添加成功");</p><p><b>  }</b></p><p>  //**************************************

93、***************** </p><p>  public int change(String s) {</p><p>  return (Integer.parseInt(s));</p><p><b>  }</b></p><p>  //******************************

94、************************* </p><p><b>  }</b></p><p><b>  2、刪除</b></p><p>  public class delete implements ActionListener {</p><p>  JLabel lb[],

95、 lable, lable1;</p><p>  JPanel pan[];</p><p>  JComboBox cmb;</p><p>  JTextField tf1, tf[];</p><p>  JButton bt, handin;</p><p>  CardLayout card;</p&

96、gt;<p>  Connection con;</p><p>  Statement s;</p><p>  public delete() throws IOException {</p><p>  cmb = new JComboBox();</p><p>  card = new CardLayout();<

97、;/p><p>  tf1 = new JTextField(10);</p><p>  tf1.setEditable(false);</p><p>  lable = new JLabel("現(xiàn)在進入刪除模式");</p><p>  lable.setHorizontalAlignment(JLabel.CENTER

98、);</p><p>  lable.setForeground(Color.red);</p><p>  lable.setFont(new Font("華文行楷", Font.BOLD, 30));</p><p>  bt = new JButton("下一步");</p><p>  bt.s

99、etIcon(new ImageIcon("but1.gif"));</p><p>  bt.addActionListener(this);</p><p>  handin = new JButton("提交");</p><p>  handin.addActionListener(this);</p>

100、<p>  // 以下初始化各個成員</p><p>  lb = new JLabel[7];</p><p>  for (int i = 0; i < lb.length; i++) {</p><p>  lb[i] = new JLabel("", JLabel.RIGHT);</p><p>&

101、lt;b>  }</b></p><p>  tf = new JTextField[2];</p><p>  for (int i = 0; i < tf.length; i++) {</p><p>  tf[i] = new JTextField(3);</p><p><b>  }</b&g

102、t;</p><p>  // 初始化 pan</p><p>  pan = new JPanel[7];</p><p>  for (int i = 0; i < pan.length; i++) {</p><p>  pan[i] = new JPanel();</p><p><b>  }

103、</b></p><p>  lb[0].setText("請選擇刪除方式:");</p><p>  // 以下進行初級設(shè)置</p><p>  pan[0].setLayout(card);</p><p>  pan[1].setLayout(new GridLayout(3, 1, 0, 20));&l

104、t;/p><p>  pan[2].setLayout(new FlowLayout());</p><p>  pan[3].setLayout(new FlowLayout());</p><p><b>  // 以下進入正題</b></p><p>  cmb.addItem("刪除某一特定學(xué)生"

105、);</p><p>  cmb.addItem("刪除某一學(xué)號段內(nèi)的學(xué)生");</p><p>  pan[2].add(lb[0]);</p><p>  pan[2].add(cmb);</p><p>  pan[3].add(bt);</p><p>  pan[1].add(lable)

106、;</p><p>  pan[1].add(pan[2]);</p><p>  pan[1].add(pan[3]);</p><p>  lable1 = new JLabel("請輸入要刪除的學(xué)生的信息", JLabel.CENTER);</p><p>  //lable1.setForeground(Color

107、.red);</p><p>  lable1.setFont(new Font("華文行楷", Font.BOLD, 30));</p><p>  lb[1].setText("學(xué)號 ");</p><p>  lb[2].setText("姓名 ");</p><p>  pa

108、n[4].setLayout(new BorderLayout());</p><p>  pan[5].setLayout(new GridLayout(4, 3, 0, 70));</p><p>  pan[6].setLayout(new FlowLayout());</p><p>  pan[5].add(new JLabel(" "

109、;));</p><p>  pan[5].add(new JLabel(" "));</p><p>  pan[5].add(new JLabel(" "));</p><p>  pan[5].add(lb[1]);</p><p>  pan[5].add(tf[0]);</p>

110、<p>  pan[5].add(new JLabel(" "));</p><p>  pan[5].add(lb[2]);</p><p>  pan[5].add(tf[1]);</p><p>  pan[5].add(new JLabel(" "));</p><p>  p

111、an[6].add(handin);</p><p>  pan[4].add("North", lable1);</p><p>  pan[4].add("Center", pan[5]);</p><p>  pan[4].add("South", pan[6]);</p><p&

112、gt;  //pan[0].add("card1", pan[1]);</p><p>  pan[0].add("card2", pan[4]);</p><p><b>  }</b></p><p>  public void actionPerformed(ActionEvent e) {<

113、;/p><p>  // ********************************************************</p><p>  if (e.getSource() == bt) {</p><p>  card.show(pan[0], "card2");</p><p><b>  

114、}</b></p><p>  // ********************************************************</p><p>  if (e.getSource() == handin) {</p><p><b>  try {</b></p><p>  con

115、= DriverManager.getConnection("jdbc:odbc:student","sa","");</p><p>  s = con.createStatement();</p><p>  } catch (SQLException e2) {</p><p>  JOptionPa

116、ne.showMessageDialog(studentGUI.cp, "系統(tǒng)出錯!!",</p><p>  "學(xué)生信息管理系統(tǒng)", JOptionPane.WARNING_MESSAGE);</p><p><b>  }</b></p><p>  String id = tf[0].getText

117、();</p><p>  String name = tf[1].getText();</p><p>  tf[0].setText("");</p><p>  tf[1].setText("");</p><p><b>  try {</b></p><

118、;p>  del(id, name);</p><p>  } catch (SQLException e1) {</p><p>  JOptionPane.showMessageDialog(studentGUI.cp, "系統(tǒng)出錯!!",</p><p>  "學(xué)生信息管理系統(tǒng)", JOptionPane.WARN

119、ING_MESSAGE);</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  // ****************************************************

120、****</p><p>  public void del(String id, String name) throws SQLException {</p><p>  if(name.equals("")&&id.equals("")){</p><p>  JOptionPane.showMessage

121、Dialog(studentGUI.cp, "學(xué)號和姓名不能同時為空!!", "學(xué)生信息管理系統(tǒng)",</p><p>  JOptionPane.PLAIN_MESSAGE);</p><p><b>  }</b></p><p><b>  else{ </b></p>

122、;<p>  if (name.equals("")) {</p><p>  PreparedStatement ps = con</p><p>  .prepareStatement("delete from student where sno=?");</p><p>  ps.setString(1,

123、id);</p><p>  ps.executeUpdate();</p><p><b>  }</b></p><p>  else if (id.equals("")) {</p><p>  PreparedStatement ps = con</p><p>  .

124、prepareStatement("delete from student where sname=?");</p><p>  ps.setString(1, name);</p><p>  ps.executeUpdate();</p><p><b>  }</b></p><p><b

125、>  else </b></p><p><b>  {</b></p><p>  PreparedStatement ps = con</p><p>  .prepareStatement("delete from student where sname=? and sno=?");</p>

126、;<p>  ps.setString(1, name);</p><p>  ps.setString(2, id);</p><p>  ps.executeUpdate();</p><p><b>  }</b></p><p>  JOptionPane.showMessageDialog(stu

127、dentGUI.cp, "操作成功!!", "學(xué)生信息管理系統(tǒng)",</p><p>  JOptionPane.PLAIN_MESSAGE);</p><p><b>  }</b></p><p>  s.close();</p><p>  con.close();</p

128、><p><b>  }</b></p><p>  //******************************************************* </p><p><b>  }</b></p><p><b>  3、查詢</b></p>&

129、lt;p>  public class search implements ActionListener, ItemListener {</p><p>  JLabel lb[], lable, lable1;</p><p>  JPanel pan[];</p><p>  JComboBox cmb;</p><p>  JTe

130、xtField tf1, tf[];</p><p>  JButton bt, handin;</p><p>  CardLayout card;</p><p>  Connection con;</p><p>  Statement s;</p><p>  private RSTable table;<

溫馨提示

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

最新文檔

評論

0/150

提交評論