Mysql数据库课程设计
Hello小伙伴們,大家好,我是楠橘星!!
今天給大家分享一下使用javafx編寫的前端的 Mysql數據庫課程設計 題庫與試卷生成系統!廢話不多說了,直接上截圖,希望對大家有所幫助!(建議拿來參考不建議直接CV哦!)
代碼已經開源在https://gitee.com/duan_nan/databstruct_design,有需要的同學自取!
1.系統需求分析
1-1、功能分析
通過深入細致的調查,多方面搜集資料,以及實地考察等方法,經過總結研究,
總結出了試卷生成系統的的基本的業務功能,詳細如下:
- 學生信息維護:主要完成學生的學號、班級、考試信息等操作。
- 教師信息維護:主要是教師信息的添加、修改和刪除等操作。
- 題庫信息維護:主要完成題庫中各個學科的題庫的增加,刪除,修改等情況。
- 學生檢索:通過學生的學號來查看學生的信息。
- 教師檢索:通過教師的職工號來查找教師信息。
- 試卷自動生成:學生在考試時的會隨機從題庫中抽取四道題,學生在作答完畢后點擊提交試卷會自動記錄學生的成績并且自動更新數據庫內容。
- 管理員:管理員可以管理學生,教師以及題庫的信息。此三者的信息的增刪改查的權利由管理員來掌握。
1-2、數據字典
數據項:
| Id | int | 10 | 編號 | |
| number | CHAR | 20 | 管理員賬號 | |
| password | CHAR | 30 | 管理員密碼 | |
| Name | CHAR | 20 | 姓名 | |
| Name | CHAR | 30 | 學科名 | |
| Content | mediumText | 0 | 題庫內容 | |
| Name | CHAR | 30 | 學生名 | |
| Gender | Char | 30 | 性別 | 男,女 |
| ClassRoom | CHAR | 30 | 班級 | |
| Number | CHAR | 30 | 學號 | |
| Password | CHAR | 30 | 密碼 | |
| Math_date_place | CHAR | 100 | 數學考試時間地點 | |
| English_date_place | CHAR | 100 | 英語考試時間地點 | |
| Chinese_date_place | CHAR | 100 | 語文考試時間地點 | |
| g_Chinese | Double | 30 | 語文成績 | |
| G_Math | Double | 30 | 數學成績 | |
| G_English | Double | 30 | 英語成績 | |
| G_music | Double | 30 | 音樂成績 | |
| G_history | Double | 30 | 歷史成績 | |
| G_polity | Double | 30 | 思政成績 | |
| G_computer | Double | 30 | 計算機成績 | |
| G_sum | Double | 30 | 總成績 | |
| G_avg | Double | 30 | 平均分 |
2、概念模型設計
根據前面的設計,以及相應的數據項,數據結構之間的關系,通過分類總結,可以將圖書管理系統數據庫實體劃分為圖書信息實體集、學生信息實體集、館藏地實體集、借書卡信息實體集、缺書信息實體集,各實體集里還包含不同的實體。
每個實體定義的屬性如下:
學生:{學號,密碼,姓名,性別,班級,考試地點,時間,教室}
教師:{職工號,密碼,姓名,監考時間,地點,教室,學科}
題庫:{學科名,題庫內容}
成績:{語文成績,數學成績,英語成績,歷史成績,音樂成績,計算機成績,思政成績,總成績,平均成績}
管理員:{職工號,密碼}
3.、邏輯設計
3-1、E-R圖
學生教師 E-R圖:
管理員 成績 E-R圖
學生題庫 E-R圖:
學生-成績 E-R圖
管理員 E-R圖
3-2、 ER轉化關系模型
ER圖進行關系模型的轉化時,應根據相應的規則進行轉化,只有這樣,才能盡可能的減小冗余,達到比較好的范式,使模型更加優化,通常的轉換規則如下:
一對一聯系 :若雙方部分的參與,則將聯系定義為一個新的關系,屬性為參與雙方的碼,若一方全部參與,則將聯系另一方的碼作為全部參與一方的屬性。一對多聯系:將單方參與實體的碼作為多方參與實體的屬性。多對多聯系:將聯系定為新的關系,屬性為參與雙方的碼。以上也就是基本的設計規則了,只要按照相應的規則轉換,就能夠得到所要的規范程度,得到一個良好的范式,根據得到的ER圖,進行關系模式的轉換。具體的關系模型如下:
學生表設計:
| Id | int | 10 | 編號 | 主鍵 | |
| Name | CHAR | 30 | 學生名 | ||
| Gender | Char | 30 | 性別 | 男,女 | |
| ClassRoom | CHAR | 30 | 班級 | ||
| Number | CHAR | 30 | 學號 | ||
| Password | CHAR | 30 | 密碼 | ||
| Math_date_place | CHAR | 100 | 數學考試時間地點 | ||
| English_date_place | CHAR | 100 | 英語考試時間地點 | ||
| Chinese_date_place | CHAR | 100 | 語文考試時間地點 |
教師表設計:
| Id | int | 10 | 編號 | 主鍵 | |
| Name | CHAR | 30 | 教師名 | ||
| Gender | Char | 30 | 性別 | 男,女 | |
| Number | CHAR | 30 | 學號 | ||
| Password | CHAR | 30 | 密碼 | ||
| Phone | CHAR | 30 | 電話 | ||
| Password | CHAR | 100 | 教室時間學科 |
管理員表設計:
| Id | int | 10 | 編號 | 主鍵 | |
| Name | CHAR | 30 | 管理員名 | ||
| Number | CHAR | 30 | 管理員賬號 | ||
| Password | CHAR | 30 | 密碼 |
成績表設計:
| Number | CHAR | 30 | 學號 | 外鍵 | |
| g_Chinese | Double | 30 | 語文成績 | ||
| G_Math | Double | 30 | 數學成績 | ||
| G_English | Double | 30 | 英語成績 | ||
| G_music | Double | 30 | 音樂成績 | ||
| G_history | Double | 30 | 歷史成績 | ||
| G_polity | Double | 30 | 思政成績 | ||
| G_computer | Double | 30 | 計算機成績 | ||
| G_sum | Double | 30 | 總成績 | ||
| G_avg | Double | 30 | 平均分 |
題庫表設計:
| Id | int | 10 | 編號 | 主鍵 | |
| Name | CHAR | 30 | 學科名 | ||
| Content | CHAR | 30 | 內容 |
4、界面展示
4-1、登陸模塊
4-2、管理員模塊
4-2-1、學生信息控制模塊
4-2-2、二.教師信息控制模塊
4-2-3、題庫信息控制界面
4-3、題庫題目修改界面
4-5、教師監考信息查看界面
4-6、學生選考界面
4-7、學生答題界面
這就是 題庫與試卷生成系統 的大致思路,由于當時編程的時候水平比較低,所以很多命名都不規范,希望大家多多包涵,sql文件放在題庫文件夾里面,可以直接導入。
希望我的分享可以為學習編程的同學提供一點幫助,代碼已經開源在https://gitee.com/duan_nan/databstruct_design,有需要的同學自取!
我是楠橘星,期待大家的關注!
樹苗如果因為怕痛而拒絕修剪,那就永遠不會成材。
總結
以上是生活随笔為你收集整理的Mysql数据库课程设计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Refactoring
- 下一篇: linux cmake编译源码,linu