

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 大型數(shù)據(jù)庫課程設計</b></p><p><b> 設計報告</b></p><p> 題 目:教務管理系統(tǒng)后臺數(shù)據(jù)庫</p><p> 學 號: </p><p> 學生姓名:
2、 </p><p> 指導教師: </p><p> 提交時間: </p><p><b> 目錄</b></p><p> 第1章 需求分析1</p><p> 1.1 需求調查1&
3、lt;/p><p> 1.2 系統(tǒng)功能分析2</p><p> 1.3 面對用戶需求分析3</p><p> 第2章 面向對象分析和設計4</p><p> 第3章 邏輯結構設計8</p><p> 3.1 類和對象向關系模式轉換10</p><p> 3.2 關系模式優(yōu)化1
4、1</p><p> 第4章 數(shù)據(jù)庫物理結構設計11</p><p> 4.1 存取方法設計11</p><p> 4.2 存儲結構設計11</p><p> 4.3 物理設計12</p><p> 第5章 數(shù)據(jù)庫完整性設計15</p><p> 5.1 主鍵及唯一性索引
5、15</p><p> 5.2 參照完整性設計16</p><p> 5.3 Check約束17</p><p> 5.4 Default約束17</p><p> 5.5 觸發(fā)器設計17</p><p> 第6章 數(shù)據(jù)庫視圖設計19</p><p> 第7章 數(shù)據(jù)庫存儲過
6、程設計20</p><p> 第8章 權限設計22</p><p><b> 總結22</b></p><p><b> 參考文獻:23</b></p><p> 教務管理系統(tǒng)后臺數(shù)據(jù)庫</p><p><b> 第1章 需求分析</b>
7、;</p><p><b> 1.1 需求調查</b></p><p> 通過對各個用戶的調查,該教務管理系統(tǒng)有如下需求:</p><p> 系統(tǒng)管理:實現(xiàn)系統(tǒng)管理人員對系統(tǒng)的管理,包括添加刪除用戶,更改密碼, 數(shù)據(jù)備份,數(shù)據(jù)還原,注銷等功能。</p><p> 教務管理:實現(xiàn)教務管理人員對系統(tǒng)的管理,包括課程安
8、排,成績審核,學生成績管理,學生學籍管理等功能。</p><p> 基本信息:實現(xiàn)顯示學生和老師以及課程的基本信息(包括學生學籍信息和學生所修課程信息,教師基本信息,課程基本信息)。</p><p> 選課:實現(xiàn)在一定范圍內學生選擇課程,選擇老師。</p><p> 查詢:包括實現(xiàn)學生查詢,老師查詢。學生查詢包括自己的基本信息,自己的課程,課表,成績等,老師查
9、詢包括查詢自己的信息,自己所帶班的學生,自己的課表以及學生成績等。</p><p> 服務器配置:對它進行配置可以使得在其他電腦上也照常使用。這樣不必每次都到數(shù)據(jù)庫中去更改。</p><p> 幫助系統(tǒng):幫助系統(tǒng)為用戶指明方向。</p><p> 1.2 系統(tǒng)功能分析</p><p> 教學計劃管理:主要用于課程計劃登記、課程計劃審批
10、、選課情況查詢、選課信息審批等。</p><p> 學籍管理:用于對學生學籍基本信息的錄入、查詢、修改、維護、刪除等常用功能,并提供學號編排、學生照片輸入顯示、學籍變動(留級、休學、跳級、轉班、轉學、退學等)、獎懲登記、畢業(yè)情況等功能。</p><p> 排課/選課管理:用于對課程的排布和選擇。對于特定的課程、教師可以設定優(yōu)先級別,公選課可以按排在晚上進行,專業(yè)課安排在上午或下午。一個
11、老師帶幾個班的同一門課程要考慮各個班級的課程安排進度。對與公選課,可以打破班級的限制,把全校的學生組織在一塊上課。對于臨時性的調課、代課對課表進行人工干預處理。在確保修滿一學年學分的情況下,學生可以根據(jù)自己的實際情況具體選擇某一學期的課程。</p><p> 教師管理:用于管理教師的基本信息,其所在院系、所授課程,所帶的班級,教師平時上課的時數(shù),并記錄教師的考評情況。</p><p>
12、 考試成績管理:用于發(fā)布學生一個學期所修課程所獲得的成績,是否掛科、參加補考,補考的成績等。 </p><p> 畢業(yè)設計管理:用于統(tǒng)計畢業(yè)生在校期間的實習的情況,畢業(yè)生的論文及其答辯的等相關情況。</p><p> 教師評教管理:用于學生對老師、同行對教師、領導對教師的教學工作評價。他們評價的加權平均值是老師每一學期的表現(xiàn)得分。</p><p> 報名管理:
13、用于登記學生在校期間的各類考試報名情況,如英語等級考試、計算機等級考試、雙學位報名等。</p><p> 即時事務管理:用于發(fā)布和管理學校及學院的相關通知,便于相關人員了解學校及學院的近期動態(tài)。</p><p> 1.3 面對用戶需求分析</p><p> 在學生選課系統(tǒng)中,最主要的功能就是進行一系列的查詢和各類數(shù)據(jù)的管理。因此,可以將學生選課系統(tǒng)分為管理系統(tǒng)
14、(有數(shù)據(jù)變化)和查詢系統(tǒng)兩個子系統(tǒng)。而在所設計的學生選課系統(tǒng)中,主要有四類用戶,即學生用戶,老師用戶,教務管理員和系統(tǒng)管理員。各類用戶在該系統(tǒng)中的需求不同,權限也不同。因此,為了更明確,更系統(tǒng)的了解用戶需求,我們還可以將管理系統(tǒng)再細分為學生管理系統(tǒng),老師管理系統(tǒng),教務管理員管理系統(tǒng),系統(tǒng)管理員管理系統(tǒng)。同樣,將查詢系統(tǒng)也按用戶職能進行細分,即學生查詢系統(tǒng),老師查詢系統(tǒng),教務管理員查詢系統(tǒng),系統(tǒng)管理員查詢系統(tǒng)。這樣細分后,看似把系統(tǒng)需求繁
15、雜化了。其實不然,細分后使各用戶需求更加明確了,并且能更好的把握系統(tǒng)需求。</p><p> 下面從細分后的各個子系統(tǒng)分析子系統(tǒng)的需求:</p><p> 學生管理系統(tǒng)。學生用戶在使用該系統(tǒng)時,首先必須通過賬號和密碼登錄系統(tǒng)。因此,對密碼的設置和修改是最基本的需求。由于所有用戶在使用該系統(tǒng)時都需要賬號和密碼,所以在后面的用戶需求分析時不再重復對此需求進行描述。在登錄系統(tǒng)后,學生用戶的最
16、主要的需求就是通過該系統(tǒng)進行選課、退課。其次,學生用戶還要求可以通過系統(tǒng)進行個人信息的維護(包括添加、刪除、修改信息)以及學生評教和各類報名。</p><p> 學生查詢系統(tǒng)。學生用戶在該系統(tǒng)中是最低級的用戶,所以可以查詢的數(shù)據(jù)也是有限的,主要有個人信息查詢,成績查詢(個人成績),即時事物查看,學業(yè)預警查看。在進行選課的時候還要對課程信息進行查詢,課程選完后要查詢課表。</p><p>
17、 老師管理系統(tǒng)。該系統(tǒng)中,老師用戶當然也有維護個人信息的需求。除此之外,更重要的一個需求是要進行學生成績的錄入。</p><p> 老師查詢系統(tǒng)。老師用戶不僅要有查詢自己的個人信息的功能,還要有查詢學生信息的功能。當學生用戶進行選課完畢后,老師用戶有對選課、任課信息、課表的查詢以及花名冊的查看的需求。當課程結束后,老師在錄入學生成績的時候,也要對課程信息、學生信息進行查詢。老師用戶的另一個需求是對學生成績的查
18、詢,這個成績查詢不僅可以查詢學生用戶的個人成績,還可以查詢所帶課程的成績和所有學生的成績。</p><p> 教務管理員管理系統(tǒng)。首先當然個人信息的維護。對于教務管理員來說,該系統(tǒng)應該可以幫助他進行開課信息的維護,人才培養(yǎng)方案管理;在學生由于種種原因而有選課異常時,教務管理員還有重選、補選、退選的需求;課程結束老師錄入學生成績后,教務管理員還有利用系統(tǒng)進行成績的審核,有時還要對某些學生的成績進行修改。</
19、p><p> 教務管理員查詢系統(tǒng)。教務管理員首先要具有學生查詢系統(tǒng),老師查詢系統(tǒng)的所有需求。除了這些需求外,教務管理員還應該可以查詢開課信息,學生評教查詢和學生成績查詢(包括學生個人成績,班級成績,某課程成績以及全院學生的成績)。</p><p> 系統(tǒng)管理員管理系統(tǒng)。作為系統(tǒng)掛了管理員,是該系統(tǒng)中最高級的用戶,因此該用戶的需求相對比較的多。第一,要通過系統(tǒng)對院系進行管理:院系的設置,院系
20、的調整以及院系的總體規(guī)劃。第二,進行專業(yè)的設置,專業(yè)的添加、刪除、修改,專業(yè)的調整。第三,要對學期進行設置和教室的管理。第四,對各學院的教師管理,其中就包括了老師在系統(tǒng)中的權限設置。第五,學生的學籍的管理(學籍的異動)。第六,通過各學院上報的課程信息進行全面的排課以及課程的停開和增開,這也是學生選課系統(tǒng)中很重要的一個需求。最后,系統(tǒng)管理員管理系統(tǒng)還應該可以利用該系統(tǒng)進行用戶的管理和維護,包括用戶的添加、刪除,修改等。</p>
21、<p> 系統(tǒng)管理員查詢系統(tǒng)。該子系統(tǒng)的需求首先要包括前三類用戶查詢系統(tǒng)中的所有需求,即可以查詢前三類用戶能進行的所有查詢。其次,要包括院系的查詢,專業(yè)的查詢,教室的查詢。第三,通過系統(tǒng)查詢學生、教師的基本信息,查詢老師的任課情況以及教學情況(評教情況)。第四,在對學生學籍管理時要對學生學籍的查詢。第五,對課程信息及選課信息的查詢。此外,還有對該系統(tǒng)中所有學生用戶的學生成績查詢和該系統(tǒng)中所有老師用戶的評教結果查詢的需求。
22、</p><p> 第2章 面向對象分析和設計</p><p><b> 類和對象設計如下:</b></p><p> 第3章 邏輯結構設計</p><p><b> 局部E-R圖</b></p><p><b> 全局E-R圖:</b><
23、;/p><p> 3.1 類和對象向關系模式轉換</p><p> 學生信息(姓名、學號、性別、出生年月、政治面貌、行政班級號、學院、專業(yè)名稱、培養(yǎng)層次、籍貫、民族、家庭地址、郵政編碼、聯(lián)系電話、身份證號)</p><p> 成績信息(學生姓名、學號、專業(yè)名稱、課程名、課程號、分數(shù)、績點、學分、所獲學分、掛科情況、補考情況、重修情況、考試次數(shù))</p>
24、<p> 全部課程(課程名、課程號、學時、學分、類別) </p><p> 開設課程(課程名、課程號、任課老師、選課班級、學時、學分、開課年度、開課學期、開科學院、開課班級、上課地點、上課時間、班級限制人數(shù))</p><p> 選課信息(學生姓名、學號、學院、教學班號、課程名、課程號、任課老師、上課地點、上課時間)</p><p> 行政班級
25、信息(班級名稱、班級號、班級人數(shù)、班主任、輔導員、所屬專業(yè)、所屬學院)</p><p> 專業(yè)信息(專業(yè)名稱、專業(yè)編號、所授學位、培養(yǎng)方案、所屬學院)</p><p> 部門單位(單位名稱、單位負責人、單位編號、上級部門)</p><p> 教學計劃(開課年度、開課學期、專業(yè)、開設課程、培養(yǎng)對象)</p><p> 教師信息(教師姓名
26、、教職工號、性別、出生年月、學歷、職稱、所屬學院、籍貫、民族、家庭地址、郵政編碼、聯(lián)系電話、身份證號碼)</p><p> 論文答辯(人員姓名、人員學號、辯題、考官、得分)</p><p> 評教信息(教師、課程、學生姓名、學號、班級號、得分)</p><p> 即時事物(通知標題、通知內容、發(fā)布單位、發(fā)布時間、有效期限)</p><p&g
27、t; 等級考試報名(考試名稱、學號、考試號、身份證號、費用)</p><p> 培養(yǎng)對象(博士生、碩士生、本科生、??粕?lt;/p><p> 3.2 關系模式優(yōu)化</p><p> 學生信息(姓名、學號、性別、出生年月、政治面貌、行政班級號、學院、專業(yè)名稱、培養(yǎng)層次、籍貫、民族、家庭地址、郵政編碼、聯(lián)系電話、身份證號)</p><p>
28、; 成績信息(學號、課程號、分數(shù)、績點、所獲學分、掛科情況、補考情況、重修情況、考試次數(shù))</p><p> 全部課程(課程名、課程號、學時、學分、類別) </p><p> 開設課程(課程號、教職工號、開課年度、開課學期、開課學院、開課班級、上課地點、上課時間、班級限制人數(shù))</p><p> 選課信息(學號、課程號)</p><p&
29、gt; 行政班級信息(班級名稱、班級號、班級人數(shù)、班主任、輔導員、所屬專業(yè)、所屬學院)</p><p> 專業(yè)信息(專業(yè)名稱、專業(yè)編號、所授學位、培養(yǎng)方案、所屬學院)</p><p> 部門單位(單位名稱、單位編號、單位負責人、上級部門)</p><p> 教學計劃(開課年度、開課學期、專業(yè)、開設課程、培養(yǎng)對象)</p><p>
30、教師信息(教師姓名、教職工號、性別、出生年月、學歷、職稱、所屬學院、籍貫、民族、家庭地址、郵政編碼、聯(lián)系電話、身份證號碼)</p><p> 論文答辯(人員學號、辯題、考官、得分)</p><p> 評教信息(教職工號、課程號、學號、得分)</p><p> 即時事物(通知標題、通知內容、發(fā)布單位、發(fā)布時間、有效期限)</p><p>
31、 等級考試報名(考試名稱、考試號、學號、身份證號、費用)</p><p> 培養(yǎng)對象(博士生、碩士生、本科生、??粕?lt;/p><p> 第4章 數(shù)據(jù)庫物理結構設計</p><p><b> 存取方法設計</b></p><p> 數(shù)據(jù)庫系統(tǒng)是多用戶共享的系統(tǒng),對同一個關系要建立多條存儲路徑才能滿足多用戶的多種
32、應用要求。對于教務管理系統(tǒng)來說,為了提高某些屬性(如:學生學號,教職工號,課程號,學生成績,選課信息等)的查詢速度,可以選擇聚簇存取的方法,即把這些屬性上具有相同值的元組集中放在連續(xù)的物理塊上。這樣在查詢某個學院或是查詢某個專業(yè)或某學年等的學生成績或選課等時就會大大提高查詢速度。因此,該系統(tǒng)中選擇聚簇存取方法。</p><p> 4.2 存儲結構設計</p><p> 教務管理系統(tǒng)是一
33、個大型復雜的計算機網(wǎng)絡信息系統(tǒng),采用基于瀏覽器/服務器(B/S),客戶端/服務器(C/S)混合的應用體系結構來建設教務管理系統(tǒng)。數(shù)據(jù)庫管理系統(tǒng)采用Microsoft 公司推出的SQL Server 2000 或以上版本,并用SQL進行數(shù)據(jù)庫的建立和數(shù)據(jù)庫中數(shù)據(jù)的維護和查詢。</p><p><b> 4.3 物理設計</b></p><p> 實現(xiàn)該設計的環(huán)境為W
34、indows XP Professional + MS SQL Server 2005 或以上版本。</p><p><b> 建立教務管理數(shù)據(jù)庫</b></p><p> create database 教務管理數(shù)據(jù)庫 on primary (</p><p> name=教務管理數(shù)據(jù)文件,</p><p>
35、filename='d:\教務管理\教務管理數(shù)據(jù)文件.mdf',</p><p> size=5, maxsize=10, filegrowth=1)</p><p><b> log on (</b></p><p> name=教務管理日志文件,</p><p> filename=
36、'd:\教務管理\教務管理日志文件.ldf',</p><p> size=3, maxsize=10, filegrowth=1)</p><p><b> 建立學生信息表</b></p><p> Create table 學生信息(</p><p> 姓名 varchar(20)
37、not NULL,</p><p> 學號 varchar(12) primary key,</p><p> 性別 char(2) default('男') check (性別in ('男''女')),</p><p> 出生日期 datetime,</p><p> 政治面貌 var
38、char(10),</p><p> 行政班級號 varchar(12),</p><p> 學院 varchar(20),</p><p> 專業(yè)名稱 varchar(20),</p><p> 培養(yǎng)層次 varchar(10) default('本科生'),</p><p> 籍貫 var
39、char(20),</p><p> 民族 varchar(20) default('漢族'),</p><p> 家庭地址 varchar(100),</p><p> 郵政編碼 varchar(10),</p><p> 聯(lián)系電話 varchar(20),</p><p> 身份證號 v
40、archar(30) not NULL)</p><p><b> 建立成績信息表</b></p><p> Create table 成績信息(</p><p> 學號 varchar(12) ,</p><p> 課程號 varchar(12) ,</p><p><b>
41、 分數(shù) float,</b></p><p><b> 績點 float,</b></p><p><b> 所獲學分 int,</b></p><p> 掛科情況 varchar(2) default('否') check (掛科情況in ('是''否'
42、)),</p><p> 重修情況 varchar(2) default('否') check (重修情況in ('是''否')),</p><p><b> 考試次數(shù) int,</b></p><p> primary key(學號,課程號))</p><p>&
43、lt;b> 建立全部課程表</b></p><p> Create table 全部課程(</p><p> 課程名 varchar(50) not NULL,</p><p> 課程號 varchar(12) primary key,</p><p><b> 學時 int,</b><
44、;/p><p><b> 學分 int,</b></p><p> 類別 varchar(50))</p><p><b> 建立開設課程表</b></p><p> Create table 開設課程(</p><p> 課程號 varchar(12) primary
45、 key,</p><p> 教職工號 char(12),</p><p><b> 開課年度 int,</b></p><p> 開課學期 varchar(10) default('春季') </p><p> check (開課學期in ('春季''夏季'
46、39;秋季''冬季')),</p><p> 開課學院 varchar(20),</p><p> 開課班級 varchar(20),</p><p> 上課地點 varchars(20),</p><p> 上課時間 varchar(20),</p><p> 班級限制人數(shù) int)
47、</p><p><b> 建立選課信息表</b></p><p> Create table 選課信息(</p><p> 學號 varchar(12) ,</p><p> 課程號 varchar(12), </p><p> primary key(學號,課程號))</p&g
48、t;<p><b> 建立行政班級信息表</b></p><p> Create table 行政班級信息(</p><p> 班級號 varchar(12) primary key,</p><p> 班級名稱 char(20) not NULL,</p><p><b> 班級人
49、數(shù) int,</b></p><p> 班主任 varchar(12),</p><p> 輔導員 varchar(12),</p><p> 所屬專業(yè) varchar(12),</p><p> 所屬學院 varchar(12))</p><p><b> 建立專業(yè)信息表</b&
50、gt;</p><p> Create table 專業(yè)信息(</p><p> 專業(yè)編號 varchar(12) primary key,</p><p> 專業(yè)名稱 char(20) not NULL,</p><p> 所授學位 varchar(20),</p><p> 培養(yǎng)方案 varchar(10
51、0),</p><p> 所屬學院 varchar(12))</p><p><b> 建立部門單位表</b></p><p> Create table 部門單位(</p><p> 單位編號 varchar(12) primary key,</p><p> 單位名稱 char(20
52、) not NULL,</p><p> 單位負責人 varchar(12),</p><p> 上級部門 varchar(12))</p><p> 10、建立教學計劃表</p><p> Create table 教學計劃(</p><p> 專業(yè)編號 varchar(12) primary key,&l
53、t;/p><p><b> 開課年度 int,</b></p><p> 開課學期 varchar(10),</p><p> 開設課程 varchar(12),</p><p><b> 培養(yǎng)對象 int)</b></p><p> 11、建立教師信息表</p&
54、gt;<p> Create table 教師信息(</p><p> 姓名 varchar(20) not NULL,</p><p> 教職工號 varchar(12) primary key,</p><p> 性別 char(2) default('男') check (性別in ('男''女&
55、#39;)),</p><p> 出生日期 datetime,</p><p> 學歷 varchar(10),</p><p> 職稱 varchar(10),</p><p> 學院 varchar(20),</p><p> 籍貫 varchar(20),</p><p> 民
56、族 varchar(20) default('漢族'),</p><p> 家庭地址 varchar(100),</p><p> 郵政編碼 varchar(10),</p><p> 聯(lián)系電話 varchar(20),</p><p> 身份證號 varchar(30) not NULL)</p>&
57、lt;p> 12、建立論文答辯表</p><p> Create table 論文答辯(</p><p> 學號 varchar(12) primary key,</p><p> 辯題 varchar(50),</p><p> 考官 varchar(12),</p><p><b> 得
58、分 float)</b></p><p> 13、建立評教信息表</p><p> Create table 評教信息(</p><p> 教職工號 varchar(12) ,</p><p> 課程號 varchar(12) ,</p><p> 學號 varchar(12) ,</p&g
59、t;<p> 得分 float ,</p><p> primary key(學號,課程號,教職工號))</p><p> 14、建立即時事務表</p><p> Create table 即時事務(</p><p> 通知標題 varchar(200) primary key,</p><p>
60、; 通知內容 varchar(1000) not NULL,</p><p> 發(fā)布單位 varchar(12),</p><p> 發(fā)布時間 datetime ,</p><p> 有效期限 datetime)</p><p> 15、建立等級考試報名表</p><p> Create table 等級考
61、試報名(</p><p> 考試名稱 varchar(20) not NULL,</p><p> 考試號 varchar(12) ,</p><p> 學號 varchar(12) ,</p><p> 身份證號 varchar(30) not NULL,</p><p> 費用 money ,</p
62、><p> primary key(學號,考試號))</p><p> 16、建立培養(yǎng)對象表</p><p> Create table 培養(yǎng)對象(</p><p><b> 博士生 int,</b></p><p><b> 碩士生 int,</b></p>
63、;<p><b> 本科生 int,</b></p><p><b> 專科生 int)</b></p><p> 第5章 數(shù)據(jù)庫完整性設計</p><p> 5.1 主鍵及唯一性索引</p><p><b> 參照完整性設計</b></p>
64、<p> 1、即時事務表中將屬性發(fā)布單位設計為外鍵</p><p> alter table 即時事務add foreign key (發(fā)布單位) references 部門單位(單位編號)</p><p> 2、教學計劃表中將屬性開設課程設計為外鍵</p><p> alter table 教學計劃add foreign key (開設課程)
65、 references 開設課程(課程號)</p><p> 3、論文答辯表中將屬性考官設計為外鍵</p><p> alter table 論文答辯add foreign key (考官) references 教師信息(教職工號)</p><p> 4、行政班級信息表中將屬性班主任、輔導員、所屬專業(yè)、所屬學院設計為外鍵</p><p&g
66、t; alter table 行政班級信息add foreign key (班主任) references 教師信息(教職工號)</p><p> alter table 行政班級信息add foreign key (輔導員) references 教師信息(教職工號)</p><p> alter table 行政班級信息add foreign key (所屬專業(yè)) referen
67、ces 專業(yè)信息(專業(yè)編號)</p><p> alter table 行政班級信息add foreign key (所屬學院) references 部門單位(單位編號)</p><p> 5、學生信息表中將屬性行政班級號設計為外鍵</p><p> alter table 學生信息add foreign key (行政班級號) references 行政班
68、級信息(班級號)</p><p> 6、專業(yè)信息表中將屬性所屬學院設計為外鍵</p><p> alter table 專業(yè)信息add foreign key (所屬學院) references 部門單位(單位編號)</p><p> 5.3 Check約束</p><p> 1、教師信息表和學生信息表中將性別進行check約束:ch
69、eck (性別in ('男''女'))</p><p> 2、成績信息表中將掛科情況和重修情況進行check約束:</p><p> check (掛科情況in ('是''否')) ,check (掛科情況in ('是''否'))</p><p> 3、開設課程表中
70、將開課學期進行check約束:</p><p> check (開課學期in ('春季''夏季''秋季''冬季'))</p><p> 5.4 Default約束</p><p> 1、教師信息表和學生信息表中性別默認值設為:男。default('男')</p>&l
71、t;p> 2、教師信息表和學生信息表中民族默認值設為:漢族。default('漢族')</p><p> 3、學生信息表中培養(yǎng)層次默認值設為:本科生。default('本科生')</p><p> 4、成績信息表中掛科情況和重修情況默認值設為:否。default('否')</p><p> 5、開設課程表
72、中開課學期默認值設為:春季。default('春季')</p><p><b> 觸發(fā)器設計</b></p><p> 1、在教師信息表中建立刪除教師觸發(fā)器</p><p> create trigger 刪除教師 on 教師信息</p><p> for delete as</p>
73、<p> declare @教職工號 varchar(12)</p><p> select @教職工號=教職工號 from deleted</p><p> declare @教職工號 varchar(12)</p><p> select @教職工號=教職工號 from 教師信息</p><p> where 教職
74、工號=(select 教職工號 from 開設課程)</p><p><b> begin</b></p><p> delete from 教師信息 where 教職工號=@教職工號</p><p> if(@教職工號=@教職工號)</p><p><b> begin</b></p
75、><p> delete from 開課信息 where 教職工號=@教職工號</p><p> delete from 論文答辯 where 考官=@教職工號</p><p> delete from 評教信息 where 教職工號=@教職工號</p><p><b> end</b></p><
76、;p><b> end</b></p><p> 2、在全部課程表中建立刪除課程觸發(fā)器</p><p> create trigger 刪除課程 on 全部課程</p><p> for delete as</p><p> declare @課程號 varchar(12)</p><
77、;p> select @課程號=課程號 from deleted</p><p> declare @課程號 varchar(12)</p><p> select @課程號=課程號 from 全部課程</p><p> where 課程號=(select 課程號 from 開設課程)</p><p><b> be
78、gin</b></p><p> delete from 全部課程 where 課程號=@課程號</p><p> if(@課程號=@課程號)</p><p><b> begin</b></p><p> delete from 開課信息 where 課程號=@課程號</p><
79、p> delete from 教學計劃 where 開設課程=@課程號</p><p> delete from 選課信息 where 課程號=@課程號</p><p><b> end</b></p><p><b> end</b></p><p> 3、在選課信息表中建立選課觸
80、發(fā)器</p><p> create trigger 選課 on 選課信息</p><p> for insert as</p><p> declare @課程號 varchar(12)</p><p> select @課程號=課程號 from inserted</p><p> declare @學號
81、 varchar(12)</p><p> select @學號=學號 from inserted</p><p><b> begin</b></p><p> if exists(select * from 開設課程</p><p> where 課程號=@課程號 and 班級限制人數(shù)>(select
82、count(學號)</p><p> from 選課信息 where 課程號=@課程號 group by 課程號))</p><p> insert into 選課信息 values (@學號,@課程號)</p><p><b> end</b></p><p> 4、在學生信息表中建立刪除學生觸發(fā)器</p
83、><p> create trigger 刪除學生 on 學生信息</p><p> for delete as</p><p> declare @學號varchar(12)</p><p> select @學號=學號from deleted</p><p> declare @學號varchar(12)&
84、lt;/p><p> select @學號=學號 from 學生信息</p><p> where 學號=(select 學號 from 選課信息)</p><p><b> begin</b></p><p> delete from 學生信息 where 學號=@學號</p><p>
85、if(@學號=@學號)</p><p><b> begin</b></p><p> delete from 成績信息 where 學號=@學號</p><p> delete from 論文答辯 where 學號=@學號</p><p> delete from 等級考試報名 where 學號=@學號<
86、/p><p> delete from 評教信息 where 學號=@學號</p><p> delete from 選課信息 where 學號=@學號</p><p><b> end</b></p><p><b> end</b></p><p> 第6章 數(shù)據(jù)庫
87、視圖設計</p><p> 1、建立部門信息視圖</p><p> create view 部門信息視圖as select * from 部門單位;</p><p> 2、建立學生成績視圖</p><p> create view 學生成績視圖as</p><p> select 成績信息.*,學生信息.
88、姓名,全部課程.課程名from 成績信息,學生信息,全部課程</p><p> where 成績信息.學號= 學生信息.學號and 成績信息.課程號= 全部課程.課程號;</p><p> 3、建立等級考試報名視圖</p><p> create view 等級考試報名視圖as</p><p> select 等級考試報名.*,學生
89、信息.姓名from 等級考試報名,學生信息</p><p> where 等級考試報名.學號= 學生信息.學號;</p><p> 4、建立即時事務視圖</p><p> create view 即時事務視圖as select * from 即時事務;</p><p> 5、建立教師信息視圖</p><p>
90、; create view 教師信息視圖as</p><p> select 教師信息.*,部門單位.單位名稱from 教師信息,部門單位</p><p> where 教師信息.學院= 部門單位.單位編號;</p><p> 6、建立教學計劃視圖</p><p> create view 教學計劃視圖as</p>
91、<p> select 教學計劃.*,專業(yè)信息.專業(yè)名稱from 教學計劃,專業(yè)信息</p><p> where 教學計劃.專業(yè)編號= 專業(yè)信息.專業(yè)編號;</p><p> 7、建立開設課程視圖</p><p> create view 開設課程視圖as</p><p> select 開設課程.*,全部課程.課程名,
92、教師信息.姓名from 開設課程,全部課程,教師信息</p><p> where 開設課程.課程號= 全部課程.課程號and 開設課程.教職工號= 教師信息.教職工號;</p><p> 8、建立論文答辯視圖</p><p> create view 論文答辯視圖as</p><p> select 論文答辯.*,教師信息.姓名as
93、 考官姓名,學生信息.姓名as 學生姓名</p><p> from 論文答辯,教師信息,學生信息</p><p> where 論文答辯.學號= 學生信息.學號and 論文答辯.考官= 教師信息.教職工號;</p><p> 9、建立評教信息視圖</p><p> create view 評教信息視圖 as</p>&
94、lt;p> select 評教信息.*,教師信息.姓名 as 教師姓名,全部課程.課程名,學生信息.姓名 as 學生姓名 from 評教信息,教師信息,全部課程,學生信息</p><p> where 評教信息.教職工號= 教師信息.教職工號 and 評教信息.課程號= 全部課程.課程號</p><p> and 評教信息.學號= 學生信息.姓名;</p>&
95、lt;p> 10、建立全部課程視圖</p><p> create view 全部課程視圖as select * from 全部課程;</p><p> 11、建立行政班級信息視圖</p><p> create view 行政班級信息視圖 as select * from 行政班級信息;</p><p> 12、建立選課
96、信息視圖</p><p> create view 選課信息視圖as</p><p> select 選課信息.學號,學生信息.姓名,全部課程.課程名,開設課程.*,教師信息.姓名as 任課老師 from 選課信息,全部課程,學生信息,開設課程,教師信息</p><p> where 選課信息.學號= 學生信息.學號and 選課信息.課程號= 全部課程.課程
97、號</p><p> and 開設課程.教職工號= 教師信息.教職工號 and 選課信息.課程號= 開設課程.課程號;</p><p> 13、建立學生信息視圖</p><p> create view 學生信息視圖 as select * from 學生信息;</p><p> 14、建立專業(yè)信息視圖</p><
98、;p> create view 專業(yè)信息視圖 as</p><p> select 專業(yè)信息.*,部門單位.* from 專業(yè)信息,部門單位</p><p> where 專業(yè)信息.所屬學院= 部門單位.單位編號;</p><p> 第7章 數(shù)據(jù)庫存儲過程設計</p><p> 1、建立刪除教師存儲過程</p>
99、<p> create proc 刪除教師存儲過程</p><p> @教職工號varchar(12) as</p><p> if exists(select * from 開課信息where 教職工號=@教職工號) return -1</p><p> if exists(select * from 論文答辯where 考官=@教職工
100、號) return -1</p><p> if exists(select * from 行政班級信息where 班主任=@教職工號) return -1</p><p> if exists(select * from 行政班級信息where 輔導員=@教職工號) return -1</p><p> if exists(select * fro
101、m 評教信息where 教職工號=@教職工號)</p><p><b> begin</b></p><p> delete from 教師信息 where 教職工號=@教職工號</p><p> delete from 評教信息 where 教職工號=@教職工號</p><p><b> end<
102、;/b></p><p> 2、建立刪除學生存儲過程</p><p> create proc 刪除學生存儲過程</p><p> @學號varchar(12) as</p><p> if exists(select * from 等級考試報名where 學號=@學號) return -1</p><
103、;p> if exists(select * from 論文答辯where 學號=@學號) return -1</p><p> if exists(select * from 選課信息where 學號=@學號) return -1</p><p><b> begin</b></p><p> delete from 學
104、生信息 where 學號=@學號</p><p> if exists(select * from 成績信息where 學號=@學號)</p><p> delete from 成績信息 where 學號=@學號</p><p> if exists(select * from 評教信息where 學號=@學號)</p><p>
105、delete from 評教信息 where 學號=@學號</p><p><b> end</b></p><p> 3、建立刪除課程存儲過程</p><p> create proc 刪除課程存儲過程</p><p> @課程號varchar(12) as</p><p> if
106、 exists(select * from 開設課程where 課程號=@課程號) return -1</p><p> if exists(select * from 選課信息where 課程號=@課程號) return -1</p><p> if exists(select * from 教學計劃where 開設課程=@課程號) return -1</p>
107、<p><b> begin</b></p><p> delete from 全部課程 where 課程號=@課程號</p><p> if exists(select * from 成績信息where 課程號=@課程號)</p><p> delete from 成績信息 where 課程號=@課程號</p&g
108、t;<p> if exists(select * from 評教信息where 課程號=@課程號)</p><p> delete from 評教信息 where 課程號=@課程號</p><p><b> end</b></p><p> 4、建立選課存儲過程</p><p> create
109、proc 選課存儲過程</p><p> @課程號varchar(12), @學號varchar(12) as</p><p> if not exists(select * from 學生信息where 學號=@學號) return -1</p><p> if not exists(select * from 開設課程where 課程號=@課程號)
110、return -1</p><p> if not exists(select * from 開設課程</p><p> where 課程號=@課程號and 班級限制人數(shù)>(select count(學號)</p><p> from 選課信息where 課程號=@課程號group by 課程號)) return -1</p><p
111、> insert into 選課信息values (@學號,@課程號)</p><p><b> 第8章 權限設計</b></p><p> 將所有表、視圖、觸發(fā)器和存儲過程的全部權限都授予給系統(tǒng)管理員</p><p><b> 給教務管理員授權:</b></p><p> gran
112、t all privileges on table 學生信息,成績信息,全部課程,開設課程,選課信息,行政班級信息,教學計劃,教師信息,實習信息,論文答辯,即時事務,等級考試報名,選課信息 to 教務管理員</p><p> grant select on table 評教信息 to 教務管理員</p><p> gront select on view (所有視圖) to 教務管
113、理員</p><p><b> 給教師授權</b></p><p> gront select on view (所有視圖) to 教師</p><p> gront insert on table 成績信息 to 教師 </p><p> grant select,update on table 教師信息
114、to 教師</p><p><b> 給學生授權</b></p><p> gront select on view (所有視圖) to 學生</p><p> gront select,update on table 學生信息 to 學生</p><p> gront insert on table 評教信
115、息 to 學生</p><p> gront insert,delete,update on table 選課信息 to 學生</p><p> gront insert,delete,update on table 等級考試報名 to 學生</p><p><b> 總結</b></p><p> 理論聯(lián)系實際
116、才能做好一件事,學習一門課程同樣是這樣。通過16學時的數(shù)據(jù)庫課程設計實習,受益匪淺,從中學到了許多新知識,這些知識是在課堂中不能學到或者說很難學到的。并且對大型數(shù)據(jù)庫設計這一門課程有了更深一步的理解。在做課程設計中,可以把課堂上所學的理論知識和實踐聯(lián)系起來,在所要開發(fā)的系統(tǒng)中漸漸學會了融會貫通。同樣通過對SQLServer的應用,也使我們熟練和鞏固了對SQL的理解。</p><p> 這次課程設計,完成課題是《
117、教務管理系統(tǒng)》,在教務管理系統(tǒng)的開發(fā)中采用了完整的數(shù)據(jù)庫設計的全過程,從需求分析到概念結構設計,到邏輯結構設計,最后到數(shù)據(jù)庫的實施和維護,每一步都認真的分析和實施。當然,在本次課程設計的成果中還存在許多的不足之處,這就需要我們學習更多的知識,進行更深研究。</p><p> 在這次實習中,我們完全投入到了開發(fā)系統(tǒng)的世界里。結束后明白了理論和實踐要想充分地結合,需要非常扎實的基本功。這就說明學好基礎知識是理論付諸
118、實踐的前提。在開發(fā)教務管理系統(tǒng)中我學到了很多,希望在以后能充分利用實習的機會充實自己,用所學的理論知識充分去實踐,在實踐中又要努力去鞏固理論知識。只有這樣,才能把一門課程甚至一門學科學精、學透。</p><p><b> 參考文獻:</b></p><p> 王珊,薩師煊 .數(shù)據(jù)庫系統(tǒng)概論[M]. 高等教育出版社,2005</p><p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫課程設計報告——教務管理系統(tǒng)
- 數(shù)據(jù)庫課程設計—教務管理系統(tǒng)
- 數(shù)據(jù)庫課程設計---教務管理系統(tǒng)
- 數(shù)據(jù)庫技術課程設計--教務管理數(shù)據(jù)庫系統(tǒng)
- 數(shù)據(jù)庫課程設計---教務管理系統(tǒng)
- 數(shù)據(jù)庫教務管理系統(tǒng)課程設計
- 數(shù)據(jù)庫課程設計---數(shù)據(jù)庫
- 工資管理系統(tǒng)數(shù)據(jù)庫設計報告(數(shù)據(jù)庫課程設計)
- 工資管理系統(tǒng)數(shù)據(jù)庫設計報告數(shù)據(jù)庫課程設計
- 數(shù)據(jù)庫課程設計--學校教務管理系統(tǒng)
- 數(shù)據(jù)庫課程設計--數(shù)據(jù)庫設計—公司管理系統(tǒng)
- 人事信息管理系統(tǒng)后臺數(shù)據(jù)庫設計
- 數(shù)據(jù)庫課程設計報告---圖書館管理系統(tǒng)數(shù)據(jù)庫
- 人事信息管理系統(tǒng)后臺數(shù)據(jù)庫設計
- 數(shù)據(jù)庫課程設計--bbs系統(tǒng)數(shù)據(jù)庫設計
- 數(shù)據(jù)庫課程設計---機房管理系統(tǒng)數(shù)據(jù)庫設計
- 數(shù)據(jù)庫課程設計--數(shù)據(jù)庫設計
- 工資管理系統(tǒng)數(shù)據(jù)庫設計報告(數(shù)據(jù)庫課程設計)模板
- 醫(yī)院門診管理系統(tǒng)的后臺數(shù)據(jù)庫設計報告
- 數(shù)據(jù)庫課程設計--工資管理系統(tǒng)數(shù)據(jù)庫設計
評論
0/150
提交評論