選課系統的資料庫設計
❶ 學生選課管理系統的表由什麼組成
包括學生登陸、學生選課、刪除選課、按院系/名稱查找選課、個人信息修改,教師登陸、新增課程、選課查詢、個人信息管理等功能。
學生選課管理系統分為三端:學生端,教師端和管理員端,管理員端:管理員可以查看學生,教師,班級,選課列表,並對學生,教師,班級信息進行增刪改查。
學生選課管理系統簡介
學生管理系統功能畢竟太過寬泛,也難以在短時間內完成。所以為了能夠按時有效地完成系統的設計與調試,我們小組選擇了學生管理系統的一個方面——學生選課系統來進行設計完成。
從學生選課系統的需求分析到資料庫的設計,包括邏輯設計、物理設計等,在到最後的實現與維護一一呈現出來,包括最初的設計理念,資料庫具體覺得建立以及數據的輸入、管理及更新。包括實現學生選課功能、教師錄入成績功能,管理員對資料庫信息的增刪改查功能一應俱全。
❷ 學生選課系統一個學生可以選擇多門課程
select 選修課程,成績 from 課程 成績 where 姓名 ='學生姓名'
❸ 資料庫設計 學生選課管理系統 包括:需求分析、E-R概念模型分析、邏輯結構設計(關系模式、指出關系
學生選課管理系統 直到更多,能吸e
❹ java學生選課系統
學生選課系統的設計與實現摘要本文以一個具體的應用系統—學生選掘枯課信息系統的設計與實現判戚洞來說明如何利用UML和EJB組件來設計和構建分布式軟體系統平台。UML和組件技術結合使用能提高開發效率,增加系統的易維護性。關鍵詞UML;EJB;實例1引言現在信息管理系統軟體的開發,採用組件技術可以提高效率,信息管理系統的仔鎮分析設計也採用UML來進行。兩者的結合可以極大的提高開發效率,保證系統開發的易維護性。本文用UML這種設計方法和EJB這種組件技術來設計和實現一個系統。2系統分析本系統設計為學生通過網頁登陸學校網站,進行選課。下面用用例圖來說明該系統要實現的功能。2.1用例圖2.2系統總體結構圖本系統採用三層體系結構,分為表示層,事務處理層,數據存儲層。三層結構層次清晰,易維護。圖3類圖學生選課系統涉及到三個實體類學生,課程,以及學生和課程之間的一個一對多關系類。對每一個類,映射到一張表。學生類和課程類用Container-ManagedEntityBean實現,學生和課程間的一對多關系類,用Bean-ManagedPersistence的EntityBean實現。再設計一個SessionBean對學生選課過程進行控制。頁面顯示部分用JSP實現。3資料庫設計學生表對應學生實體,詳細內容如下表1學生表關聯表對應學生和課程間的一對多關系,詳細內容如下研究開發4實現4.1SessionBean的設計4.1.1定義HomeInterface4.1.2定義{//-----//這是一個基於SessionBean的Remote介面,這個SessionBean是基於//Stateful的SessionBean,用來對特定學生選課的登記過程進行操作//-----------------------------publicStringgetStudentName()throwsRemoteException;publicvoidenroll(ArrayListcourseItems)throwsRemoteExcep-tion;publicvoinenroll()throwsRemoteException;publicvoiddeleteStudent()throwsFinderException,RemoteEx-ception;publicvoiddeleteCourse(Stringcourse_id)throwsRemoteExcep-tion;}4.1.3Client獲取HomeInterface和RemoteInterface的參考方式,我們使用JNDI機制來獲取Home介面和Remote介面的對象參考。4.1.4定義回調方法4.1.5實現遠程資料庫的連接使用JNDI機制,通過資料庫的JNDI名稱javacomp/env/jdbc/StudentCourseDB來連接後台資料庫。4.1.6SessionBean方法實現//定義變數publicStudentHomesHome;publicEnrollHomeeHome;publicStringstudent_id;publicStringname;//回調方法實現publicvoidejbCreate(Stringstudent_id)throwsCreateException{try{Studentstudent=sHome.findByPrimaryKey(student_id);name=student.getName();}catch(ObjectNotFoundExceptione){thrownewCreateException(Student+student_id+notfoundinStudentTBL!);}catch(Exceptione){thrownewEJBException(e.getMessage());}this.student_id=student_id;}//商業方法實現publicvoidenroll(ArrayListcourseItems){Enrollenroll=null;try{enroll=eHome.findByPrimaryKey(student_id);}catch(Exceptione){}try{if(enroll!=null){enroll.replaceCourseItems(courseItems);}else{eHome.create(student_id,courseItems);}}catch(Exceptione){thrownewEJBException(e.getMessage());}}publicvoinenroll(){try{Enrollenroll=eHome.findByPrimaryKey(student_id);enroll.remove();}catch(Exceptione){thrownewEJBException(e.getMessage());}}//涉及到對兩張表的刪除。publicvoiddeleteStudent()throwsFinderException{try{Enrollenroll=eHome.findByPrimaryKey(student_id);Studentstudent=sHome.findByPrimaryKey(student_id);enroll.remove();student.remove();}catch(Exceptione){thrownewEJBException(e.getMessage());}}publicvoiddeleteCourse(Stringcourse_id){PreparedStatementps=null;try{getConnection();StringdeleteStatement=deletefromEnrollTBL+wherestudent_id=?andcourse_id=?;ps=con.prepareStatement(deleteStatement);ps.setString(1,student_id);ps.setString(2,course_id);ps.executeUpdate();}catch(Exceptione){thrownewEJBException(e.getMessage());}finally{try{ps.close();con.close();}catch(Exceptione){thrownewEJBException(e.getMessage());}}}4.2EntityBean的設計我們以關聯表(EnrollTBL)對應的實體Bean為例進行說明,它涉及到兩個表的一對多關系。4.2.1定義Home介面4.2.2定義{//---------------//這是一個基於EntityBean的Remote介面,這個EntityBean是基於//Bean-ManagedPersistence的EntityBean,用來對EnrollTBL表進行操作//--------------------------publicArrayListgetCourseItems()throwsRemoteException;publicStringgetStudent_id()throwsRemoteException;publicvoidreplaceCourseItems(ArrayListcourseItems)throwsRemoteException;}4.2.3變數定義publicStringstudent_id;publicArrayListcourseItems;4.2.4增加數據記錄實現publicStringejbCreate(Stringstudent_id,ArrayListcourseItems)throwsCreateException{if(courseItems==null||courseItems.size()==0){thrownewCreateException(ejbCreateexception!);}this.student_id=student_id;try{enroll(courseItems);}catch(Exceptione){thrownewEJBException(ejbCreateexception+e.getMessage());}this.courseItems=courseItems;returnstudent_id;}//根據學生ID,插入課程項。privatevoidenroll(ArrayListcourseItems)throwsSQLException{StringinsertStatement=insertintoEnrollTBLvalues(?,?);PreparedStatementps=con.prepareStatement(insertStatement);try{//------------//依次將所有的課程項目插入EnrollTBL表//------------------ps.setString(1,this.student_id);for(inti=0;i<courseItems.size();i++){Stringcourse_id=(String)courseItems.get(i);ps.setString(2,course_id);ps.executeUpdate();}}finally{ps.close();}}//根據學生ID,刪除課程項privatevoinenroll()throwsSQLException{StringdeleteStatement=deletefromEnrollTBL+wherestudent_id=?;PreparedStatementps=con.prepareStatement(deleteStatement);try{ps.setString(1,student_id);ps.executeUpdate();}finally{ps.close();}}5部署和運行5.1部署程序5.1.1部署StudentEntityBean,設置事務屬性,生成部署文件。5.1.2同樣,再部署其他三個EJB組件EnrollSessionBean,CourseEntityBean,EnrollEntityBean。5.1.3部署web組件5.1.4部署整個應用程序5.2運行啟動J2EE伺服器,啟動資料庫伺服器,打開瀏覽器。學生登錄,即可選課。6結論組件技術使得復雜的多層結構應用系統開發變得容易。採用組件技術能提高開發人員的效率,降低軟體的開發和維護成本,提高軟體的質量,控制所構建系統的復雜性。UML設計方法的使用能提高軟體設計的效率和保證設計的規范性。參考文獻[1]CraigLarman.UML和模式應用-面向對象分析與設計導論[M].北京機械工業出版社,2003.10-100.[2]劉特.J2EEEJB應用編程實例[M].北京清華大學出版社,2003.90-150.[3]GeriSchneider.用例分析技術[M].北京機械工業出版社,2003.1-98.
-----------------------------------------------
謝謝請採納:
不能發連接啊,請在網路
搜索『珍惜知識網』點進去就是了[ORDA]
❺ 資料庫課程設計 選課系統 200分跪求
500分老子就給你來一份,包你滿意 ,熱心網友屌爆了
❻ 如何設計一個學生選課系統資料庫
有三個角色 第一個是管理員 然後是老師 最後是學生 管理員有設置時間 刪除老師和學生的功能 以及查詢的功能 學生可以查看個人信息 選課 退課 而老師則可以開課
❼ 做一個學生選課系統;但是資料庫不知道怎麼設計表;請幫忙看看!
第一種方法:設計2個表,一個學生信息表,一個選課記錄表。關聯學生ID.
選課記錄
ID KCname XSID KCbs (主鍵ID)
序號 課程名稱 選課學生身份證 課程標示(1,2,3)
也可以直接用漢字。查詢應該會吧。
學生信息表
XSname XSID tel sex ( 主鍵XSID)
學生名稱 學生身份證 電話 性別
第二種方法:用一張表
ID XSname XSID tel sex KCname KCbs (主鍵ID)
序號 學生名字 學生身份證 電話 性別 課程名字 課程標示
❽ 現有學生選課系統資料庫: 學生表Student(sno學號,sname姓名,sage年齡,ssex性
第一題
SELECT * FROM STUDENT WHERE SDEPT="計算機與科學"
❾ 資料庫課程設計(學生選課信息管理系統)
我這里有一個VB + ACCESS的 同學錄管理系統
我覺得這些需求可都可以全部滿足
只要改一下程序就OK了
要的發給我發郵件
[email protected]