系統(tǒng)簡介
我所設(shè)計的教務(wù)管理系統(tǒng)包括6大部分,學(xué)生信息、教師信息、課程信息、班級信息、選課信息、教授信息。該系統(tǒng)可以通過不同的群體進(jìn)行操作:學(xué)生群體可以對個人信息、班級、教師信息進(jìn)行查詢操作,對于課程則可以進(jìn)行選課操作;教師群體可以個人信息、班級信息、學(xué)生信息進(jìn)行查詢操作,對于課程則可以進(jìn)行選課操作,管理員群體可以對教務(wù)管理系統(tǒng)的信息進(jìn)行查詢和修改操作。
系統(tǒng)功能需求
- 主菜單:
- 選擇進(jìn)入學(xué)生教務(wù)管理系統(tǒng);
- 選擇進(jìn)入教師教務(wù)管理系統(tǒng);
- 選擇進(jìn)入管理員教務(wù)管理系統(tǒng);
- 學(xué)生教務(wù)管理系統(tǒng):
- 查詢學(xué)生表;
- 查詢個人信息;
- 查詢班級信息;
- 選修課程;
- 退出學(xué)生系統(tǒng);
- 教師教務(wù)管理系統(tǒng):
- 查詢教師表;
- 查詢個人信息;
- 查詢班級信息;
- 選授課程;
- 退出教師系統(tǒng);
- 管理員教務(wù)管理系統(tǒng):
- 查詢學(xué)生表;
- 查詢教師表;
- 查詢班級表;
- 添加學(xué)生信息;
- 修改學(xué)生信息;
- 刪除學(xué)生信息;
- 添加教師信息;
- 修改教師信息;
- 刪除教師信息;
- 修改成績表;
- 修改課程表;
- 退出系統(tǒng);
數(shù)據(jù)流圖
教務(wù)管理系統(tǒng)的數(shù)據(jù)流圖
數(shù)據(jù)字典
表一:學(xué)生關(guān)系模式
字段名稱 |
字段類型 |
主鍵 |
備注 |
|
學(xué)號 |
Sno |
int(14) |
yse |
|
姓名 |
Sname |
char(20) |
no |
|
年齡 |
Sage |
Int(2) |
no |
|
專業(yè) |
Smajort |
Char(20) |
no |
表二:課程關(guān)系模式
字段名稱 |
字段類型 |
主鍵 |
備注 |
|
課程號 |
Cno |
int(14) |
yes |
|
課程名 |
Cname |
char(20) |
no |
|
學(xué)分 |
Grade |
float |
no |
表三:老師關(guān)系模式
字段名稱 |
字段類型 |
主鍵 |
備注 |
|
教師號 |
Tno |
int(14) |
yes |
|
教師名 |
Tname |
char(20) |
no |
|
職稱 |
Ttitle |
char(20) |
no |
表四:班級關(guān)系模式
字段名稱 |
字段類型 |
主鍵 |
備注 |
|
班級號 |
Rno |
int(14) |
yes |
|
班級名 |
Rname |
char(20) |
no |
|
人數(shù) |
Rnum |
int(2) |
no |
|
輔導(dǎo)員 |
Rteacher |
char(20) |
no |
表五:教授關(guān)系模式
字段名稱 |
字段類型 |
主鍵 |
備注 |
|
教師號 |
Tno |
int(14) |
yes |
|
課程號 |
Cno |
int(20) |
yes |
|
學(xué)年 |
Tyear |
char(20) |
no |
|
學(xué)期 |
Tterm |
char(20) |
no |
表六:選課關(guān)系模式
字段名稱 |
字段類型 |
主鍵 |
備注 |
|
課程號 |
Cno |
int(14) |
yes |
|
學(xué)號 |
Sno |
int(20) |
yes |
|
成績 |
Grade |
float |
no |
設(shè)計思路
1.創(chuàng)建主體運行框架;
2.通過需求的分析,明白各個用戶功能;
3.建立Java與數(shù)據(jù)庫之間的鏈接,把各個功能分別綁定到各個表中;
4.實現(xiàn)不同操作對象對教務(wù)管理系統(tǒng)信息的增加、刪除、修改、查看等功能。
系統(tǒng)整體E-R圖
?關(guān)系模式
學(xué)生(學(xué)號,姓名,年齡,專業(yè))
班級(班級號,班級名,人數(shù),輔導(dǎo)員)
教師(教師號,姓名,職稱)
課程(課程號,課程名,學(xué)分)
教授表(課程號,教師號,學(xué)期,學(xué)年)
選課表(課程號,學(xué)號,成績)
?創(chuàng)建數(shù)據(jù)庫
SQL語句:
創(chuàng)建教務(wù)管理系統(tǒng)數(shù)據(jù)庫
create database jiaowu;
?創(chuàng)建基本表
1、創(chuàng)建學(xué)生表(Student)表的SQL語句:
use jiaowu;
create table Student(
Sno int(14)primary key ,
Sname char(20),
Sage int(2),
Smajor char(20));
- 創(chuàng)建班級表(Class)的SQL語句:
use jiaowu;
create table Class(
Rno int(14) primary key ,
Rname char(20),
Rnum int(2),
Rteacher char(20));
- 創(chuàng)建課程表(Course)的SQL語句:
use jiaowu;
create table ourse(
Cno int(14) primary key ,
Came char(20),
Ccredit float);
- 創(chuàng)建教師表(Teacher)的SQL語句:
use jiaowu;
create table Teacher(
Tno int(14) primary key ,
Tame char(20),
Ttitle char(20));
- 創(chuàng)建教授表(Tc)的SQL語句:
use jiaowu;
create table Tc(
Tno int(14) ,
Cno int(14) ,
Tyear char(20),
Tterm char(20),
primary key (Tno,Cno));
- 創(chuàng)建選課表(Sc)的SQL語句:
use jiaowu;
create table Sc(
Sno int(14) ,
Cno int(14) ,
Grade float,
primary key (Sno,Cno));
5.總結(jié)
經(jīng)過本次的數(shù)據(jù)庫課程設(shè)計——教務(wù)管理系統(tǒng),我學(xué)到了很多知識,并將所學(xué)到的知識進(jìn)行一次大規(guī)模的梳理,加深了我對數(shù)據(jù)庫的建立、插入、刪除、修改以及視圖、存儲過程、備份等相關(guān)知識的深入學(xué)習(xí)和理解,并去主動分析和思考其中出現(xiàn)的很多問題。通過這次教務(wù)管理系統(tǒng)的數(shù)據(jù)庫課程設(shè)計,我從中學(xué)習(xí)了很多的知識,并加深了自己對數(shù)據(jù)庫程序設(shè)計的理解以及熟練度。在程序設(shè)計中,我遇到的最大的問題就是JDBC的運用,應(yīng)為一開始在學(xué)習(xí)JDBC的時候我就感覺到很吃力,因為自己對于這個東西實在難以理解,所以在用JDBC寫數(shù)據(jù)庫操作程序時,我上網(wǎng)查找了很多資料,有不懂的也去百度,或者在同學(xué)之間討論,至今還有一些不能熟練運用,但和之前相比已經(jīng)有了很大的進(jìn)步,我會在今后的學(xué)習(xí)中進(jìn)一步鞏固。總之,由于粗心大意犯的錯誤,自己是可以找出來,實在太隱蔽的,我也就只能求助同學(xué)或者老師了。
本次程序編寫教務(wù)管理系統(tǒng)我從簡單入手,再進(jìn)行復(fù)雜的編寫過程。首先我搜集資料,掌握教務(wù)管理系統(tǒng)方面的種種相關(guān)知識,其次我對這個系統(tǒng)應(yīng)該如何編譯作了一個簡單的思考和討論,確定要運用到的知識和相關(guān)難點,并對這些難點進(jìn)行解決,最終到復(fù)雜的程序上。在解決問題時的思考是及其重要,遇到問題不去懊惱也是我們應(yīng)有的態(tài)度。想學(xué),只要你行動,沒有什么會難倒我們。在面對眾多不會的知識點時,我通過瀏覽器查詢,利用書本上的知識,了解到我想要創(chuàng)建的是什么樣的教務(wù)管理系統(tǒng),了解我想要的是怎樣的Java編碼。創(chuàng)建數(shù)據(jù)庫是較為簡單的,但同時我也通過此次數(shù)據(jù)庫的課程設(shè)計明白了在存儲過程定義和數(shù)據(jù)備份方面我有所欠缺。總得來說我的收獲很多,我在此次課程設(shè)計中學(xué)會了創(chuàng)建更為完善的數(shù)據(jù)庫,以及各種表和插入各種相關(guān)的數(shù)據(jù),并更加熟練的掌握了jdbc的相關(guān)知識。
通過這次課程設(shè)計我了解到了自己的不足,并且學(xué)到了很多的東西。無論是枯燥的搜集資料,還是一遍遍地調(diào)試程序給我?guī)淼钠v感,都在最終看到程序正常運行的那刻消失殆盡,感受到了努力付出,然后收獲碩果的成就感??偨Y(jié)我課程設(shè)計的過程,我學(xué)到了很多的知識。不論是理論知識的掌握亦或是實踐經(jīng)驗的積累,我都有了進(jìn)一步的提升。面對設(shè)計過程中所遇到的難題,我不能退縮,要嚴(yán)謹(jǐn),認(rèn)真,無所畏懼地面對它。在設(shè)計的過程中我遇到了各種各樣的問題,也發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,通過這次課程設(shè)計,把以前所學(xué)過的知識重新溫故,鞏固了所學(xué)的知識,也能夠了解到自己相對薄弱的環(huán)節(jié)??偠灾?,本次的課程設(shè)計真的使我受益匪淺。
1)插入初始數(shù)據(jù)
(1)學(xué)生表插入數(shù)據(jù)的MySQL語句:
use jiaowu;
insert into Student(Sno,Sname,Sage,Smajor)
values(202115061,'小樂',20,'計算機'),
(202115062,'小黃',20,'會計'),
(202115063,'小紅',19,'大數(shù)據(jù)'),
(202115064,'小西',20,'計算機'),
(202115065,'小花',20,'會計'),
(202115066,'小白',20,'計算機'),
(202115067,'小黑',20,'會計');
(2)班級表插入數(shù)據(jù)的MySQL語句:
use jiaowu;
insert into Class(Rno,Rname,Rnum,Rteacher)
values(202116061,'計科1',45,'老孫'),
(202116062,'計科2',46,'小李'),
(202116063,'大數(shù)據(jù)1',44,'小王'),
(202116064,'會計2',44,'小趙');
(3)課程表插入數(shù)據(jù)的MySQL語句:
use jiaowu;
insert into Course(Cno,Came,Ttitle)
values(202118061,'C語言',2.5),
(202118062,'數(shù)據(jù)庫',3),
(202118063,'經(jīng)濟(jì)學(xué)',3);
(4)教師表插入數(shù)據(jù)的MySQL語句:
use jiaowu;
insert into Teacher(Tno,Tame,Ccredit)
values(202117061,'老孫','C語言'),
(202117062,'小李','數(shù)據(jù)庫'),
(202117063,'小趙','經(jīng)濟(jì)學(xué)');
(5)授課表插入數(shù)據(jù)的MySQL語句:
use jiaowu;
insert into Tc(Tno,Cno,Tyear,Tterm)
values(202117061,202118061,2022,2),
(202117062,202118062,2022,2),
(202117063,202118063,2022,2);
(6)選課表插入數(shù)據(jù)的MySQL語句:
use jiaowu;
insert into Sc(Sno,Cno,Grade)
values(202115061,202118061,79),
(202115062,202118061,88),
(202115063,202118061,93),
(202115064,202118062,85),
(202115062,202118063,63),文章來源:http://www.zghlxwxcb.cn/news/detail-774409.html
(202115062,202118062,99);文章來源地址http://www.zghlxwxcb.cn/news/detail-774409.html
到了這里,關(guān)于數(shù)據(jù)庫--教務(wù)管理系統(tǒng)(數(shù)據(jù)庫部分--Java-jdbc連接)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!