1.1課題背景由于計(jì)算機(jī)與通信學(xué)院的不斷發(fā)展壯大,教務(wù)管理工作的工作量越來(lái)越大,全部用員工來(lái)做這個(gè)工作不僅越來(lái)越浪費(fèi)人力、物力、財(cái)力,而且也越來(lái)越難管理,迫切需要一個(gè)進(jìn)行教務(wù)管理的軟件系統(tǒng)。鑒于這種情況,計(jì)算機(jī)與通信學(xué)院在信息化建設(shè)中把教務(wù)管理系統(tǒng)也納入其中,利用網(wǎng)絡(luò)進(jìn)行教務(wù)管理工作不僅省部分人力、物力、財(cái)力,更重要的是利用網(wǎng)絡(luò)可以提高工作效率,便于整個(gè)學(xué)院教務(wù)管理工作的管理。 計(jì)算機(jī)與通信學(xué)院教務(wù)管理系統(tǒng)是一個(gè)實(shí)際應(yīng)用的軟件系統(tǒng),做這樣一個(gè)軟件系統(tǒng),不僅可以使我們可以更加了解軟件開發(fā)的過程,而且把學(xué)到的理論知識(shí)應(yīng)用到實(shí)際的軟件開發(fā)過程中,進(jìn)一步了解、掌握理論知識(shí),為以后的工作學(xué)習(xí)積累經(jīng)驗(yàn)。 1.2控件開發(fā)相關(guān)技術(shù)介紹本系統(tǒng)相關(guān)開發(fā)的技術(shù)是利用專門的數(shù)據(jù)庫(kù),即Oracel數(shù)據(jù)庫(kù)。 提起數(shù)據(jù)庫(kù),第一個(gè)想到的公司,一般都會(huì)是Oracle。該公司成立于1977年,最初是一家專門開發(fā)數(shù)據(jù)庫(kù)的公司。 Oracle在數(shù)據(jù)庫(kù)領(lǐng)域一直處于領(lǐng)先地位。1984年,首先將關(guān)系數(shù)據(jù)庫(kù)轉(zhuǎn)到了桌面計(jì)算機(jī)上。然后,Oracle的下一個(gè)版本,版本5,率先推出了分布式數(shù)據(jù)庫(kù)、客戶/服務(wù)器結(jié)構(gòu)等嶄新的概念。Oracle的版本6首創(chuàng)行鎖定模式以及對(duì)稱多處理計(jì)算機(jī)的支持……最新的Oracle8主要增加了對(duì)象技術(shù),成為關(guān)系-對(duì)象數(shù)據(jù)庫(kù)系統(tǒng)。目前,ORACLE產(chǎn)品覆蓋了大、中、小型機(jī)等幾十種機(jī)型,Oracle數(shù)據(jù)庫(kù)成為世界上使用最廣泛的關(guān)系數(shù)據(jù)系統(tǒng)之一。ORACLE是一種適用于大型、中型和微型計(jì)算機(jī)的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),它使用SQL(Structured guery language)作為它的數(shù)據(jù)庫(kù)語(yǔ)言。 SQL主要包括數(shù)據(jù)定義、數(shù)據(jù)操縱(包括查詢)和數(shù)據(jù)控制等三方面功能。SQL是一種非過程化程度很高的語(yǔ)言,用戶只需說(shuō)明"干什么"而無(wú)需具體說(shuō)明"怎么干"語(yǔ)言簡(jiǎn)潔、使用方便功能強(qiáng)大,集聯(lián)機(jī)交互與嵌入于一體,能適應(yīng)廣泛的使用環(huán)境。ORACLE數(shù)據(jù)庫(kù)由三種類型的文件組成:數(shù)據(jù)庫(kù)文件、日志文件和控制文件。 2 系統(tǒng)分析2.1 工作流程學(xué)生可以根據(jù)自己的學(xué)號(hào)查詢自己的各科成績(jī),系統(tǒng)管理員可以增加學(xué)生信息和學(xué)生成績(jī)的錄入、老師信息的錄入和修改。 2.2 業(yè)務(wù)需求(1)學(xué)生可以查詢自己的信息; (2)老師可以查詢自己的信息; (3)系統(tǒng)管理員可以增加/刪除/修改學(xué)生/老師/系部/學(xué)生成績(jī)/老師的信息; 3 系統(tǒng)設(shè)計(jì)3.1 系統(tǒng)功能結(jié)構(gòu)圖本系統(tǒng)編寫的目的,是實(shí)現(xiàn)一個(gè)教務(wù)管理系統(tǒng),提高工作效率和方便學(xué)生老師查詢自己的信息、系統(tǒng)管理員修改和錄入信息。 由于程序的功能是和數(shù)據(jù)庫(kù)相關(guān)的數(shù)據(jù)查詢和數(shù)據(jù)操作,所以程序至少具有以下功能: 1. 對(duì)數(shù)據(jù)表的基本操作,如插入、修改、刪除。 2. 根據(jù)條件進(jìn)行查詢。 
圖2.2 后臺(tái)功能結(jié)構(gòu) 3.2 模塊功能設(shè)計(jì)系統(tǒng)功能設(shè)計(jì)是使整個(gè)系統(tǒng)能基本實(shí)現(xiàn)學(xué)生成績(jī)等級(jí)的查詢,學(xué)生管理,教師管理,成績(jī)管理等管理功能,能夠進(jìn)行有效率的管理。 學(xué)生管理: 學(xué)生信息的增加、修改、刪除 教師管理: 教師信息的增加、修改、刪除 成績(jī)管理: 學(xué)生成績(jī)的修改、刪除 4 系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)4.2 數(shù)據(jù)表的設(shè)計(jì)根據(jù)該系統(tǒng)的特點(diǎn),本次設(shè)計(jì)采用Oracle數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)名稱為JWGLXT,根據(jù)該系統(tǒng)的分析,包含以下幾個(gè)表: 表4.1學(xué)生的相關(guān)信息 列名 | 含義 | 數(shù)據(jù)類型和精度 | 數(shù)據(jù)完整性 | Student_id | 學(xué)生學(xué)號(hào) | Number(5) | PRIMARY KEY | Monitor_id | 班長(zhǎng)學(xué)號(hào) | Number(5) |
| name | 學(xué)生姓名 | VARCHAR2(10) | NOT NULL | sex | 學(xué)生性別 | VARCHAR2(6) |
| dob | 學(xué)生出生日期 | DATE |
| specialty | 學(xué)生所學(xué)專業(yè) | VARCHAR2(10) |
|
|
|
|
|
表4.2 教師的相關(guān)信息 列名 | 含義 | 數(shù)據(jù)類型及精度 | 數(shù)據(jù)完整性 | Teacher_id | 教師編號(hào) | NUMBER(5) | PRIMARY KEY | name | 教師姓名 | VARCHAR2(10) | NOT NULL | title | 職稱 | VARCHAR2(6) |
| Hire_date | 參加工作時(shí)間 | DATE |
| bonus | 獎(jiǎng)金 | NUMBER(7,2) |
| wage | 工資 | NUMBER(7,2) |
| Department_id | 系部編號(hào) | NUMBER(3) | 外鍵 |
|
|
|
|
表4.3 系部的相關(guān)信息 列名 | 含義 | 數(shù)據(jù)類型及精度 | 數(shù)據(jù)完整性 | Department_id | 系部編號(hào) | NUMBER(3) | PRIMARY KEY | Department_name | 系部名稱 | VARCHAR2(8) | NOT NULL | Address | 系部所在地址 | VARCHAR2(40) |
|
|
|
|
|
表4.4 課程的相關(guān)信息 列名 | 含義 | 數(shù)據(jù)類型及精度 | 數(shù)據(jù)完整性 | Course_id | 課程編號(hào) | NUMBER(5) | PRIMARY KEY | Course_name | 課程名稱 | VARCHAR2(30) | NOT NULL | Credit_hour | 學(xué)分 | NUMBER(2) |
|
|
|
|
|
表4.5 學(xué)生成績(jī)的相關(guān)信息 列名 | 含義 | 數(shù)據(jù)類型及精度 | 數(shù)據(jù)完整性 | Student_id | 學(xué)生學(xué)號(hào) | NUMBER(5) | 外鍵 | Course_id | 課程編號(hào) | NUMBER(5) | 外鍵 | Score | 成績(jī) | NUMBER(4,1) |
|
|
|
|
|
表4.6 成績(jī)等級(jí)表的相關(guān)信息 列名 | 含義 | 數(shù)據(jù)類型及精度 | 數(shù)據(jù)完整性 | Grade_id | 等級(jí)編號(hào) | VARCHAR2(2,1) | PROMARY KEY | Low_score | 等級(jí)下界 | NUMBER(4,1) | NOT NULL | High_score | 等級(jí)上界 | NUMBER(4,1) | NOT NULL | Grade | 等級(jí) | VARCHAR2(6) |
|
4.3 數(shù)據(jù)庫(kù)表的創(chuàng)建,向表中插入數(shù)據(jù) 學(xué)生表 create table students ( student_id number(5) constraint student_pk primary key, monitor_id number(5), name varchar2(10) NOT NULL, sex varchar2(6) constraint sex_chk check(sex IN('男','女')), dob DATE, specialty varchar2(10) ); 系部表 create table departments ( department_id number(3) constraint department_pk primary key, department_name varchar2(8) NOT NULL, address varchar2(40) ); 教師表 create table teachers ( teacher_id number(5) constraint teacher_pk primary key, name varchar2(8) NOT NULL, title varchar2(8), hire_date DATE default sysdate, bonus number(7,2),//獎(jiǎng)金 wage number(7,2), department_id number(3) constraint teachers_fk_departments references departments(department_id) ); 課程表 create table courses ( course_id number(5) constraint course_pk primary key, course_name varchar2(30) not null, credit_hour number(2) );
信息發(fā)布:廣州名易軟件有限公司 http://www.jetlc.com
|