“課程管理系統(tǒng)”數(shù)據(jù)庫設(shè)計(jì)與實(shí)現(xiàn)_第1頁
“課程管理系統(tǒng)”數(shù)據(jù)庫設(shè)計(jì)與實(shí)現(xiàn)_第2頁
“課程管理系統(tǒng)”數(shù)據(jù)庫設(shè)計(jì)與實(shí)現(xiàn)_第3頁
“課程管理系統(tǒng)”數(shù)據(jù)庫設(shè)計(jì)與實(shí)現(xiàn)_第4頁
已閱讀5頁,還剩41頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、精品大學(xué)課程設(shè)計(jì)報(bào)告課程設(shè)計(jì)題目:“課程管理系統(tǒng)”數(shù)據(jù)庫設(shè)計(jì)與實(shí)現(xiàn)學(xué)院:專業(yè)班級(jí):年級(jí):姓名:學(xué)號(hào):完成時(shí)間:年月日成績:指導(dǎo)教師:感謝下載載精品目錄第 1 章課程管理系統(tǒng)功能需求分析第 2 章課程管理系統(tǒng)概念結(jié)構(gòu)設(shè)計(jì)2.1設(shè)計(jì) E-R 圖2.2E-R 模型向關(guān)系模型的轉(zhuǎn)換第 3 章創(chuàng)建視圖和索引,授予用戶權(quán)限3.1創(chuàng)建視圖3.2創(chuàng)建索引3.3授予權(quán)限感謝下載載精品正文一、需求分析1.近年來,隨著各大高校的規(guī)模不斷擴(kuò)大,生源的急劇增加,有關(guān)學(xué)生的各種信息量也成倍增長。 面對(duì)龐大的信息量, 需要建立一個(gè)課程管理系統(tǒng)來提高管理質(zhì)量, 讓老師減輕工作量, 提高工作效率。 建立課程管理系統(tǒng)就是為了實(shí)現(xiàn)

2、信息的規(guī)范管理、 科學(xué)統(tǒng)計(jì)和快速查詢, 從而減少管理方面的工作量。課程管理系統(tǒng)主要提供教師、 學(xué)生的學(xué)籍管理、 成績管理和課程管理功能。2.需求功能分析:教師和學(xué)生的登錄學(xué)生學(xué)籍的添加、修改、刪除、查詢課程管理的添加、修改、刪除、查詢教師授課的安排3.用戶需求分析用戶的需求具體體現(xiàn)在各種信息的提供、保存、更新、查詢方面,這就要求數(shù)據(jù)庫機(jī)構(gòu)能充分滿足各種信息的輸入和輸出。收集基本數(shù)據(jù)、 數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)處理流程, 組成一份詳盡的數(shù)據(jù)字典, 為后面的具體設(shè)計(jì)打下基礎(chǔ)。針對(duì)課程管理系統(tǒng)的需求,通過對(duì)課程管理系統(tǒng)的設(shè)計(jì)和數(shù)據(jù)流程的分析,設(shè)計(jì)如下所示的數(shù)據(jù)項(xiàng)和數(shù)據(jù)存儲(chǔ)表:感謝下載載精品登錄信息:包括用戶

3、號(hào)、密碼、權(quán)限學(xué)籍信息:包括用戶號(hào)、姓名、性別、出生日期、班級(jí)、入學(xué)日期、家庭住址、電話課程信息:包括課程號(hào)、課程名、類型、教師名4.統(tǒng)的總體結(jié)構(gòu)設(shè)計(jì)該系統(tǒng)共有三個(gè)模塊:登陸模塊、學(xué)籍管理模塊、課程信息模塊。這幾個(gè)模塊同時(shí)還包括數(shù)據(jù)添加、 數(shù)據(jù)修改、數(shù)據(jù)刪除、數(shù)據(jù)查詢等幾個(gè)基本操作。(1 )登錄模塊 在登錄界面中教師和學(xué)生可登錄。在登錄界面中分別填入用戶名、密碼和身份, 然后按確認(rèn)鍵登錄。 如果填入信息有誤則彈出錯(cuò)誤信息的提示窗口, 重新返回登陸窗口。 如果填入信息正確則要根據(jù)登錄信息表中登錄者的權(quán)限 (“0”或“1”)分別進(jìn)入教師 (“1”)或?qū)W生(“0 ”)管理系統(tǒng)主界面。(2 )學(xué)籍管理

4、模塊 該模塊主要完成學(xué)生基本信息的添加、修改、刪除、查詢等功能。根據(jù)登錄時(shí)權(quán)限的判斷,權(quán)限為“ 0 ”時(shí),是學(xué)生進(jìn)入該模塊,只可對(duì)自己的學(xué)籍進(jìn)行查詢,添加、修改、刪除功能不可用;權(quán)限為 “1 ”時(shí),教師進(jìn)入該模塊,此時(shí)可進(jìn)行所有學(xué)生學(xué)籍的查詢、添加、修改、刪除,在此模塊中定義了 8 個(gè)數(shù)據(jù)來進(jìn)行學(xué)生的信息存儲(chǔ),如果修改某個(gè)記錄,可單擊修改按鈕進(jìn)行數(shù)據(jù)的編輯, 此時(shí)界面數(shù)據(jù)內(nèi)容和數(shù)據(jù)庫內(nèi)容將同時(shí)更新。(4 )課程管理模塊 該模塊主要完成存儲(chǔ)課程的所有信息的添加、修改、刪除、查詢等功能。根據(jù)登錄時(shí)權(quán)限的判斷,權(quán)限為“ 0 ”時(shí),學(xué)生進(jìn)入感謝下載載精品該模塊,只可進(jìn)行課程查詢,添加、修改、刪除功能不

5、可用;權(quán)限為“1 ”時(shí),教師進(jìn)入該模塊,可進(jìn)行查詢、添加、修改、刪除,在此模塊中定義了 6 個(gè)數(shù)據(jù)來進(jìn)行課程的信息存儲(chǔ),如果修改某一紀(jì)錄,可單擊修改單按鈕進(jìn)行課程記數(shù)據(jù)的編輯,此時(shí)界面數(shù)據(jù)內(nèi)容和數(shù)據(jù)庫內(nèi)容將同時(shí)更新。2、概念設(shè)計(jì)數(shù)據(jù)字典1數(shù)據(jù)項(xiàng)名數(shù)據(jù)類型長度注明學(xué)生學(xué)號(hào)字符型106 位十進(jìn)制數(shù)學(xué)生姓名字符型8年齡字符型16籍貫字符型8學(xué)生出生地感謝下載載精品入學(xué)時(shí)間日期型以 A,B,C,D 開頭,教室編號(hào)字符型10后接 4 位十進(jìn)制數(shù)教室所屬校區(qū)字符型10A,B,C,D教學(xué)樓字符型8管理員代碼字符型206 位十進(jìn)制數(shù)管理員姓名字符型8管理員電話字符型20課程代碼字符型84 位十進(jìn)制數(shù)學(xué)院代碼字

6、符型102 位十進(jìn)制數(shù)課程名字符型8課程人數(shù)數(shù)值型課程所屬校區(qū)字符型10A,B,C,D班級(jí)代碼字符型104 位十進(jìn)制數(shù)專業(yè)代碼字符型102 位十進(jìn)制數(shù)班級(jí)名字符型8班級(jí)學(xué)生數(shù)數(shù)值型學(xué)院代碼字符型102 位十進(jìn)制數(shù)專業(yè)名字符型8學(xué)院名字符型10感謝下載載精品學(xué)院人數(shù)字符型10教工號(hào)字符型106 位十進(jìn)制數(shù)教師姓名字符型8教師電話字符型20教師郵箱字符型30課程管理系統(tǒng)數(shù)據(jù)庫中的E-R 圖3 、邏輯設(shè)計(jì)將上面的 E-R 圖轉(zhuǎn)化為如下關(guān)系模型,下劃橫線代表關(guān)系的主鍵:學(xué)生(學(xué)號(hào),姓名,年齡,籍貫,入學(xué)時(shí)間,專業(yè)代碼,班級(jí)代碼,學(xué)院代碼)班級(jí)(班級(jí)代碼,專業(yè)代碼,班級(jí)名,學(xué)生數(shù))感謝下載載精品專業(yè)(專

7、業(yè)代碼,學(xué)院代碼。專業(yè)名稱)學(xué)院(學(xué)院代碼,學(xué)院名,學(xué)員人數(shù))教師(教工號(hào),教師姓名,教師電話,教師郵箱)從屬(加工號(hào),學(xué)院代碼)課程(課程代碼,學(xué)院代碼,課程名,人數(shù),學(xué)分)管理員(管理員代碼,管理員姓名,管理員電話,管理員郵箱)教室(教室編號(hào),所屬校區(qū),教學(xué)樓)安排(課程代碼,教工號(hào),教室編號(hào),管理員代碼,上課時(shí)間)分配(學(xué)號(hào),教室編號(hào))選擇(學(xué)號(hào),課程代碼)二、轉(zhuǎn)化后的關(guān)系模型如圖:感謝下載載精品三、數(shù)據(jù)庫實(shí)現(xiàn)1 、數(shù)據(jù)庫視圖的創(chuàng)建1 )創(chuàng)建一個(gè)學(xué)號(hào)為20105263的學(xué)生的查詢視圖;Createview學(xué)生信息(學(xué)生學(xué)號(hào) ,所選課程名稱,所在班級(jí)代號(hào),老師姓名,上課教室)asselec

8、t 學(xué)生學(xué)號(hào) ,課程名,班級(jí)代碼,教師姓名,教室編號(hào)from學(xué)生 ,課程,班級(jí),教師,教室where 學(xué)生 .班級(jí)代碼 = 班級(jí) .班級(jí)代碼 and學(xué)生 .學(xué)院代碼 = 學(xué)院 . 學(xué)院代感謝下載載精品碼2 )創(chuàng)建一個(gè)教工號(hào)為5132 的教師的查詢視圖;Create view教師信息(所教課程名稱,所教班級(jí)代號(hào),所屬學(xué)院,上課教室)asselect課程名,班級(jí)代碼,學(xué)院,教室編號(hào)from課程,班級(jí),學(xué)院,教室,教師where教師 .教工號(hào) = 5132 ;3 )創(chuàng)建一個(gè)管理員的查詢視圖Create view管理員視圖(課程名稱,老師姓名,學(xué)生姓名,教室編號(hào))asselect課程名,教師姓名,學(xué)生

9、姓名,教室編號(hào)from課程,教師,學(xué)生,教室;2 、索引的創(chuàng)建我們可以在視圖學(xué)生信息中的”學(xué)號(hào)列”上創(chuàng)建一個(gè)索引Created index stu_index on學(xué)生信息 (學(xué)號(hào) )。3 、權(quán)限管理,安全性設(shè)計(jì)感謝下載載精品授予權(quán)限1.給學(xué)生一個(gè)可以查看課程安排的權(quán)限Grant select on安排 to 學(xué)生2.給教師一個(gè)可以查看學(xué)生選擇課程情況的權(quán)限Grant select on選擇 to 教師3.給教師一個(gè)可以查看課程安排的權(quán)限Grant update on安排 to教師4.給學(xué)生一個(gè)可以查看自己的選課的權(quán)限Grant select on選擇 to 學(xué)生4.給管理員一個(gè)可以查看課程安

10、排的權(quán)限Grant select on安排 to管理員6.給管理員一個(gè)刪除教師和學(xué)生所選課程的權(quán)限Grant update on課程 to管理員代碼附錄if exists(select 1 from sys.sysforeignkey where role='FK_分配 _分配 _學(xué)生 ') thenalter table分配delete foreign key FK_分配 _分配 _學(xué)生end if;感謝下載載精品if exists(select 1 from sys.sysforeignkey where role='FK_學(xué)生 _屬于 _班級(jí) ') the

11、nalter table學(xué)生delete foreign key FK_學(xué)生 _屬于 _班級(jí)end if;if exists(select 1 from sys.sysforeignkey where role='FK_學(xué)生 _所在 _專業(yè) ') thenalter table學(xué)生delete foreign key FK_學(xué)生 _所在 _專業(yè)end if;if exists(select 1 from sys.sysforeignkey where role='FK_學(xué)生 _所屬 _學(xué)院 ') thenalter table學(xué)生delete foreign k

12、ey FK_學(xué)生 _所屬 _學(xué)院end if;if exists(select 1 from sys.sysforeignkey where role='FK_選擇 _選擇 _學(xué)生 ') thenalter table選擇delete foreign key FK_選擇 _選擇 _學(xué)生end if;drop index if exists學(xué)生 .所屬 _FK;感謝下載載精品drop index if exists學(xué)生 .所在 _FK;drop index if exists學(xué)生 .屬于 _FK;drop index if exists學(xué)生 .學(xué)生 _PK;drop table

13、if exists學(xué)生 ;/*=*/* Table:學(xué)生*/*=*/create table學(xué)生(學(xué)號(hào)varchar(10)not null,專業(yè)代碼varchar(10)not null,班級(jí)代碼varchar(10)not null,學(xué)院代碼varchar(10)not null,學(xué)生姓名varchar(8)null,年齡varchar(16)null,感謝下載載精品籍貫varchar(8)null,入學(xué)時(shí)間timestampnull,constraint PK_學(xué)生primary key (學(xué)號(hào) );/*=*/* Index:學(xué)生 _PK*/*=*/create unique index

14、學(xué)生 _PK on學(xué)生(學(xué)號(hào)ASC);/*=*/* Index:屬于 _FK*/*=*/create index屬于 _FK on學(xué)生(班級(jí)代碼ASC);感謝下載載精品/*=*/* Index:所在 _FK*/*=*/create index所在 _FK on學(xué)生(專業(yè)代碼ASC);/*=*/* Index:所屬 _FK*/*=*/create index所屬 _FK on學(xué)生(學(xué)院代碼ASC);alter table學(xué)生add constraint FK_學(xué)生 _屬于 _班級(jí)foreign key (班級(jí)代碼 )references班級(jí)(班級(jí)代碼 )感謝下載載精品on update rest

15、ricton delete restrict;alter table學(xué)生add constraint FK_學(xué)生 _所在 _專業(yè)foreign key (專業(yè)代碼 )references專業(yè)(專業(yè)代碼 )on update restricton delete restrict;alter table學(xué)生add constraint FK_學(xué)生 _所屬 _學(xué)院foreign key (學(xué)院代碼 )references學(xué)院(學(xué)院代碼 )on update restricton delete restrict;if exists(select 1 from sys.sysforeignkey whe

16、re role='FK_學(xué)生 _屬于 _班級(jí) ') thenalter table學(xué)生delete foreign key FK_學(xué)生 _屬于 _班級(jí)end if;if exists(select 1 from sys.sysforeignkey where role='FK_班級(jí) _包含 _專業(yè) ') thenalter table班級(jí)delete foreign key FK_班級(jí) _包含 _專業(yè)感謝下載載精品end if;drop index if exists班級(jí) .包含 _FK;drop index if exists班級(jí) .班級(jí) _PK;drop t

17、able if exists班級(jí) ;/*=*/* Table:班級(jí)*/*=*/create table班級(jí)(班級(jí)代碼varchar(10)not null,專業(yè)代碼varchar(10)not null,班級(jí)名varchar(8)null,學(xué)生數(shù)integernull,班主任char(10)null,constraint PK_班級(jí)primary key (班級(jí)代碼 );感謝下載載精品/*=*/* Index:班級(jí) _PK*/*=*/create unique index班級(jí) _PK on班級(jí)(班級(jí)代碼ASC);/*=*/* Index:包含 _FK*/*=*/create index包含 _

18、FK on班級(jí)(專業(yè)代碼ASC);alter table班級(jí)add constraint FK_班級(jí) _包含 _專業(yè)foreign key (專業(yè)代碼 )references專業(yè)(專業(yè)代碼 )感謝下載載精品on update restricton delete restrict; if exists(select 1 from sys.sysforeignkey where role='FK_專業(yè) _含有 _學(xué)院 ') thenalter table專業(yè)delete foreign key FK_專業(yè) _含有 _學(xué)院end if;if exists(select 1 from

19、sys.sysforeignkey where role='FK_學(xué)生 _所在 _專業(yè) ') thenalter table學(xué)生delete foreign key FK_學(xué)生 _所在 _專業(yè)end if;if exists(select 1 from sys.sysforeignkey where role='FK_班級(jí) _包含 _專業(yè) ') thenalter table班級(jí)delete foreign key FK_班級(jí) _包含 _專業(yè)end if;drop index if exists專業(yè) .所屬 _FK;drop index if exists專業(yè)

20、.專業(yè) _PK;drop table if exists專業(yè) ;感謝下載載精品/*=*/* Table:專業(yè)*/*=*/create table專業(yè)(專業(yè)代碼varchar(10)not null,學(xué)院代碼varchar(10)not null,專業(yè)名varchar(8)null,constraint PK_專業(yè)primary key (專業(yè)代碼 );/*=*/* Index:專業(yè) _PK*/*=*/create unique index專業(yè) _PK on專業(yè)(專業(yè)代碼ASC);感謝下載載精品/*=*/* Index:所屬 _FK*/*=*/create index所屬 _FK on專業(yè)(學(xué)院

21、代碼ASC);alter table專業(yè)add constraint FK_專業(yè) _含有 _學(xué)院foreign key (學(xué)院代碼 )references學(xué)院(學(xué)院代碼 )on update restricton delete restrict; if exists(select 1 from sys.sysforeignkey where role='FK_安排 _安排 _課程 ') thenalter table安排delete foreign key FK_安排 _安排 _課程end if;if exists(select 1 from sys.sysforeignkey

22、 where role='FK_課程 _開設(shè) _學(xué)院 ') thenalter table課程感謝下載載精品delete foreign key FK_課程 _開設(shè) _學(xué)院end if;if exists(select 1 from sys.sysforeignkey where role='FK_選擇 _選擇 2_課程 ') thenalter table選擇delete foreign key FK_選擇 _選擇 2_課程end if;drop index if exists課程 .開設(shè) _FK;drop index if exists課程 .課程 _PK;

23、drop table if exists課程 ;/*=*/* Table:課程*/*=*/create table課程(課程代碼varchar(8)not null,感謝下載載精品學(xué)院代碼varchar(10)not null,課程名varchar(8)null,人數(shù)integernull,所屬校區(qū)varchar(10)null,constraint PK_課程primary key (課程代碼 );/*=*/* Index:課程 _PK*/*=*/create unique index課程 _PK on課程(課程代碼ASC);/*=*/* Index:開設(shè) _FK*/*=*/create i

24、ndex開設(shè) _FK on課程(感謝下載載精品學(xué)院代碼ASC);alter table課程add constraint FK_課程 _開設(shè) _學(xué)院foreign key (學(xué)院代碼 )references學(xué)院(學(xué)院代碼 )on update restricton delete restrict; if exists(select 1 from sys.sysforeignkey where role='FK_專業(yè) _含有 _學(xué)院 ') thenalter table專業(yè)delete foreign key FK_專業(yè) _含有 _學(xué)院end if;if exists(select

25、 1 from sys.sysforeignkey where role='FK_從屬 _從屬 2_學(xué)院 ') thenalter table從屬delete foreign key FK_從屬 _從屬 2_學(xué)院end if;if exists(select 1 from sys.sysforeignkey where role='FK_學(xué)生 _所屬 _學(xué)院 ') thenalter table學(xué)生delete foreign key FK_學(xué)生 _所屬 _學(xué)院end if;感謝下載載精品if exists(select 1 from sys.sysforeig

26、nkey where role='FK_課程 _開設(shè) _學(xué)院 ') thenalter table課程delete foreign key FK_課程 _開設(shè) _學(xué)院end if;drop index if exists學(xué)院 .學(xué)院 _PK;drop table if exists學(xué)院 ;/*=*/* Table:學(xué)院*/*=*/create table學(xué)院(學(xué)院代碼varchar(10)not null,學(xué)院名varchar(8)null,學(xué)院人數(shù)integernull,constraint PK_學(xué)院primary key (學(xué)院代碼 );感謝下載載精品/*=*/* Ind

27、ex:學(xué)院 _PK*/*=*/create unique index學(xué)院 _PK on學(xué)院(學(xué)院代碼ASC); if exists(select 1 from sys.sysforeignkey where role='FK_安排 _安排 4_管理員 ') thenalter table安排delete foreign key FK_安排 _安排 4_管理員end if;drop index if exists管理員 .教務(wù)處 _PK;drop table if exists管理員 ;/*=*/* Table:管理員*/*=*/感謝下載載精品create table管理員(管理

28、員代碼varchar(20)not null,學(xué)生姓名varchar(8)null,教師電話varchar(20)null,管理員郵箱char(10)null,constraint PK_管理員primary key (管理員代碼 );/*=*/* Index:教務(wù)處 _PK*/*=*/create unique index教務(wù)處 _PK on管理員(管理員代碼ASC); if exists(select 1 from sys.sysforeignkey where role='FK_從屬 _從屬 _教師 ') thenalter table從屬delete foreign k

29、ey FK_從屬 _從屬 _教師end if;if exists(select 1 from sys.sysforeignkey where role='FK_安排 _安排 2_教師 ') then感謝下載載精品alter table安排delete foreign key FK_安排 _安排 2_教師end if;drop index if exists教師 .教師 _PK;drop table if exists教師 ;/*=*/* Table:教師*/*=*/create table教師(教工號(hào)varchar(10)not null,學(xué)生姓名varchar(8)null,

30、教師電話varchar(20)null,教師郵箱varchar(30)null,constraint PK_教師primary key (教工號(hào) );感謝下載載精品/*=*/* Index:教師 _PK*/*=*/create unique index教師 _PK on教師(教工號(hào)ASC); if exists(select 1 from sys.sysforeignkey where role='FK_分配 _分配 2_教室 ') thenalter table分配delete foreign key FK_分配 _分配 2_教室end if;if exists(select 1 from sys.sysforeignkey where role='FK_安排 _安排 3_教室 ') thenalter table安排delete foreign key FK_安排 _安排

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論