




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
基于數據倉庫的決策支持系統(tǒng)的分析(完整資料)(可以直接使用,可編輯優(yōu)秀版資料,歡迎下載)
基于數據倉庫的決策支持系統(tǒng)的分析(完整資料)(可以直接使用,可編輯優(yōu)秀版資料,歡迎下載)基于數據倉庫的決策支持系統(tǒng)的分析專業(yè):信息管理與信息系統(tǒng)班級:信管本科班學號:姓名:日期:2015年6月30日摘要:數據倉庫的出現解決了Dss應用的基礎性問題一一數據管理,即通過數據倉庫將數據庫系統(tǒng)中的原始數據組織成適合決策分析需要的分析型數據。伴隨數據倉庫技術出現的數據挖掘技術和聯機分析處理(OLAP)技術又為數據分析提供了強有力的支持.這樣,基于數據倉庫的決策支持系統(tǒng)集成了數據倉庫、數據挖掘、聯機分析處理等多種信息處理技術,是一種新形式的決策支持系統(tǒng),是輔助企業(yè)管理者做出正確決策的理想系統(tǒng)?;跀祿}庫的決策支持系統(tǒng)的應用己慢慢開始起步,對其進行理論上的研究將具有很大的實用意義。關鍵詞:決策支持系統(tǒng);數據倉庫;聯機分析處理;數據挖掘Abscract:Datawarehousecanmeettherequirementsofthedat(yī)abasemanagementsubsystemsofDSSandorganizeprimitivedatainthedat(yī)abasestoanalyticaldatasuitedtoadministrativedecision。Withtheemergenceofdatawarehouse,dataminingtechnologyandOLAPtechnologyalsocomeout.Thesetwotechnologiesprovidethepowerfulsupportfordataanalysis。Thus,DSSbasedondatawarehouseintegratesmanykindsofinfomat(yī)iondisposaltechnology,datawarehousetechnology,dataminingteechnologyandOLAPtechnologyincluded.Itisanewformofperfectsystemassistingcorporativeadministrat(yī)orswithcorrectdecisionmade。Theapplicat(yī)ionofDSSbasedondat(yī)awarehousestandsat(yī)anunderwaystage,soThetheoreticalresearchonthesystemwillmakesenseforpractice.Keyword:DSS;DataWarehouse;OLAP;CustomerAnalysis目錄TOC\o”1-3"\h\uHYPERLINK\l_Toc101051.緒論PAGEREF_Toc101052HYPERLINK\l_Toc277921.l研究背景PAGEREF_Toc2779221.2研究內容PAGEREF_Toc1418431.3本文的研究內容及意義PAGEREF_Toc2220032.決策支持系統(tǒng)的基本理論PAGEREF_Toc201473HYPERLINK\l_Toc93892。1決策支持系統(tǒng)概況PAGEREF_Toc938932。2決策支持新技術PAGEREF_Toc271173HYPERLINK\l_Toc4693.數據倉庫的基本理論PAGEREF_Toc4694HYPERLINK\l_Toc29663.1數據倉庫的基本概念PAGEREF_Toc29664HYPERLINK\l_Toc83423.2數據倉庫的體系結構PAGEREF_Toc8342458244?;跀祿}庫的綜合決策支持系統(tǒng)PAGEREF_Toc58245HYPERLINK\l_Toc289184。1傳統(tǒng)決策支持系統(tǒng)與新決策支持系統(tǒng)的比較PAGEREF_Toc289185HYPERLINK\l_Toc224394.2綜合決策支持系統(tǒng)PAGEREF_Toc224396HYPERLINK\l_Toc3284。3數據倉庫技術在決策支持系統(tǒng)中的作用PAGEREF_Toc3286HYPERLINK\l_Toc292405.總結與展望PAGEREF_Toc292406參考文獻PAGEREF_Toc29271緒論1。l研究背景隨著信息技術的飛速發(fā)展,企業(yè)內部產生了越來越多的數據,但這些數據并沒有產生有用的信息,只是簡單的存儲在數據庫中.為此出現了“數據爆炸,知識貧乏”的窘迫局面。以前,用戶常常在數據的管理、數據的收集上下很大功夫,可是今天的用戶卻發(fā)生了很大的變化:人們不僅想得到數據,更多地是想從這些數據中獲得更大的收益。因為數據就是數據,沒有經過分析的數據是無法決策的,基于數據倉庫的決策支持系統(tǒng)正是迎合了這種需要。1.2研究內容研究與本課題相關的理論和技術,包括決策支持系統(tǒng)的相關理論,數據倉庫構建的相關理論,聯機分析處理技術的相關理論,數據挖掘技術的理論和算法;數據倉庫的設計,包括概念模型設計,邏輯模型設計,物理模型設計;數據的轉換、清洗和裝載方案設計;多維數據集的創(chuàng)建、處理和查詢;根據建立的多維數據集來建立數據挖掘模型,利用微軟聚類算法來實現分類挖掘任務;用Delphi編寫客戶端界面以及整個系統(tǒng)的各個模塊,最終建立一個展現平臺.1。3本文的研究內容及意義安全問題是企業(yè)應用電子商務過程中最擔心的問題,電子商務系統(tǒng)是建立在計算機網絡系統(tǒng)之上的商務系統(tǒng)。對于大多數網民來講,互聯網為人與人、人與企業(yè)之間的交流帶來了更多的便利,然而也為不法分子獲取不法利益提供了更多的途徑。數字簽名是可以解決電子商務活動中否認、偽造、篡改及冒充等問題的一項技術本文通過對電子商務及電子商務安全的描述,逐一介紹電子商務安全內容及其安全需求,釗一對電子商務安全面臨的各種威脅,從安全體系方面說明其應對方式。著重講解電子商務領域中的數字簽名技術及其各種實現方案,對比傳統(tǒng)數字簽名中的不足,說明安全數字簽名的原理及其實現流程.最后重點介紹基于RSA和DES算法的安全數字簽名,設計出一種結合RSA和DES算法的安全數字簽名方案。2。決策支持系統(tǒng)的基本理論2.1決策支持系統(tǒng)概況決策支持系統(tǒng)作為一門新興的信息技術,能夠為企業(yè)提供各種決策信息支持和許多商業(yè)問題的解決方案,從而減輕了管理者從事低層次信息分析、處理的負擔,使得他們專注于最需要決策方面的工作,從而提高決策的質量和效率。它通過結合個人的智力資源和計算機的能力來改進決策的質量。它是一個基于計算機的支持系統(tǒng),服務于處理半結構化或非結構化問題的管理決策制定者.不同的人對決策支持系統(tǒng)有著不同的理解.并且決策支持系統(tǒng)基本結構主要由四部分組成,即數據部分、模型部分、推理部分和人機交互部分。2。2決策支持新技術數據倉庫、聯機分析處理、數據挖掘是20世紀90年代中期在國外興起的3項決策支持技術。數據倉庫是在數據庫的基礎上發(fā)展起來的,數據庫用于事務處理,而數據倉庫可用于決策分析,而且主要用于決策分析,聯機分析處理把數據的組織由二維平面結構擴充到多維空間結構,并提供了多維數據分析方法.數據挖掘則是在人工智能學習中發(fā)展起來的,它是從多個數據庫中發(fā)現知識過程的核心。數據倉庫、聯機分析處理、數據挖掘的結合開創(chuàng)了決策支持系統(tǒng)的新方向,而數據倉庫是3個技術的主體和基礎,沒有基本的數據支撐,就不可能有科學的決策。3。數據倉庫的基本理論3。1數據倉庫的基本概念數據倉庫是一個用以更好地支持企業(yè)或組織決策分析處理的、面向主題的、集成的、不可更新的、隨時間不斷變化的數據集合。數據庫內數據是動態(tài)變化的,只要有業(yè)務發(fā)生,數據就會被更新,而數據倉庫則是靜態(tài)的歷史數據,只能定期添加、刷新。數據庫中的數據結構比較復雜,有各種結構以適合業(yè)務處理系統(tǒng)的需要,而數據倉庫中數據的結構則相對簡單.數據庫中數據訪問頻率較高,但訪問量較少,而數據倉庫的訪問頻率較低但訪問量卻遠高于數據庫的訪問量。數據庫在訪問數據時要求響應速度快,其響應時間一般在幾秒內,而數據倉庫的響應時間則可長達數小時。3.2數據倉庫的體系結構數據倉庫將獨立于業(yè)務數據庫系統(tǒng),但是數據倉庫又同業(yè)務數據庫系統(tǒng)息息相關。也就是說數據倉庫不是簡單地對數據進行存儲,而是對數據進行“再組織”。數據倉庫的體系結構框架是影響數據倉庫性能的關鍵因素之一,數據倉庫的體系結構框架決定了數據加載、訪問和傳遞的方式。在確定數據倉庫結構時需要考慮最終用戶和數據使用部門的數目、數據的多樣性和數量、更新周期,以及存儲訪問的速度。在數據倉庫體系結構中應該設計三個獨立的數據層次:信息獲取層、信息存儲層和信息傳遞層.信息獲取層負責數據的收集、提純、凈化和聚合,以及從外部數據源和業(yè)務處理系統(tǒng)中獲取數據。這些數據應該是準確的,并且要被用于各個部門進行決策支持,因此需要有通用的含義。信息存儲層是一個保存數據的區(qū)域,這些信息是在信息傳遞層次中可以得到的信息.對于支持集成傳遞要求所必需的性能水平,單一的設計會產生消極影響.所以,數據倉庫的一個重要特征就是靈活性,在體系結構中需要利用信息傳遞層來實現靈活性.信息傳遞層是數據倉庫結構中支持一套共用的表示工具和分析工具的組成部分。它通過生成的報表和查詢來提供數據需求。這是最終用戶與數據倉庫交流的層次,也是數據倉庫與用戶接觸的地點。圖1數據倉庫的體系結構基于數據倉庫的綜合決策支持系統(tǒng)在決策支持系統(tǒng)D的研究領域中,以往大多數專家都沿著EDP/MSI/DSS(電子數據處理/管理信息系統(tǒng)/決策支持系統(tǒng))的路線評價DSS的特征與區(qū)別,并且強調DSS對高層決策者和經理人員的信息支持。因此研究的重心大多集中于DSS的模型管理(定量模型和定性模型)、人機界面、智能DSS或基于知識的DSS等。然而,決策支持系統(tǒng)并不僅僅是基于非常復雜的模型的分析與評價,凡是能夠提供管理人員所需要任何信息的全部技術支持形式都應該歸入決策支持的范疇。4。1傳統(tǒng)決策支持系統(tǒng)與新決策支持系統(tǒng)的比較傳統(tǒng)的DSS通常是建立在數據庫(DB)為基礎的關系數據庫管理系統(tǒng)(RDBMS)上,但是,隨著DSS用戶的系統(tǒng)所涉及的數據量的不斷增大,查詢也越來越復雜,這樣傳統(tǒng)的基于數據庫的DSS的弊端也暴露了出來:(1)數據缺乏組織性:數據庫中存儲的是大量的企業(yè)業(yè)務運行數據(oPeartiondat)a,它們來自企業(yè)內部不同部門的日常業(yè)務操作產生的明細數據,是一種原始數據。這些數據因為各個部門的不同需要,而有著有利于各個部門的不同的組織、存儲形式。而DSS需要的則是對這些原始數據進行進一步分類、合并、整理和分析后產生的有組織的信息。(2)數據訪問效率低:企業(yè)在每一階段的業(yè)務都積累了大量的數據,RDB是面向應用的、事務驅動的。應用本來就是千差萬別、零繁瑣碎的,而且為了提高性能,數據還常常被分布在多個子系統(tǒng)中,使得RDBMS對這些數據的訪問十分困難,更難以進行DSS所需的快速分析。(3)數據處理效率低:企業(yè)DSS需要高質量的管理數據,RDB不能提供數據分析,大量的數據不能得到及時的綜合分析,使管理信息系統(tǒng)(MSI)的作用不能充分體現,影響了數據處理的效率.(4)數據不能轉化為有用的信息:DSS通常需要一段歷史時期的數據來分析趨勢,而數據庫一般只存儲短期數據,且各個應用領域的保存期限各不相同,大量的內外運行數據不能轉化為管理決策信息為DSS服務。4.2綜合決策支持系統(tǒng)把數據倉庫、OLAP、數據挖掘、模型庫結合起來形成的綜合決策支持系統(tǒng),是更高級形式的決策支持系統(tǒng)。其中數據倉庫能夠實現對決策主題數據的存儲和綜合,OLAP實現多維數據分析,數據挖掘用以挖掘數據庫和數據倉庫中的知識,模型庫實現多個廣義模型的組合輔助決策,專家系統(tǒng)利用知識推理進行定性分析。它們集成的綜合決策支持系統(tǒng),將相互補充、相互依賴,發(fā)揮各自的輔助決策優(yōu)勢,實現更有效的輔助決策。綜合體系結構的三個主體既可以相互補充又可以相互結合.它可以根據實際問題的規(guī)模和復雜程度決定是采用單個主體輔助決策,還是采用兩個或是三個主體的相互結合輔助決策。利用第一個主體的輔助決策系統(tǒng)就是傳統(tǒng)意義下的決策支持系統(tǒng)。利用第一個主體和第三個主體相結合的輔助決策系統(tǒng)就是智能決策支持系統(tǒng)。在OLAP中利用模型庫的有關模型,可以提高OLAP的數據分析能力.將三個主體結合起來,即利用”問題綜合和交互系統(tǒng)"部件集成三個主體,這樣形成的綜合決策支持系統(tǒng)是一種更高形式的輔助決策系統(tǒng),其輔助決策能力將上一個新臺階。由于這種形式的決策支持系統(tǒng)包含了眾多的關鍵技術,研制過程中將要克服很多困難,這也是我們今后努力的方向.4。3數據倉庫技術在決策支持系統(tǒng)中的作用將數據倉庫用于決策支持系統(tǒng)中,主要有以下幾個方面的作用:(1)增強了決策支持系統(tǒng)決策的客觀性。DSS中數據倉庫的數據是面向分析組織的,比面向應用組織的傳統(tǒng)數據庫更加適合決策分析需求;數據倉庫的數據類型豐富、數據容量大、保存時間長,為預測趨勢、制定決策戰(zhàn)略提供了充足的信息,使決策方案更具客觀性。(2)增強了決策支持系統(tǒng)的實用性.DSS中的數據倉庫集模型庫、方法庫、數據庫為一體,以數據驅動運行模式代替?zhèn)鹘y(tǒng)DSS的模型驅動模式,且實現了分析方法與數據結構相分離,使方法庫及數據的擴充具有相對獨立性。(3)提高了數據查詢、分析效率。數據倉庫通過提取器自動追加數據及數據視圖生成器自動生成數據視圖,能及時快速地準備好各層次數據,使查詢瞬間完成,可大大提高數據獲取效率。(4)具有強大的數據分析工具。利用分析工具OLAP、數據挖掘工具及圖形工具等,使決策者能從各角度分析數據,提供更全面、更豐富的戰(zhàn)略性輔助信息及被忽略的重要因素。(5)具有動態(tài)擴展性能?;跀祿}庫的DSS通過內在反饋機制,使用戶需求逐漸明確,DSS系統(tǒng)結構日趨完善.總結與展望基于數據倉庫的決策支持系統(tǒng)是國外90年代發(fā)展起來的新技術,它一經面世就以其巨大的應用價值和可操作性的技術方案得到了企業(yè)界、學術界和商業(yè)界的高度重視,得到了很快的發(fā)展?,F在,國內很多企業(yè)信息技術應用己達到了一定的階段,積累了大量的數據,GB級的數據量己經很普遍,有的甚至達到了TB級,這樣就為數據倉庫打下了堅實的基礎。另一方面,隨著各個大型數據庫公司的數據倉庫方案的提出、完善,數據倉庫技術的一些難題得到了解決。這些,都是基于數據倉庫的決策支持系統(tǒng)得到快速發(fā)展的原因所在。參考文獻[1]Hhimon著.王志海等譯.數據倉庫.機械工業(yè)出版社.[2]埃里克A海爾菲特著.張建軍主譯.財務分析技術。中國財政經濟出版社,2009.[3]MaXiaoqiang.Suryondatawarehousing.TeehniealReport.2015至2016第二學期期末考試課程:java語言程序設計題目:學生信息管理系統(tǒng)類別:論文□設計√院系:計算機與信息工程系專業(yè)班級:信息管理2013級本科1班學號:03,04,07,08,15學生姓名:邱丹丹,范柳,譚鴻儒,何婧,陸瑤任課教師:周方完成時間:2016年6月24日教務處制二○一五年九月目錄TOC\o”1—3"\h\z\uHYPERLINK\l”_Toc453617927”1。學生信息管理系統(tǒng)概述21。1研究背景2HYPERLINK\l”_Toc453617929”1。2開發(fā)意義2HYPERLINK\l”_Toc453617930”2。1開發(fā)環(huán)境和軟件3HYPERLINK\l”_Toc453617931”2.2系統(tǒng)設計與功能分析3HYPERLINK\l”_Toc453617932”2。3功能層次圖43數據庫設計43.1系統(tǒng)概念結構設計43。3數據庫實現73。3。1數據庫關系圖73。3.2SQL語句實現74.系統(tǒng)模塊詳細設計104.2各用戶操作模塊11HYPERLINK\l”_Toc453617942”4.2。1管理員操作模塊(圖1)114。2.2教師操作模塊(圖2)11HYPERLINK\l”_Toc453617944"4。2。3學生操作模塊(圖3)11_Toc453617946"5.1管理員登錄12HYPERLINK\l”_Toc453617947"5.2教師登錄15HYPERLINK\l”_Toc453617948"5.3學生登錄206.課程設計總結23HYPERLINK\l”_Toc453617950"7.附錄(代碼)2311學生信息管理系統(tǒng)1.學生信息管理系統(tǒng)概述1。1研究背景學生信息管理系統(tǒng)是學校管理的重要工具,是學校不可或缺的部分。隨著在校大學生人數的不斷增加,教務系統(tǒng)的數量也不斷的上漲,。學校工作繁雜、資料眾多,人工管理信息的難度也越來越大,顯然是不能滿足實際的需要,效率也是很低的。并且這種傳統(tǒng)的方式存在著很多的弊端,如:保密性差、查詢不便、效率低,很難維護和更新等。然而,本系統(tǒng)針對以上缺點能夠極大地提高學生信息管理的效率,也是科學化、正規(guī)化的管理,與世界接軌的重要條件。所以如何自動高效地管理信息是這些年來許多人所研究的。1.2開發(fā)意義隨著這些年電腦計算機的速度質的提高,成本的下降,IT互聯網大眾趨勢的發(fā)展。我們使用電腦的高效率才處理數據信息成為可能。學生學籍管理系統(tǒng)的出現,正是管理人員與信息數據,計算機的進入互動時代的體現。友好的人機交互模式,清晰簡明的圖形界面,高效安全的操作使得我們對成千上萬的信息的管理得心應手。通過這個系統(tǒng),可以做到信息的規(guī)范管理,科學統(tǒng)計和快速的查詢,從而減少管理方面的工作量?毋庸置疑,切實有效地把計算機管理引入學校教務管理中,對于促進學校管理制度,提高學校教學質量與辦學水平有著顯著意義?2。系統(tǒng)需求分析2.1開發(fā)環(huán)境和軟件(1)操作系統(tǒng):Windows7(2)數據庫軟件:mysql—5。7.13—winx64(3)Java開發(fā)工具:Eclipsemysql-connector-java—5(JDBC驅動包)jdk—8u73—windows-x64(java運行環(huán)境壓縮包)2。2系統(tǒng)設計與功能分析學生信息管理系統(tǒng),可用于學校等機構的學生信息管理,查詢,更新與維護,使用方便,易用性強,圖形界面清晰明了。該軟件用java語言編寫,用SQLServer2005數據庫作為后臺的數據庫進行信息的存儲,用SQL語句完成學生學籍信息的添加,查詢,修改,刪除的操作以及成績的錄入,修改,刪除等。用ODBC驅動實現前臺Java與后臺SQL數據庫的連接。Java語言跨平臺性強,可以在windows,linux,ubuntu等系統(tǒng)下使用,方便簡單,安全性好.SQLServer2005數據庫高效安全,兩者結合可相互利用各自的優(yōu)勢.該系統(tǒng)實現的大致功能:用戶登陸界面。該界面可以選擇使用者的身份,“管理員,教師,學生”。不同的身份有不同的操作界面和功能權限.ID號和密碼輸入正確即可登錄。學生管理界面。提供了學生學籍信息的查詢,相關科目的成績查詢和排名,修改登錄密碼等功能。教師管理界面.提供了對學生學籍信息的查詢,添加,修改,刪除;學生成績的錄入,修改,刪除,查詢班級排名。修改密碼等功能。管理員管理界面。擁有最高的權限。允許添加教師信息和課程信息等.登錄的用戶信息分別存儲在SQL數據庫的“管理員信息表”,“教師信息表",“學籍信息表”中,如果用戶信息不存在則三張表中,將會無權利登錄本管理系統(tǒng)。保證了本學生管理系統(tǒng)的安全性.功能層次圖數據庫設計3.1系統(tǒng)概念結構設計教師ID教師ID課程號教師課程號教師教師姓名教師姓名課程名稱課程登錄密碼課程名稱課程登錄密碼教師ID教師ID學號課程號成績學號課程號成績姓名成績姓名成績學號學號管理員ID性別學籍管理員ID性別學籍管理員籍貫管理員籍貫登錄密碼登錄密碼班級號班級號班級籍貫班級籍貫登錄密碼登錄密碼總人數班級號班級名稱總人數班級號班級名稱實體屬性表:實體屬性教師教師ID,教師姓名,登錄密碼課程課程號,課程名稱,教師ID管理員管理員ID,登錄密碼班級班級號,班級名稱,總人數學籍學號,姓名,性別,班級號,籍貫,登錄密碼成績學號,課程號,成績3.2系統(tǒng)邏輯結構設計教師信息表:字段名類型空值約束條件教師IDvarchar(8)notnull主鍵教師姓名varchar(8)notnull登錄密碼varchar(8)notnull課程信息表:字段名類型空值約束條件課程號varchar(8)notnull主鍵課程名稱varchar(12)notnull教師IDvarchar(8)notnull外鍵班級信息表:字段名類型空值約束條件班級號varchar(8)notnull主鍵班級名稱varchar(8)notnull所屬學院varchar(6)班級人數nchar(4)管理員信息表:字段名類型空值約束條件管理員IDvarchar(10)notnull主鍵登錄密碼varchar(10)notnull成績信息表:字段名類型空值約束條件班級號varchar(15)notnull主鍵,外鍵班級名稱varchar(8)notnull主鍵,外鍵所屬學院smallintnotnull學籍信息表:字段名類型空值約束條件學號intnotnull主鍵姓名varchar(30)notnull性別char(2)班級號varchar(30)notnull
外鍵籍貫char(10)
登錄密碼moneynotnull3。3數據庫實現3。3.1數據庫關系圖SQL語句實現數據表的創(chuàng)建:(1)教師信息表創(chuàng)建:createtable教師信息表(教師IDvarchar(8)primarykey,教師姓名varchar(8)notnullunique,登錄密碼varchar(8)notnull,)(2)課程信息表創(chuàng)建:createtable課程信息表(課程號varchar(8)primarykey,課程名稱varchar(12)notnull,教師IDvarchar(8)notnullforeignkey(教師ID)references教師信息表(教師ID))(3)班級信息表創(chuàng)建:createtable班級信息表(班級號varchar(8)notnullprimarykey,班級名稱varchar(8)notnullunique,所屬學院varchar(8),班級人數nchar(4))(4)學籍信息表創(chuàng)建:createtable學籍信息表(學號varchar(15)primarykey,姓名varchar(8)notnull,性別varchar(4),班級號varchar(8)notnull,籍貫varchar(5),登錄密碼varchar(6)notnullforeignkey(班級號)references班級信息表(班級號))(5)成績信息表創(chuàng)建:createtable成績信息表(學號varchar(15),課程號varchar(8),成績smallintprimarykey(學號,課程號)foreignkey(學號)references學籍信息表(學號),foreignkey(課程號)references課程信息表(課程號))(6)管理員信息表創(chuàng)建:createtable課程信息表(管理員IDvarchar(8)primarykey,登錄密碼varchar(12)notnull)視圖的創(chuàng)建:(1)“教師課程詳細信息”視圖創(chuàng)建:createview教師課程詳細信息asSELECT教師信息表.教師ID,教師信息表。教師姓名,課程信息表.課程號,課程信息表。課程名稱,教師信息表。登錄密碼FROM教師信息表JOIN課程信息表ON教師信息表.教師ID=課程信息表.教師ID(2)“學生成績信息”視圖創(chuàng)建:createview學生成績信息asSELECT學籍信息表。學號,學籍信息表.姓名,學籍信息表。性別,課程信息表。課程名稱,成績信息表.成績FROM成績信息表JOIN學籍信息表ON成績信息表.學號=學籍信息表。學號JOIN班級信息表ON班級信息表.班級號=學籍信息表.班級號JOIN課程信息表ON課程信息表。課程號=成績信息表.課程號存儲過程創(chuàng)建:(1)“單科成績排名"創(chuàng)建:createproc[dbo].[單科成績排名]@kechennamechar(8),@classnamechar(8)asselect學籍信息表.學號,姓名,成績from成績信息表join課程信息表on課程信息表。課程號=成績信息表.課程號join學籍信息表on學籍信息表。學號=成績信息表.學號join班級信息表on班級信息表.班級號=學籍信息表。班級號where課程名稱=@kechennameand班級名稱=@classnameorderby成績desc(2)“全班排名"創(chuàng)建:createproc[dbo].[全班排名]@classchar(8)asselect學籍信息表。學號,姓名,avg(成績)as平均分,sum(成績)as總分from成績信息表join學籍信息表on成績信息表。學號=學籍信息表。學號join班級信息表on班級信息表。班級號=學籍信息表。班級號where班級信息表。班級名稱=@classgroupby學籍信息表.姓名,學籍信息表。學號orderbyavg(成績)desc,學籍信息表。學號4。系統(tǒng)模塊詳細設計用戶登錄模塊4。2各用戶操作模塊管理員操作模塊(圖1)4。2。2教師操作模塊(圖2)4。2。3學生操作模塊(圖3)圖1圖2圖35.系統(tǒng)運行與測試5。1管理員登錄點擊“管理員”按鈕。輸入正確的ID和密碼。驗證成功則可進入管理員管理界面.管理員ID號和登錄密碼存在數據庫中的管理員信息表.表中存在的管理員才允許登錄。(1)添加教師信息。在彈出的輸入欄中輸入正確的數據,點擊“確認添加”.如果輸入重復的信息則會彈出。如果某項未填則彈出.輸入的數據會分別寫進“教師信息表”和“課程信息表”中。增加的教師信息,允許讓更多的教師登錄本系統(tǒng)進行管理操作!(2)修改教師信息如果要修改的教師信息不存在,則(3)刪除信息修改輸入的教師信息不存在,則(4)查詢教師信息5.2教師登錄在登錄界面選擇“教師”按鈕,并輸入正確的ID號和密碼,即可登錄成功!輸入錯誤則會彈出提示!ID號輸入正確,登錄成功!進入教師管理的操作界面:(1)顯示學生信息。(2)添加學生信息新添加的信息會保存在學籍信息表中!如果輸入的信息已經存在,則顯示如果輸入的數據正確,則(3)修改學生信息,輸入正確則顯示!(4)刪除學生信息,(5)錄入學生成績(6)修改學生成績(7)刪除學生成績(8)查詢學生成績(9)所有成績排名(10)單科成績排名(11)更改登錄密碼修改成功后即可用新的密碼進行登錄!5.3學生登錄輸入正確的ID號和密碼,即可正常登錄!顯示學生信息查詢個人成績(3)單科成績排名(4)全班成績排名(5)修改密碼修改密碼后會更新學生學籍表里面的登錄密碼,下次就可以用新密碼登錄。點擊后,就可以安全退出學生管理系統(tǒng)了!6.課程設計總結課程設計是培養(yǎng)學生綜合運用所學知識,發(fā)現,提出,分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對學生實際工作能力的具體訓練和考察過程。本次課程設計雖然很辛苦,實在是受益匪淺。本來這門課的知識學的就不夠扎實,本次課程設計,在設計過程中碰到了很多問題,剛開始要設計的時候,還真不知道從哪里下手但最終在圖書、同學和老師的幫助下都得到了解決,讓我學會了好多書本上沒有的東西,通過本次課程設計我也能將課本上的知識融會貫通,起到了很好的輔助學習的效果,但是我發(fā)現我學到的知識比整整一個學期學到的都多.理論和實踐的相結合是學習最有效的方法。在設計的過程中發(fā)現了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固,通過這次課程設計之后,一定把以前所學過的知識重新溫故.通過這次課程設計使我懂得了理論與實際相結合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,才能真正為社會服務,從而提高自己的實際動手能力和獨立思考的能力。7.附錄(代碼)由于篇幅有限,所以只附上主要功能的代碼:登陸界面與主功能界面:publicclassLoginextendsJFrameimplementsActionListener{ JFramemm=newJFrame("您好!請您先登錄!"); JTextFieldt2=newJTextField(null,15);JTextFieldt4=newJPasswordField(null,15);publicStringzh=null;JRadioButtonb=newJRadioButton(”教師"); JRadioButtonb1=newJRadioButton("學生”); JRadioButtonb2=newJRadioButton("管理員");publicvoidjiemian(){mm.setSize(300,340);mm。setVisible(true);mm.setLocation(200,300);mm。setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JLabelt1=newJLabel(”ID號:"); 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:學生信息系統(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(”學生信息管理:");JLabelaaa1=newJLabel(”學生成績管理:"); JButtonb1=newJButton(”顯示學生信息");b1。setBounds(40,45,140,30); JButtonb2=newJButton(”添加學生信息");b2。setBounds(200,45,140,30); JButtonb3=newJButton(”修改學生信息");b3。setBounds(40,90,140,30); JButtonb4=newJButton("刪除學生信息");b4。setBounds(200,90,140,30); JButtonb5=newJButton("錄入學生成績");b5.setBounds(40,170,140,30); JButtonb6=newJButton("修改學生成績”);b6。setBounds(200,170,140,30); JButtonb7=newJButton("刪除學生成績”);b7.setBounds(40,215,140,30); JButtonb8=newJButton("查詢學生成績");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);。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或密碼有誤!請重新輸入!");} }catch(Exceptione1) {e1.printStackTrace();}}}publicstaticvoidmain(Stringargs[]){Loginapp=newLogin(); app.jiemian(); }}向數據庫添加新的學生信息:classDataBase{//DataBase類publicstaticConnectiongetConnection()throws SQLException,java.lang。ClassNotFoundException{ //建立本地數據庫連接,編碼規(guī)則轉換為正常錄入中文) Stringurl="jdbc:mysql://localhost:3306/studentmanagement?useUnicode=true&characterEncoding=GBK"; Class。forName("com.mysql.jdbc.Driver"); StringuserName="root”; Connectioncon=DriverManager.getConnection(url,userName,”"); returncon; }publicvoidAdd(Stringxh,Stringxm,Stringxb,Stringbj,Stringjg,Stringmm)throwsSQLException{//為學籍管理系統(tǒng)添加新記錄try{StatementDataBaseCreate=null; Connectioncon=DataBaseCreate。getConnection(); Statements; s=con。createStatement( ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);ResultSetr=s。executeQuery(”select*from學籍信息表where學號=’"+xh+"’"); r.last();if(r.getRow()==1) {JOptionPane。showMessageDialog(null,"該學號的學生信息已存在”);}Elseif(xh.equals("")){//判斷新輸入的學號是否為空 JOptionPane.showMessageDialog(null,"學號不能為空”);}else{s.executeUpdate("insertinto學籍信息表values(’"+xh+”',’"+xm+"',’”+xb+"',’”+bj+"’,'”+jg+"’,'”+mm+"’)");s。close();c.close();JOptionPane。showMessageDialog(null,"〈html>”+"學號:”+xh+"<br>"+”姓名:”+xm+"<br>”+"性別:”+xb+”〈br〉"+”班級號:"+bj+"<br>”+"籍貫:"+jg+"<br〉” +"登錄密碼:”+mm+"〈br>學生記錄添加成功!");} }catch(ClassNotFoundExceptione) {JOptionPane。showMessageDialog(null,”數據添加異常!”);} }publicvoidDisplayAll(ResultSetr){ JFramem=newJFrame(”顯示所有學生信息"); 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學號"+"\t"+”姓名"+”\t”+”性別"+”\t"+”班級”+"\t"+"籍貫"+”\n"); r.beforeFirst();while(r.next()) {aa。append(”第”+r。getRow()+”行記錄:"); aa.append(r.getString(”學號”)); aa。append("\t"+r。getString("姓名")); aa.append(”\t”+r.getString(”性別”)); aa。append("\t"+r。getString(”班級")); aa。append(”\t"+r.getString(”籍貫”)+”\n"); }}catch(Exceptione) { e.printStackTrace();}}publicvoidDisplayOne(Stringstr22)throwsException {try {StatementDataBaseCreate=null; Connectioncon=DataBaseCreate。getConnection(); Statements; s=con。createStatement( ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet。CONCUR_UPDATABLE); ResultSetr=s.executeQuery("select學號,姓名,性別,班級名稱as班級,籍貫from學籍信息表join班級信息表on班級信息表.班級號=學籍信息表.班級號where學號=’"+str22+”'”);//執(zhí)行查詢的SQL語句r。last(); intcc=r.getRow();if(cc==0){ JOptionPane.showMessageDialog(null,"未查詢到相關信息!");}else{r。beforeFirst();while(r。next()) {JOptionPane.showMessageDialog(null,”〈html〉”+”學號:"+r.getString("學號”)+”〈br>”+”姓名:”+r.getString(”姓名")+"<br〉” +”性別:”+r.getString("性別")+”〈br>"+"班級:”+r。getString(”班級")+”〈br〉" +”籍貫:"+r.getString("籍貫”)+"〈br〉已查詢到相關記錄!”); }}}catch(Exceptione) {e.printStackTrace();}}publicvoidDeleteXh(Stringstr11)//執(zhí)行按學號刪除學生記錄的操作{try {StatementDataBaseCreate=null; Connectioncon=DataBaseCreate.getConnection(); Statements; s=con。createStatement( ResultSet。TYPE_SCROLL_SENSITIVE,ResultSet。CONCUR_UPDATABLE);ResultSetr=s。executeQuery(”select*from學籍信息表where學號=’"+str11+"'"); r。last();if(r。getRow()==1){s.executeUpdate("deletefrom學籍信息表where學號='”+str11+"’"); JOptionPane.showMessageDialog(null,"學生記錄刪除成功!”); }else{JOptionPane。showMessageDialog(null,”學籍系統(tǒng)中并無相關記錄!");} }catch(Exceptione) {}}publicvoidDeleteXm(Stringstr13)//執(zhí)行按姓名刪除學生記錄的操作{try {StatementDataBaseCreate=null; Connectioncon=DataBaseCreate.getConnection(); Statements; s=con。createStatement( ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);ResultSetr=s.executeQuery(”select*from學籍信息表where姓名='”+str13+”'”); r.last();if(r。getRow()==1) {s.executeUpdate(”deletefrom學籍信息表where姓名='"+str13+"’”); JOptionPane.showMessageDialog(null,"學生記錄刪除成功!");}else{JOptionPane.showMessageDialog(null,"學籍系統(tǒng)中并無相關記錄!");} }catch(Exceptione) {}}publicvoidUpdateXh(Stringxg,Stringstr15,Stringstr16){try{StatementDataBaseCreate=null; Connectioncon=DataBaseCreate.getConnection(); Statements; s=con。createStatement( ResultSet。TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);ResultSetr=s.executeQuery("select*from學籍信息表where學號=’"+xg+”'"); r。last(); if(r.getRow()==1) {s。executeUpdate(”update學籍信息表set"+str15+"=’"+str16+"’where學號='"+xg+”’”);//直接執(zhí)行SQL語句修改JOptionPane.showMessageDialog(null,”學生記錄修改成功!"); }else{ JOptionPane。showMessageDialog(null,”學籍系統(tǒng)中并無相關記錄!"); };}catch(Exceptione) {JOptionPane。showMessageDialog(null,”學籍系統(tǒng)中并無相關記錄!"); }}publicvoidUpdateXm(Stringstr18,Stringstr19,Stringstr20){try{StatementDataBaseCreate=null; Connectioncon=DataBaseCreate。getConnection(); Statements; s=con.createStatement( ResultSet。TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); ResultSetr=s.executeQuery(”select*from學籍信息表where姓名=’”+str18+"'"); r。last(); if(r.getRow()==1) {s。executeUpdate("update學籍信息表set"+str19+"=’"+str20+”'where姓名='”+str18+"’");//直接執(zhí)行SQL語句修改 JOptionPane。showMessageDialog(null,”學生記錄修改成功!");}else{JOptionPane。showMessageDialog(null,”學籍系統(tǒng)中并無相關記錄!"); };}catch(Exceptione) {JOptionPane。showMessageDialog(null,"學籍系統(tǒng)中并無相關記錄!"); }}publicvoidAddScore(Stringxh,Stringkch,Stringcj){try{StatementDataBaseCreate=null; Connectioncon=DataBaseCreate。getConnection(); Statements; s=con。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學號='”+xh+”'and課程號='"+kch+"’”); r.last();inti=Integer。parseInt(cj);if(r.getRow()==1) {JOptionPane.showMessageDialog(null,"該學生該科成績已存在”);}else{s.executeUpdate("insertinto成績信息表values(’”+xh+”’,'"+kch+"’,'"+i+"')");JOptionPane。showMessageDialog(null,”<html>”+”學號:"+xh+”〈br〉” +”課程號:"+kch+"<br〉”+”成績:"+cj+”〈br>學生成績添加成功!");}}}catch(Exceptione){JOptionPane。showMessageDialog(null,”成績輸入的學號或者課程號不存在!”);}}publicvoidUpdateScore(Stringxh,Stringkch,Stringcj){try{StatementDataBaseCreate=null; Connectioncon=DataBaseCreate。getConnection(); Statements; s=con.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學號=’”+xh+"'and課程號=’"+kch+"'"); r。last(); if(r。getRow()==1) {s。executeUpdate("update成績信息表set成績='"+i+"’where學號='"+xh+”'and課程號=’”+kch+”’”); JOptionPane.showMessageDialog(null,”學生成績修改成功!");}else{ JOptionPane。showMessageDialog(null,”成績表中并無相關記錄!”); }; }}catch(Exceptione) {JOptionPane。showMessageDialog(null,"學籍系統(tǒng)中并無相關記錄!");}}publicvoidDeleteScore(Stringxh,Stringkch){try {StatementDataBaseCreate=null; Connectioncon=DataBaseCreate.getConnection(); Statements; s=con。createStatement( ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); ResultSetr=s.executeQuery("select*from成績信息表where學號='"+xh+”’and課程號=’"+kch+"'”); r.last();if(r。getRow()==1){ s。executeUpdate(”deletefrom成績信息表where學號='"+xh+"’and課程號=’"+kch+"’”); JOptionPane.showMessageDialog(null,"學生記錄刪除成功!”);}else{JOptionPane.showMessageDialog(null,"學籍系統(tǒng)中并無相關記錄!”);} }catch(Exceptione) {}}publicvoidSearchScore(Stringxh){ JFramem=newJFrame(”學號"+xh+"的各科成績”); m。setBounds(60,70,326,320); m。setVisible(true); JTextAreaaa=newJTextArea(); aa.setBounds(0,0,326,320); Containerc1=m。getContent
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新解讀《CB-T 3873-1999舷窗矩形窗密封墊料》新解讀
- 新解讀《CB-T 60 - 1999船用眼板》新解讀
- 質量保證措施
- 論土地所有權和使用權爭議處理
- 汽車傳感器與檢測技術電子教案:霍爾式節(jié)氣門位置傳感器
- 濟南市佳興天城營銷推廣策略報告52p
- 介紹家鄉(xiāng)教學活動方案
- 物理中考一輪復習教案 第一講 聲現象
- 從裝開業(yè)活動方案
- 倉鼠手工活動方案
- HPProLiantDL系列PC服務器維護手冊
- 齊魯醫(yī)學四肢骨連結
- 《運營管理》案例庫
- 中國石化加油站視覺形象(vi)標準手冊
- 化工原理第十三章-萃取課件
- 美容院衛(wèi)生管理制度(常用版)
- 機場行李輸送系統(tǒng)設計論文-本科論文
- 白帶常規(guī)報告單模板
- 2022年全國工會財務知識大賽參考題庫精簡600題(含各題型)
- 《國學典籍英譯》課程教學大綱
- 校外畢業(yè)設計(實習)申請表模板.docx
評論
0/150
提交評論