版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
PAGE《數(shù)據(jù)庫(kù)系統(tǒng)原理》課程設(shè)計(jì)報(bào)告說(shuō)明書(shū)同學(xué)信息管理系統(tǒng)同學(xué)姓名學(xué)號(hào)所在專業(yè)所在班級(jí)指導(dǎo)老師提交時(shí)間評(píng)閱情況成績(jī)PAGE2目錄TOC\o"1—3”\h\z\uHYPERLINK\l”_Toc281683002"讀書(shū)筆記 1_Toc281762107"2。系統(tǒng)需求分析 32.1開(kāi)發(fā)環(huán)境和軟件 32。2系統(tǒng)設(shè)計(jì)與功能分析 3HYPERLINK\l”_Toc281762109"3 數(shù)據(jù)庫(kù)設(shè)計(jì) 4HYPERLINK\l”_Toc281762110”3。1系統(tǒng)概念結(jié)構(gòu)設(shè)計(jì) 43。2系統(tǒng)規(guī)律結(jié)構(gòu)設(shè)計(jì) 53.3數(shù)據(jù)庫(kù)實(shí)現(xiàn) 6HYPERLINK\l”_Toc281762113"3。3。1數(shù)據(jù)庫(kù)關(guān)系圖 6_Toc281762115"4。系統(tǒng)模塊簡(jiǎn)略設(shè)計(jì) 9HYPERLINK\l”_Toc281762116"4.1 用戶登錄模塊 9HYPERLINK\l”_Toc281762117"4.2各用戶操作模塊 104.2.1管理員操作模塊 10_Toc281762120”4.2.3同學(xué)操作模塊 10_Toc281762122"5.1管理員登錄 11HYPERLINK\l”_Toc281762123"5。2老師登錄 13HYPERLINK\l”_Toc281762124"5.3同學(xué)登錄 19HYPERLINK\l”_Toc281762125”6.課程設(shè)計(jì)總結(jié) 227.附錄(代碼) 23I.讀書(shū)筆記關(guān)于網(wǎng)上花店管理系統(tǒng)的讀書(shū)筆記:在網(wǎng)上購(gòu)物逐步平民化的今日,網(wǎng)上購(gòu)物人數(shù)不斷增加,現(xiàn)代IT技術(shù)和互聯(lián)網(wǎng)的結(jié)合。給了市場(chǎng)制造了無(wú)限商機(jī)!我閱讀了一片“網(wǎng)上花店管理系統(tǒng)"的論文。該論文主要討論網(wǎng)上花店管理系統(tǒng).該系統(tǒng)以MySQL作為后臺(tái)數(shù)據(jù)庫(kù),JSP作為前臺(tái)開(kāi)發(fā)工具,通過(guò)Java中的JDBC連接數(shù)據(jù)庫(kù)。供應(yīng)應(yīng)用戶網(wǎng)上掃瞄,購(gòu)買(mǎi),支付等功能,同時(shí)。管理員對(duì)可以該系統(tǒng)進(jìn)行維護(hù)和管理!SQLServer平安牢靠,性能好,易用性強(qiáng),JSP的Web運(yùn)用跨平臺(tái),系統(tǒng)底層采納Java開(kāi)發(fā)。Java語(yǔ)言簡(jiǎn)潔,面對(duì)對(duì)象,平安性高的特點(diǎn),運(yùn)用Serlvet模式和Tomcat服務(wù)器.這幾點(diǎn)的綜合搭配使得該系統(tǒng)靈敏便利易用,簡(jiǎn)化了動(dòng)態(tài)網(wǎng)站的開(kāi)發(fā)。網(wǎng)上花店管理系統(tǒng)實(shí)現(xiàn)了用戶注冊(cè),網(wǎng)上訂購(gòu)支付,留言,購(gòu)物車,鮮花資料管理和用戶管理,訂單管理等功能。SQl數(shù)據(jù)庫(kù)實(shí)現(xiàn)了用戶注冊(cè)登記信息的存儲(chǔ),和網(wǎng)站資料維護(hù),更新等使得數(shù)據(jù)的管理更加便利,高效…JSP則為用戶提高動(dòng)態(tài)圖形界面,簡(jiǎn)化了操作,提高了易用性。論文還簡(jiǎn)略介紹了系統(tǒng)的規(guī)律結(jié)構(gòu)設(shè)計(jì),規(guī)律圖,總功能設(shè)計(jì),和數(shù)據(jù)庫(kù)設(shè)計(jì)等。該系統(tǒng)即使是不懂web技術(shù)的人也可以熟識(shí)運(yùn)用。開(kāi)發(fā)工具和數(shù)據(jù)庫(kù)的工具有很多,各有各的優(yōu)勢(shì)。在互聯(lián)網(wǎng)大行其道的時(shí)代,電腦技術(shù)順應(yīng)著時(shí)代的進(jìn)展,只有我們把握運(yùn)用好各類技術(shù),相互結(jié)合與利用,才能制作出更好的軟件和程序。11PAGE23同學(xué)信息管理系統(tǒng)信管1081班,200811622124,吳曉陽(yáng)指導(dǎo)老師:鄭贊紅1。同學(xué)信息管理系統(tǒng)概述1.1討論背景同學(xué)信息管理系統(tǒng)是學(xué)校管理的重要工具,是學(xué)校不行或缺的部分。隨著在校高校生人數(shù)的不斷增加,教務(wù)系統(tǒng)的數(shù)量也不斷的上漲,.學(xué)校工作繁雜、資料眾多,人工管理信息的難度也越來(lái)越大,顯然是不能滿意實(shí)際的需要,效率也是很低的。并且這種傳統(tǒng)的方式存在著很多的弊端,如:保密性差、查詢不便、效率低,很難維護(hù)和更新等。然而,本系統(tǒng)針對(duì)以上缺點(diǎn)能夠極大地提高同學(xué)信息管理的效率,也是科學(xué)化、正規(guī)化的管理,與世界接軌的重要條件.所以如何自動(dòng)高效地管理信息是這些年來(lái)很多人所討論的.1。2開(kāi)發(fā)意義隨著這些年電腦計(jì)算機(jī)的速度質(zhì)的提高,成本的下降,IT互聯(lián)網(wǎng)大眾趨勢(shì)的進(jìn)展。我們使用電腦的高效率才處理數(shù)據(jù)信息成為可能。同學(xué)學(xué)籍管理系統(tǒng)的消滅,正是管理人員與信息數(shù)據(jù),計(jì)算機(jī)的進(jìn)入互動(dòng)時(shí)代的體現(xiàn)。友好的人機(jī)交互模式,清楚簡(jiǎn)明的圖形界面,高效平安的操作使得我們對(duì)成千上萬(wàn)的信息的管理得心應(yīng)手。通過(guò)這個(gè)系統(tǒng),可以做到信息的規(guī)范管理,科學(xué)統(tǒng)計(jì)和快速的查詢,從而削減管理方面的工作量?毋庸置疑,切實(shí)有效地把計(jì)算機(jī)管理引入學(xué)校教務(wù)管理中,對(duì)于促進(jìn)學(xué)校管理制度,提高學(xué)校教學(xué)質(zhì)量與辦學(xué)水平有著顯著意義?2.系統(tǒng)需求分析2.1開(kāi)發(fā)環(huán)境和軟件(1)操作系統(tǒng):Windows7(2)數(shù)據(jù)庫(kù)軟件:SQLServer2005(3)Java開(kāi)發(fā)工具:Eclipse2。2系統(tǒng)設(shè)計(jì)與功能分析同學(xué)信息管理系統(tǒng),可用于學(xué)校等機(jī)構(gòu)的同學(xué)信息管理,查詢,更新與維護(hù),使用便利,易用性強(qiáng),圖形界面清楚明白.該軟件用java語(yǔ)言編寫(xiě),用SQLServer2005數(shù)據(jù)庫(kù)作為后臺(tái)的數(shù)據(jù)庫(kù)進(jìn)行信息的存儲(chǔ),用SQL語(yǔ)句完成同學(xué)學(xué)籍信息的添加,查詢,修改,刪除的操作以及成果的錄入,修改,刪除等.用ODBC驅(qū)動(dòng)實(shí)現(xiàn)前臺(tái)Java與后臺(tái)SQL數(shù)據(jù)庫(kù)的連接.Java語(yǔ)言跨平臺(tái)性強(qiáng),可以在windows,linux,ubuntu等系統(tǒng)下使用,便利簡(jiǎn)潔,平安性好.SQLServer2005數(shù)據(jù)庫(kù)高效平安,兩者結(jié)合可相互利用各自的優(yōu)勢(shì)。該系統(tǒng)實(shí)現(xiàn)的大致功能:用戶登陸界面。該界面可以選擇使用者的身份,“管理員,老師,同學(xué)"。不同的身份有不同的操作界面和功能權(quán)限.ID號(hào)和密碼輸入正確即可登錄。同學(xué)管理界面.供應(yīng)了同學(xué)學(xué)籍信息的查詢,相關(guān)科目的成果查詢和排名,修改登錄密碼等功能。老師管理界面。供應(yīng)了對(duì)同學(xué)學(xué)籍信息的查詢,添加,修改,刪除;同學(xué)成果的錄入,修改,刪除,查詢班級(jí)排名。修改密碼等功能.管理員管理界面.擁有最高的權(quán)限。允許添加老師信息和課程信息等。登錄的用戶信息分別存儲(chǔ)在SQL數(shù)據(jù)庫(kù)的“管理員信息表",“老師信息表”,“學(xué)籍信息表”中,如果用戶信息不存在則三張表中,將會(huì)無(wú)權(quán)利登錄本管理系統(tǒng)。保證了本同學(xué)管理系統(tǒng)的平安性。數(shù)據(jù)庫(kù)設(shè)計(jì)3.1系統(tǒng)概念結(jié)構(gòu)設(shè)計(jì)教師ID教師ID課程號(hào)教師課程號(hào)教師教師姓名教師姓名課程名稱課程登錄密碼課程名稱課程登錄密碼教師ID教師ID學(xué)號(hào)學(xué)號(hào)課程號(hào)成績(jī)課程號(hào)成績(jī)姓名成績(jī)姓名成績(jī)學(xué)號(hào)學(xué)號(hào)管理員ID性別學(xué)籍管理員ID性別學(xué)籍管理員籍貫管理員籍貫登錄密碼登錄密碼班級(jí)號(hào)班級(jí)號(hào)班級(jí)籍貫班級(jí)籍貫登錄密碼登錄密碼總?cè)藬?shù)班級(jí)號(hào)班級(jí)名稱總?cè)藬?shù)班級(jí)號(hào)班級(jí)名稱實(shí)體屬性表:實(shí)體屬性老師老師ID,老師姓名,登錄密碼課程課程號(hào),課程名稱,老師ID管理員管理員ID,登錄密碼班級(jí)班級(jí)號(hào),班級(jí)名稱,總?cè)藬?shù)學(xué)籍學(xué)號(hào),姓名,性別,班級(jí)號(hào),籍貫,登錄密碼成果學(xué)號(hào),課程號(hào),成果3。2系統(tǒng)規(guī)律結(jié)構(gòu)設(shè)計(jì)老師信息表:字段名類型空值約束條件老師IDvarchar(8)notnull主鍵老師姓名varchar(8)notnull登錄密碼varchar(8)notnull課程信息表:字段名類型空值約束條件課程號(hào)varchar(8)notnull主鍵課程名稱varchar(12)notnull老師IDvarchar(8)notnull外鍵班級(jí)信息表:字段名類型空值約束條件班級(jí)號(hào)varchar(8)notnull主鍵班級(jí)名稱varchar(8)notnull所屬學(xué)院varchar(6)班級(jí)人數(shù)nchar(4)管理員信息表:字段名類型空值約束條件管理員IDvarchar(10)notnull主鍵登錄密碼varchar(10)notnull成果信息表:字段名類型空值約束條件班級(jí)號(hào)varchar(15)notnull主鍵,外鍵班級(jí)名稱varchar(8)notnull主鍵,外鍵所屬學(xué)院Smallintnotnull學(xué)籍信息表:字段名類型空值約束條件學(xué)號(hào)intnotnull主鍵姓名varchar(30)notnull性別char(2)班級(jí)號(hào)varchar(30)notnull
外鍵籍貫char(10)
登錄密碼Moneynotnull3。3數(shù)據(jù)庫(kù)實(shí)現(xiàn)3。3。1數(shù)據(jù)庫(kù)關(guān)系圖SQL語(yǔ)句實(shí)現(xiàn)數(shù)據(jù)表的創(chuàng)建:(1)老師信息表創(chuàng)建:createtable老師信息表(老師IDvarchar(8)primarykey,老師姓名varchar(8)notnullunique,登錄密碼varchar(8)notnull,)(2)課程信息表創(chuàng)建:createtable課程信息表(課程號(hào)varchar(8)primarykey,課程名稱varchar(12)notnull,老師IDvarchar(8)notnullforeignkey(老師ID)references老師信息表(老師ID))(3)班級(jí)信息表創(chuàng)建:createtable班級(jí)信息表(班級(jí)號(hào)varchar(8)notnullprimarykey,班級(jí)名稱varchar(8)notnullunique,所屬學(xué)院varchar(8),班級(jí)人數(shù)nchar(4))(4)學(xué)籍信息表創(chuàng)建:createtable學(xué)籍信息表(學(xué)號(hào)varchar(15)primarykey,姓名varchar(8)notnull,性別varchar(4),班級(jí)號(hào)varchar(8)notnull,籍貫varchar(5),登錄密碼varchar(6)notnullforeignkey(班級(jí)號(hào))references班級(jí)信息表(班級(jí)號(hào)))(5)成果信息表創(chuàng)建:createtable成果信息表(學(xué)號(hào)varchar(15),課程號(hào)varchar(8),成果smallintprimarykey(學(xué)號(hào),課程號(hào))foreignkey(學(xué)號(hào))references學(xué)籍信息表(學(xué)號(hào)),foreignkey(課程號(hào))references課程信息表(課程號(hào)))(6)管理員信息表創(chuàng)建:createtable課程信息表(管理員IDvarchar(8)primarykey,登錄密碼varchar(12)notnull)視圖的創(chuàng)建:(1)“老師課程簡(jiǎn)略信息”視圖創(chuàng)建:createview老師課程簡(jiǎn)略信息asSELECT老師信息表.老師ID,老師信息表.老師姓名,課程信息表.課程號(hào),課程信息表.課程名稱,老師信息表。登錄密碼FROM老師信息表JOIN課程信息表ON老師信息表。老師ID=課程信息表。老師ID(2)“同學(xué)成果信息”視圖創(chuàng)建:createview同學(xué)成果信息asSELECT學(xué)籍信息表.學(xué)號(hào),學(xué)籍信息表。姓名,學(xué)籍信息表。性別,課程信息表。課程名稱,成果信息表。成果FROM成果信息表JOIN學(xué)籍信息表ON成果信息表.學(xué)號(hào)=學(xué)籍信息表。學(xué)號(hào)JOIN班級(jí)信息表ON班級(jí)信息表。班級(jí)號(hào)=學(xué)籍信息表。班級(jí)號(hào)JOIN課程信息表ON課程信息表.課程號(hào)=成果信息表。課程號(hào)存儲(chǔ)過(guò)程創(chuàng)建:(1)“單科成果排名”創(chuàng)建:createproc[dbo]。[單科成果排名]@kechennamechar(8),@classnamechar(8)asselect學(xué)籍信息表.學(xué)號(hào),姓名,成果from成果信息表join課程信息表on課程信息表.課程號(hào)=成果信息表.課程號(hào)join學(xué)籍信息表on學(xué)籍信息表.學(xué)號(hào)=成果信息表.學(xué)號(hào)join班級(jí)信息表on班級(jí)信息表。班級(jí)號(hào)=學(xué)籍信息表。班級(jí)號(hào)where課程名稱=@kechennameand班級(jí)名稱=@classnameorderby成果desc(2)“全班排名”創(chuàng)建:createproc[dbo].[全班排名]@classchar(8)asselect學(xué)籍信息表。學(xué)號(hào),姓名,avg(成果)as平均分,sum(成果)as總分from成果信息表join學(xué)籍信息表on成果信息表.學(xué)號(hào)=學(xué)籍信息表.學(xué)號(hào)join班級(jí)信息表on班級(jí)信息表。班級(jí)號(hào)=學(xué)籍信息表。班級(jí)號(hào)where班級(jí)信息表。班級(jí)名稱=@classgroupby學(xué)籍信息表.姓名,學(xué)籍信息表。學(xué)號(hào)orderbyavg(成果)desc,學(xué)籍信息表.學(xué)號(hào)4。系統(tǒng)模塊簡(jiǎn)略設(shè)計(jì)用戶登錄模塊4.2各用戶操作模塊4.2.1管理員操作模塊(圖1)4。2.2老師操作模塊(圖2)圖1圖24。2。3同學(xué)操作模塊5。系統(tǒng)運(yùn)行與測(cè)試5.1管理員登錄點(diǎn)擊“管理員"按鈕。輸入正確的ID和密碼。驗(yàn)證成功則可進(jìn)入管理員管理界面。管理員ID號(hào)和登錄密碼存在數(shù)據(jù)庫(kù)中的管理員信息表.表中存在的管理員才允許登錄。(1)添加老師信息。在彈出的輸入欄中輸入正確的數(shù)據(jù)。如果輸入重復(fù)的信息則會(huì)彈出.如果某項(xiàng)未填則彈出。輸入的數(shù)據(jù)會(huì)分別寫(xiě)進(jìn)“老師信息表”和“課程信息表"中。增加的老師信息,允許讓更多的老師登錄本系統(tǒng)進(jìn)行管理操作!(2)修改老師信息如果要修改的老師信息不存在,則(3)刪除信息修改輸入的老師信息不存在,則(4)查詢老師信息5.2老師登錄在登錄界面選擇“老師”按鈕,并輸入正確的ID號(hào)和密碼,即可登錄成功!輸入錯(cuò)誤則會(huì)彈出提示!ID號(hào)輸入正確,登錄成功!進(jìn)入老師管理的操作界面:(1)顯示同學(xué)信息。(2)添加同學(xué)信息新添加的信息會(huì)保存在學(xué)籍信息表中!如果輸入的信息已經(jīng)存在,則顯示如果輸入的數(shù)據(jù)正確,則(3)修改同學(xué)信息,輸入正確則顯示?。?)刪除同學(xué)信息,(5)錄入同學(xué)成果(6)修改同學(xué)成果(7)刪除同學(xué)成果(8)查詢同學(xué)成果(9)全部成果排名(10)單科成果排名(11)更改登錄密碼修改成功后即可用新的密碼進(jìn)行登錄!5.3同學(xué)登錄輸入正確的ID號(hào)和密碼,即可正常登錄!顯示同學(xué)信息查詢個(gè)人成果(3)單科成果排名(4)全班成果排名(5)修改密碼修改密碼后會(huì)更新同學(xué)學(xué)籍表里面的登錄密碼,下次就可以用新密碼登錄。點(diǎn)擊后,就可以平安退出同學(xué)管理系統(tǒng)了!6.課程設(shè)計(jì)總結(jié)課程設(shè)計(jì)是培育同學(xué)綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn),提出,分析和解決實(shí)際問(wèn)題,熬煉實(shí)踐能力的重要環(huán)節(jié),是對(duì)同學(xué)實(shí)際工作能力的簡(jiǎn)略訓(xùn)練和考察過(guò)程。本次課程設(shè)計(jì)雖然很辛苦,實(shí)在是受益匪淺。原來(lái)這門(mén)課的知識(shí)學(xué)的就不夠扎實(shí),本次課程設(shè)計(jì),在設(shè)計(jì)過(guò)程中遇到了很多問(wèn)題,剛開(kāi)頭要設(shè)計(jì)的時(shí)候,還真不知道從哪里下手但最終在圖書(shū)、同學(xué)和老師的幫助下都得到了解決,讓我學(xué)會(huì)了好多書(shū)本上沒(méi)有的東西,通過(guò)本次課程設(shè)計(jì)我也能將課本上的知識(shí)融會(huì)貫穿,起到了很好的幫助學(xué)習(xí)的效果,但是我發(fā)現(xiàn)我學(xué)到的知識(shí)比整整一個(gè)學(xué)期學(xué)到的都多.理論和實(shí)踐的相結(jié)合是學(xué)習(xí)最有效的方法。在設(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠堅(jiān)固,通過(guò)這次課程設(shè)計(jì)之后,肯定把以前所學(xué)過(guò)的知識(shí)重新溫故.通過(guò)這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力.7.附錄(代碼)由于篇幅有限,所以只附上主要功能的代碼:登陸界面與主功能界面:publicclassSqlextendsJFrameimplementsActionListener{ JFramemm=newJFrame(”您好!請(qǐng)您先登錄!"); JTextFieldt2=newJTextField(null,15);JTextFieldt4=newJPasswordField(null,15);publicStringzh=null;JRadioButtonb=newJRadioButton(”老師"); JRadioButtonb1=newJRadioButton(”同學(xué)”); JRadioButtonb2=newJRadioButton("管理員");publicvoidjiemian(){ mm。setSize(300,340); mm.setVisible(true); mm.setLocation(200,300); mm.setDefaultCloseOperation(JFrame。EXIT_ON_CLOSE); JLabelt1=newJLabel("ID號(hào):"); JLabelt3=newJLabel("密碼:"); JButtondenglu2=newJButton(”登錄"); denglu2。setContentAreaFilled(false); Containern=mm。getContentPane(); n.setLayout(null); t1.setBounds(42,125,75,35); t2.setBounds(80,125,150,35); t3。setBounds(40,180,75,35); t4。setBounds(80,180,150,35); denglu2.setBounds(102,245,70,30); n。add(t1);n。add(t2);n。add(t3);n。add(t4);n。add(denglu2); b。setBounds(130,85,70,30); b1。setBounds(70,85,70,30); b2.setBounds(190,85,70,30); ButtonGrouprg=newButtonGroup(); b.setSelected(false); b1.setSelected(true); b1。setSelected(false); n。add(b);n。add(b2);rg。add(b2);rg。add(b);n.add(b1);rg.add(b1); b。setContentAreaFilled(false); b1。setContentAreaFilled(false); b2.setContentAreaFilled(false); denglu2。addActionListener(this); }publicvoidactionPerformed(ActionEvente){ JButtondenglu2=(JButton)e。getSource(); if(b。isSelected()){ zh=t2。getText(); Stringmima=t4.getText(); try{ Class。forName(”sun。jdbc。odbc。JdbcOdbcDriver"); Connectionc=DriverManager.getConnection("jdbc:odbc:同學(xué)信息系統(tǒng)”); Statements=c.createStatement( ResultSet。TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSetr=s.executeQuery("select*from老師信息表where老師ID='”+zh+"’and登錄密碼='"+mima+"’”); r。last(); if(r.getRow()==1) {mm。setVisible(false); r.beforeFirst(); while(r.next()){ JOptionPane。showMessageDialog(null,r。getString(”老師姓名”)+"老師!您好!歡迎登錄老師管理系統(tǒng)!”);} JFramemmm=newJFrame(); mmm.setSize(400,420); mmm.setVisible(true); mmm。setLocation(200,300); mmm.setDefaultCloseOperation(JFrame。EXIT_ON_CLOSE); JLabelaaa=newJLabel("同學(xué)信息管理:");JLabelaaa1=newJLabel("同學(xué)成果管理:"); JButtonb1=newJButton(”顯示同學(xué)信息”);b1。setBounds(40,45,140,30); JButtonb2=newJButton(”添加同學(xué)信息”);b2.setBounds(200,45,140,30); JButtonb3=newJButton("修改同學(xué)信息");b3.setBounds(40,90,140,30); JButtonb4=newJButton("刪除同學(xué)信息");b4。setBounds(200,90,140,30); JButtonb5=newJButton("錄入同學(xué)成果");b5。setBounds(40,170,140,30); JButtonb6=newJButton("修改同學(xué)成果");b6.setBounds(200,170,140,30); JButtonb7=newJButton(”刪除同學(xué)成果”);b7.setBounds(40,215,140,30); JButtonb8=newJButton("查詢同學(xué)成果");b8。setBounds(200,215,140,30); JButtonb9=newJButton(”全部成果排名");b9.setBounds(40,260,140,30); JButtonb12=newJButton(”單科成果排名”);b12.setBounds(200,260,140,30); JButtonb10=newJButton("退出系統(tǒng)”);b10。setBounds(60,325,100,30); JButtonb11=newJButton(”修改密碼");b11。setBounds(220,325,100,30); aaa.setBounds(15,15,90,30);aaa1.setBounds(15,140,90,30); Containern=mmm。getContentPane(); n。setLayout(null);J_ActionListener1a1=newJ_ActionListener1(); J_ActionListener2a2=newJ_ActionListener2(); J_ActionListener3a3=newJ_ActionListener3(); J_ActionListener4a4=newJ_ActionListener4(); J_ActionListener5a5=newJ_ActionListener5();J_ActionListener7a7=newJ_ActionListener7(); J_ActionListener8a8=newJ_ActionListener8();J_ActionListener9a9=newJ_ActionListener9(); J_ActionListener10a10=newJ_ActionListener10(); J_ActionListener12a12=newJ_ActionListener12(); J_ActionListener11a11=newJ_ActionListener11(); n。add(b1);n.add(b2);n。add(b3);n.add(b4);n.add(b5);n。add(b6); n.add(b7);n。add(b8);n.add(b9);n.add(b10);n.add(aaa);n。add(aaa1);n.add(b11);n.add(b12);b1.addActionListener(a1);b2.addActionListener(a2); b3。addActionListener(a3);b4。addActionListener(a4);b5。addActionListener(a5); b6。addActionListener(a7);b7。addActionListener(a8);b8.addActionListener(a9);b9。addActionListener(a10);b11.addActionListener(a1)b12。addActionListener(a12); b10。addActionListener(newActionListener() { publicvoidactionPerformed(finalActionEvente) {System。exit(0);} }); ((JComponent)mmm。getContentPane())。setOpaque(false);java。net.URLurl=Sql.class。getResource("未命名。jpg”); ImageIconimg=newImageIcon(url); JLabelbackground=newJLabel(img); mmm.getLayeredPane()。add(background,newInteger(Integer.MIN_VALUE)); background.setBounds(0,0,img。getIconWidth(),img.getIconHeight()); } else{JOptionPane.showMessageDialog(null,"老師ID或密碼有誤!請(qǐng)重新輸入!");} } catch(Exceptione1) {e1。printStackTrace();}}}publicstaticvoidmain(Stringargs[]){ Sqlapp=newSql(); app。jiemian(); }}向數(shù)據(jù)庫(kù)添加新的同學(xué)信息:classDataBase{//DataBase類 publicvoidAdd(Stringxh,Stringxm,Stringxb,Stringbj,Stringjg,Stringmm)throwsSQLException{//為學(xué)籍管理系統(tǒng)添加新記錄 try{ Class.forName(”sun.jdbc。odbc.JdbcOdbcDriver”); Connectionc=DriverManager。getConnection("jdbc:odbc:同學(xué)信息系統(tǒng)”); Statements=c.createStatement(ResultSet。TYPE_SCROLL_SENSITIVE, ResultSet。CONCUR_UPDATABLE);ResultSetr=s。executeQuery(”select*from學(xué)籍信息表where學(xué)號(hào)='"+xh+”'”); r。last(); if(r。getRow()==1) {JOptionPane。showMessageDialog(null,"該學(xué)號(hào)的同學(xué)信息已存在”);} Elseif(xh。equals(”")){//推斷新輸入的學(xué)號(hào)是否為空 JOptionPane.showMessageDialog(null,”學(xué)號(hào)不能為空”);} else{s.executeUpdate(”insertinto學(xué)籍信息表values(’"+xh+”’,’”+xm+”',’”+xb+”’,'”+bj+"’,’”+jg+"’,’"+mm+”')”);s.close();c。close();JOptionPane.showMessageDialog(null,”〈html>"+”學(xué)號(hào):”+xh+"〈br〉"+"姓名:”+xm+"〈br>”+”性別:”+xb+”<br〉”+”班級(jí)號(hào):”+bj+”<br〉”+”籍貫:”+jg+”〈br〉” +”登錄密碼:”+mm+”<br〉同學(xué)記錄添加成功!”);} } catch(ClassNotFoundExceptione) {JOptionPane.showMessageDialog(null,"數(shù)據(jù)添加特別!");} } publicvoidDisplayAll(ResultSetr){ JFramem=newJFrame("顯示全部同學(xué)信息”); m.setBounds(60,70,700,600); m.setVisible(true); JTextAreaaa=newJTextArea(); aa。setBounds(0,0,700,600); Containerc1=m。getContentPane(); c1.setLayout(null); c1.add(aa); try{r。last();aa。append("\t學(xué)號(hào)”+”\t”+"姓名”+”\t"+”性別”+”\t"+"班級(jí)"+"\t”+"籍貫"+"\n"); r.beforeFirst(); while(r。next()) {aa。append(”第”+r.getRow()+"行記錄:"); aa。append(r.getString(”學(xué)號(hào)")); aa。append("\t”+r.getString(”姓名")); aa.append(”\t”+r.getString("性別”)); aa.append("\t”+r。getString(”班級(jí)”)); aa.append(”\t”+r.getString("籍貫”)+”\n”); }} catch(Exceptione) { e。printStackTrace();}} publicvoidDisplayOne(Stringstr22)throwsException {try {Connectionc=DriverManager。getConnection("jdbc:odbc:同學(xué)信息系統(tǒng)”); Statements=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet。CONCUR_UPDATABLE); ResultSetr=s。executeQuery(”select學(xué)號(hào),姓名,性別,班級(jí)名稱as班級(jí),籍貫from學(xué)籍信息表join班級(jí)信息表on班級(jí)信息表。班級(jí)號(hào)=學(xué)籍信息表。班級(jí)號(hào)where學(xué)號(hào)=’”+str22+"’”);//執(zhí)行查詢的SQL語(yǔ)句 r.last(); intcc=r.getRow();if(cc==0){ JOptionPane。showMessageDialog(null,"未查詢到相關(guān)信息!");}else{r。beforeFirst(); while(r.next()) {JOptionPane.showMessageDialog(null,"〈html>”+”學(xué)號(hào):”+r.getString(”學(xué)號(hào)”)+”〈br〉”+"姓名:”+r.getString(”姓名")+"〈br〉" +"性別:"+r。getString("性別”)+”<br〉"+”班級(jí):”+r。getString("班級(jí)”)+"<br>" +”籍貫:”+r。getString(”籍貫")+”〈br>已查詢到相關(guān)記錄!"); }}} catch(Exceptione) {e。printStackTrace();}}publicvoidDeleteXh(Stringstr11)//執(zhí)行按學(xué)號(hào)刪除同學(xué)記錄的操作{try {Class。forName("sun。jdbc。odbc。JdbcOdbcDriver”); Connectionc=DriverManager.getConnection(”jdbc:odbc:同學(xué)信息系統(tǒng)”); Statements=c。createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);ResultSetr=s。executeQuery(”select*from學(xué)籍信息表where學(xué)號(hào)=’”+str11+"’"); r。last(); if(r。getRow()==1){s。executeUpdate("deletefrom學(xué)籍信息表where學(xué)號(hào)=’”+str11+”’”); JOptionPane。showMessageDialog(null,"同學(xué)記錄刪除成功!"); }else{JOptionPane。showMessageDialog(null,”學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄!");} } catch(Exceptione) {}}publicvoidDeleteXm(Stringstr13)//執(zhí)行按姓名刪除同學(xué)記錄的操作{try {Class。forName("sun。jdbc.odbc。JdbcOdbcDriver"); Connectionc=DriverManager.getConnection(”jdbc:odbc:同學(xué)信息系統(tǒng)”); Statements=c。createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet。CONCUR_UPDATABLE);ResultSetr=s。executeQuery("select*from學(xué)籍信息表where姓名='"+str13+”'”); r。last(); if(r.getRow()==1) {s。executeUpdate(”deletefrom學(xué)籍信息表where姓名='"+str13+"'”); JOptionPane.showMessageDialog(null,"同學(xué)記錄刪除成功!");}else{JOptionPane.showMessageDialog(null,"學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄!”);} } catch(Exceptione) {}}publicvoidUpdateXh(Stringxg,Stringstr15,Stringstr16){ try{ Class。forName(”sun。jdbc.odbc.JdbcOdbcDriver”); Connectionc=DriverManager。getConnection("jdbc:odbc:同學(xué)信息系統(tǒng)”); Statements=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet。CONCUR_UPDATABLE);ResultSetr=s.executeQuery(”select*from學(xué)籍信息表where學(xué)號(hào)=’”+xg+"’”); r.last(); if(r.getRow()==1) {s.executeUpdate("update學(xué)籍信息表set"+str15+"=’”+str16+"’where學(xué)號(hào)='”+xg+"’");//直接執(zhí)行SQL語(yǔ)句修改 JOptionPane.showMessageDialog(null,”同學(xué)記錄修改成功!"); }else{ JOptionPane.showMessageDialog(null,”學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄!"); };} catch(Exceptione) {JOptionPane.showMessageDialog(null,"學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄!"); }}publicvoidUpdateXm(Stringstr18,Stringstr19,Stringstr20){ try{ Class.forName("sun。jdbc。odbc。JdbcOdbcDriver”); Connectionc=DriverManager。getConnection("jdbc:odbc:同學(xué)信息系統(tǒng)”); Statements=c。createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet。CONCUR_UPDATABLE); ResultSetr=s.executeQuery(”select*from學(xué)籍信息表where姓名='”+str18+"’”); r。last(); if(r.getRow()==1) {s.executeUpdate(”update學(xué)籍信息表set”+str19+”=’”+str20+"'where姓名=’”+str18+”'”);//直接執(zhí)行SQL語(yǔ)句修改 JOptionPane.showMessageDialog(null,"同學(xué)記錄修改成功!");} else{JOptionPane。showMessageDialog(null,”學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄!”); };} catch(Exceptione) {JOptionPane。showMessageDialog(null,"學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄!”); }}publicvoidAddScore(Stringxh,Stringkch,Stringcj){ try{ Class.forName("sun。jdbc.odbc.JdbcOdbcDriver”); Connectionc=DriverManager。getConnection(”jdbc:odbc:同學(xué)信息系統(tǒng)”); Statements=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet。CONCUR_UPDATABLE); if(xh。equals("”)||kch。equals("")||cj.equals(”")){JOptionPane.showMessageDialog(null,”輸入框不允許為空");} else{ResultSetr=s.executeQuery(”select*from成果信息表where學(xué)號(hào)=’"+xh+"'and課程號(hào)=’"+kch+”’"); r.last(); inti=Integer。parseInt(cj); if(r.getRow()==1) {JOptionPane。showMessageDialog(null,"該同學(xué)該科成果已存在”);} else{s。executeUpdate(”insertinto成果信息表values(’"+xh+”',’”+kch+"’,’”+i+"’)”);JOptionPane。showMessageDialog(null,”<html〉”+”學(xué)號(hào):”+xh+”〈br>” +”課程號(hào):"+kch+”<br>”+"成果:"+cj+"<br>同學(xué)成果添加成功!");}}} catch(Exceptione){JOptionPane。showMessageDialog(null,"成果輸入的學(xué)號(hào)或者課程號(hào)不存在!”);}}publicvoidUpdateScore(Stringxh,Stringkch,Stringcj){ try{ Class.forName("sun。jdbc。odbc。JdbcOdbcDriver"); Connectionc=DriverManager。getConnection(”jdbc:odbc:同學(xué)信息系統(tǒng)"); Statements=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet。CONCUR_UPDATABLE);if(xh。equals("")||kch。equals(””)||cj。equals("”)){JOptionPane。showMessageDialog(null,"輸入框不允許為空");} else{inti=Integer.parseInt(cj); ResultSetr=s。executeQuery(”select*from成果信息表where學(xué)號(hào)='"+xh+”'and課程號(hào)='”+kch+”'”); r。last(); if(r。getRow()==1) {s。executeUpdate(”update成果信息表set成果=’"+i+"’where學(xué)號(hào)='”+xh+"’and課程號(hào)='"+kch+"'"); JOptionPane.showMessageDialog(null,"同學(xué)成果修改成功!");} else{ JOptionPane。showMessageDialog(null,"成果表中并無(wú)相關(guān)記錄!”); }; }}catch(Exceptione) {JOptionPane。showMessageDialog(null,"學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄!”);}} publicvoidDeleteScore(Stringxh,Stringkch){try { Class。forName(”sun。jdbc。odbc。JdbcOdbcDriver”); Connectionc=DriverManager。getConnection(”jdbc:odbc:同學(xué)信息系統(tǒng)”); Statements=c。createStatement( ResultSet。TYPE_SCROLL_SENSITIVE, ResultSet。CONCUR_UPDATABLE); ResultSetr=s.executeQuery(”select*from成果信息表where學(xué)號(hào)=’"+xh+”’and課程號(hào)='"+kch+"’”); r.last(); if(r.getRow()==1){ s。executeUpdate("deletefrom成果信息表where學(xué)號(hào)=’"+xh+”'and課程號(hào)='”+kch+”'"); JOptionPane.showMessageDialog(null,"同學(xué)記錄刪除成功!”);} else{JOptionPane。showMessageDialog(null,”學(xué)籍系統(tǒng)中并無(wú)相關(guān)記錄!”);} }catch(Exceptione) {}}publicvoidSearchScore(Stringxh){ JFramem=newJFrame(”學(xué)號(hào)”+xh+”的各科成果”); m.setBounds(60,70,326,320); m。setVisible(true); JTextAreaaa=newJTextArea(); aa。setBounds(0,0,326,320); Containerc1=m.getContentPane(); c1。setLayout(null); c1。add(aa); try{ Class。forName(”sun。jdbc。odbc.JdbcOdbcDriver”);Connectionc=DriverManager.getConnection("jdbc:odbc:同學(xué)信息系統(tǒng)"); Statements=c。createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSetr1=s。executeQuery(”select學(xué)號(hào),課程名稱,成果from成果信息表join課程信息表on成果信息表.課程號(hào)=課程信息表.課程號(hào)”+ "where學(xué)號(hào)='”+xh+"'"); r1。last(); aa。append(”查詢到該同學(xué)"+r1。getRow()+”科成果"+"\n"); r1。beforeFirst(); aa。append("學(xué)號(hào)"+"\t”+"課程名稱”+”\t"+”成果”+"\n”); while(r1.next()) {aa。append(r1.getString(”學(xué)號(hào)”)); aa。append("\t"+r1。getString("課程名稱”)); aa。append("\t"+r1.getString(”成果")+”\n”); }} catch(Exceptione) {e。printStackTrace();}}publicvoidListAll(Stringbanji){ JFramem=newJFrame(banji+”班成果排名"); m.setBounds(60,70,413,319); m.setVisible(true); JTextAreaaa=newJTextArea(); aa。setBounds(0,0,413,319); Containerc1=m。getContentPane(); c1。setLayout(null); c1.add(aa); try{Class。forName(”sun.jdbc.odbc。JdbcOdbcDriver”); Connectionc=DriverManager.getConnection(”jdbc:odbc:同學(xué)信息系統(tǒng)"); Statements; s=c。createStatement( ResultSet。TYPE_SCROLL_SENSITIVE,ResultSet。CONCUR_UPDATABLE);Stringsql="execute全班排名'”+banji+”'”; ResultSetr1=s。executeQuery(sql); r1。last();aa.append(”\t學(xué)號(hào)”+"\t"+”姓名"+”\t"+”平均分"+”\t”+"總分"+”\n”); r1.beforeFirst(); for(inti=1;r1。next();i++) {aa。append("第"+i+"名:”); aa.append(r1。getString("學(xué)號(hào)”)); aa。append("\t”+r1。getString(”姓名")); aa.append("\t"+r1。getString("平均分")); aa.append(”\t”+r1.getString("總分")+”\n"); }} catch(Exceptione){ e.printStackTrace(); }} publicvoidListOne(Stringstr1,Stringstr2){ JFramem=newJFrame(str2+"班”+str1+”科”+”成果排名”); m.setBounds(60,70,326,320); m。setVisible(true); JTextAreaaa=newJTextArea(); aa。setBounds(0,0,326,320); Containerc1=m。getContentPane(); c1。setLayout(null); c1.add(aa); try{Class。forName(”sun。jdbc.odbc。JdbcOdbcDriver”); Connectionc=DriverManager.getConnection("jdbc:odbc:同學(xué)信息系統(tǒng)”); Statements;s=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet。CONCUR_UPDATABLE); Stringsql="execute單科成果排名’”+str1+"',"+”'"+str2+”'”; ResultSetr1=s。executeQuery(sql);r1.last(); aa。append("\t”+"學(xué)號(hào)"+"\t"+”姓名"+”\t"+”成果”+"\n");r1。beforeFirst(); for(inti=1;r1。next();i++) {aa.append(”第"+i+"名:”); aa.append(r1。getString(”學(xué)號(hào)”)); aa.append("\t”+r1。getString("姓名”)); aa。append("\t"+r1。getString("成果”)+"\n");}} catch(Exceptione){ e。printStackTrace(); }}publicvoidAddTeacher(Stringid,Stringxm,Stringmm,Stringkch,Stringkcm){ try{ Class。forName("sun。jdbc。odbc.JdbcOdbcDriver”); Connectionc=DriverManager.getConnection(”jdbc:odbc:同學(xué)信息系統(tǒng)"); Statements=c.createStatement( ResultSet。TYPE_SCROLL_SENSITIVE, ResultSet。CONCUR_UPDATABLE); if(id.equals("")||mm。equals("”)||kch.equals("”)||kcm.equals("”)){JOptionPane。showMessageDialog(null,"輸入框不允許為空");}else{ResultSetr=s。executeQuery(”select*from老師信息表where老師信息表.老師ID=’"+id+"'”); r.last(); if(r.getRow()==1) {JOptionPane。showMessageDialog(null,”您輸入的老師ID已存在已存在”);} else{s。executeUpdate("insertinto老師信息表values('”+id+"’,'"+xm+"',’”+mm+”')”); s.executeUpdate(”insertinto課程信息表values('”+kch+"’,’”+kcm+”’,’”+id+”')”); JOptionPane。showMessageDialog(null,”〈html〉”+"老師ID:"+id+”〈br>”
溫馨提示
- 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 工作總結(jié)之股票模擬實(shí)習(xí)總結(jié)
- 國(guó)開(kāi)《兒童發(fā)展問(wèn)題的咨詢與輔導(dǎo)》案例1-5
- 銀行合規(guī)管理制度實(shí)施改進(jìn)
- 酒店餐廳食品安全管理制度
- 二次結(jié)構(gòu)施工合同
- 幼兒秋季保健工作計(jì)劃
- 招聘方案范文【范例15篇】
- 小學(xué)語(yǔ)文教學(xué)經(jīng)驗(yàn)交流發(fā)言稿(19篇)
- 供應(yīng)鏈新質(zhì)生產(chǎn)力發(fā)展趨勢(shì)-2024
- 《機(jī)械制造基礎(chǔ)》課件 模塊6 機(jī)床專用夾具的設(shè)計(jì)過(guò)程
- 【MOOC】農(nóng)產(chǎn)品貿(mào)易-福建農(nóng)林大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- 連云港市農(nóng)商控股集團(tuán)限公司2024年專業(yè)技術(shù)人員招聘【重點(diǎn)基礎(chǔ)提升】模擬試題(共500題)附帶答案詳解
- 石文化與寶玉石鑒賞智慧樹(shù)知到期末考試答案2024年
- 鉆咀培訓(xùn)資料
- 《設(shè)計(jì)調(diào)查問(wèn)卷》教學(xué)設(shè)計(jì)范文
- 常用抗凝藥物的應(yīng)用及護(hù)理PPT課件
- 枇杷栽培技術(shù)26661
- 離退休干部管理崗試題
- 鋼板樁圍堰監(jiān)測(cè)方案
- 學(xué)校五個(gè)不直接分管制度
- 青島海事局平臺(tái)建設(shè)方案
評(píng)論
0/150
提交評(píng)論