Oracle數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生考勤系統(tǒng)的Oracle實(shí)現(xiàn)_第1頁(yè)
Oracle數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生考勤系統(tǒng)的Oracle實(shí)現(xiàn)_第2頁(yè)
Oracle數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生考勤系統(tǒng)的Oracle實(shí)現(xiàn)_第3頁(yè)
Oracle數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生考勤系統(tǒng)的Oracle實(shí)現(xiàn)_第4頁(yè)
Oracle數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生考勤系統(tǒng)的Oracle實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩14頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、Oracle數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生考勤系統(tǒng)的Oracle實(shí)現(xiàn)1學(xué)生考勤管理系統(tǒng)背景分析隨著高校校園信息化的逐步完善,有效地借助網(wǎng)絡(luò)、數(shù)據(jù)庫(kù)等技術(shù)提高工作和管理效率。如今針對(duì)師生的成績(jī)查詢(xún)系統(tǒng)、教務(wù)管理系統(tǒng)、招生就業(yè)系統(tǒng)、BBS、校園網(wǎng)站等系統(tǒng)在各大高校紛紛出現(xiàn),對(duì)全校師生的學(xué)習(xí)、生活、管理、辦公帶來(lái)了便利。因此學(xué)生考勤管理系統(tǒng)為進(jìn)一步加強(qiáng)高校學(xué)風(fēng)建設(shè),維護(hù)正常的教學(xué)秩序,給學(xué)生創(chuàng)造一個(gè)優(yōu)良的學(xué)習(xí)環(huán)境,從而應(yīng)運(yùn)而生。目前高校學(xué)生上課考勤管理都是以任課老師上課點(diǎn)名,簽到等等記錄學(xué)生上課情況,對(duì)于時(shí)間比較長(zhǎng)的請(qǐng)假,需要通過(guò)遞交請(qǐng)假申請(qǐng)讓班導(dǎo)師、院系領(lǐng)導(dǎo)都批準(zhǔn)方能生效。這種模式在目前高校管理中暴露了不可避

2、免的弊端,這主要體現(xiàn)在如下幾個(gè)方面:1、學(xué)生請(qǐng)假不方便;2、學(xué)生之間有冒名頂替簽到的情況3、學(xué)生請(qǐng)假對(duì)任課老師不透明; 4、學(xué)生對(duì)自己整個(gè)學(xué)期的上課出勤情況沒(méi)有整體的統(tǒng)計(jì)信息;5、班導(dǎo)師對(duì)本班學(xué)生整個(gè)學(xué)期的上課出勤情況不易查看;6、院系領(lǐng)導(dǎo)、學(xué)校領(lǐng)導(dǎo)不容易把握學(xué)生上課的出勤情況。因此一個(gè)好的學(xué)生考勤管理系統(tǒng)在一定程度上可以解決這些弊端,本系統(tǒng)主要針對(duì)目前高校學(xué)生在線請(qǐng)假以及學(xué)生上課出勤管理當(dāng)中所暴露出來(lái)的問(wèn)題而設(shè)計(jì)的信息系統(tǒng)。本系統(tǒng)涉及到高校六大類(lèi)用戶(hù):學(xué)生、任課老師、班導(dǎo)師、院系領(lǐng)導(dǎo)、學(xué)校領(lǐng)導(dǎo)、系統(tǒng)管理員。2學(xué)生考勤管理系統(tǒng)需求分析2.1 用戶(hù)需求描述用戶(hù)是系統(tǒng)的最終使用者,根據(jù)分析,本系統(tǒng)

3、應(yīng)當(dāng)包括學(xué)生、班導(dǎo)師、任課老師、院系領(lǐng)導(dǎo)、學(xué)校領(lǐng)導(dǎo)、系統(tǒng)管理員六類(lèi)用戶(hù),這六類(lèi)用戶(hù)對(duì)系統(tǒng)的需求簡(jiǎn)要概括如下:2.2.1學(xué)生用戶(hù)需求描述學(xué)生對(duì)本系統(tǒng)的主要需求是:在線請(qǐng)假以及查看在校期間所有的上課出勤信息。在線請(qǐng)假需求:學(xué)生請(qǐng)假的全過(guò)程當(dāng)中,學(xué)生可以隨時(shí)查看請(qǐng)假的詳細(xì)進(jìn)展情況。查看出勤信息需求:學(xué)生可以查看在校期間所有學(xué)期上課出勤的詳細(xì)信息,如:查看“數(shù)據(jù)庫(kù)課程設(shè)計(jì)”這門(mén)課程在整個(gè)學(xué)期請(qǐng)假、曠課多少次等信息。其它需求:查看本人的基本信息,如本人的所屬的院系、年級(jí)、專(zhuān)業(yè)、班級(jí)、學(xué)號(hào)、姓名、性別等,以及修改個(gè)人用戶(hù)密碼。2.2.2任課老師用戶(hù)需求描述任課老師對(duì)系統(tǒng)的主要需求是:管理所教班級(jí)學(xué)生的上課

4、出勤信息以及查看所教班級(jí)學(xué)生的上課出勤信息。管理學(xué)生上課出勤需求:隨著時(shí)間的變化,自動(dòng)列出還沒(méi)有在網(wǎng)上公布的學(xué)生上課出勤信息,系統(tǒng)自動(dòng)根據(jù)學(xué)生請(qǐng)假系統(tǒng),決定學(xué)生上課出勤的最終結(jié)果。查看學(xué)生出勤信息需求:查看所教班級(jí)學(xué)生整個(gè)學(xué)期出勤情況。其它需求:本人基本信息以及修改個(gè)人用戶(hù)密碼。2.2.3班導(dǎo)師用戶(hù)需求描述班導(dǎo)師對(duì)本系統(tǒng)的主要需求是:審批本班學(xué)生本學(xué)期的在線請(qǐng)假以及查看本班學(xué)生本學(xué)期所有課程的上課出勤信息。審批學(xué)生請(qǐng)假需求:本班學(xué)生本學(xué)期在線請(qǐng)假申請(qǐng)后,自動(dòng)提示班導(dǎo)師有等待審批的請(qǐng)假信息,班導(dǎo)師針對(duì)請(qǐng)假申請(qǐng)信息進(jìn)行學(xué)生請(qǐng)假審批。查看學(xué)生上課出勤信息需求:查看本班學(xué)生整個(gè)學(xué)期有關(guān)課程的出勤統(tǒng)計(jì)信

5、息及詳細(xì)信息。其它需求:查看本班學(xué)生的基本信息、修改個(gè)人用戶(hù)密碼等。2.2.4院系領(lǐng)導(dǎo)用戶(hù)需求描述院系領(lǐng)導(dǎo)對(duì)系統(tǒng)的主要需求是:審批本院系學(xué)生超過(guò)三天的請(qǐng)假以及查看本院系學(xué)生上課出勤信息。審批請(qǐng)假需求:當(dāng)學(xué)生請(qǐng)超過(guò)三天的假,經(jīng)班導(dǎo)師審批同意后,系統(tǒng)自動(dòng)提交給任何一個(gè)進(jìn)入系統(tǒng)的院系領(lǐng)導(dǎo)審批請(qǐng)假。查看本院系學(xué)生出勤信息需求:輸入查詢(xún)條件后,系統(tǒng)根據(jù)查詢(xún)條件列出本院系學(xué)生相關(guān)的上課出勤信息。其它需求:查看本院系有關(guān)基本信息以及修改個(gè)人用戶(hù)密碼等。2.2.5學(xué)校領(lǐng)導(dǎo)用戶(hù)需求描述學(xué)校領(lǐng)導(dǎo)對(duì)系統(tǒng)的主要需求是:查看全校學(xué)生上課出勤信息。查看出勤信息需求:輸入查詢(xún)條件后,系統(tǒng)根據(jù)查詢(xún)條件列出本校學(xué)生相關(guān)的上課出

6、勤信息。其它需求:查看有關(guān)全校的基本信息以信修改個(gè)人用戶(hù)密碼等。2.2.6系統(tǒng)管理員用戶(hù)需求描述系統(tǒng)管理員有系統(tǒng)的最高權(quán)限,負(fù)責(zé)系統(tǒng)所需所有數(shù)據(jù)的動(dòng)態(tài)同步更新以及維護(hù),根據(jù)系統(tǒng)針對(duì)各用戶(hù)的設(shè)計(jì),基本功能需求如下:1、管理學(xué)校各院系、年級(jí)、專(zhuān)業(yè)、班級(jí)的添加、刪除、修改等。2、管理每個(gè)學(xué)期每個(gè)班級(jí)的課程安排及指定班導(dǎo)師和任課老師。3、管理系統(tǒng)所有用戶(hù)。4、管理全校課表安排。5、管理系統(tǒng)的請(qǐng)假、考勤信息。2.3功能需求描述根據(jù)各類(lèi)用戶(hù)的需求描述,系統(tǒng)應(yīng)當(dāng)具備請(qǐng)假系統(tǒng)、考勤管理系統(tǒng)、后臺(tái)管理系統(tǒng)這三大主要功能。請(qǐng)假系統(tǒng)功能需求:通過(guò)班導(dǎo)師以及院系領(lǐng)導(dǎo)批準(zhǔn)請(qǐng)假信息。請(qǐng)假最長(zhǎng)時(shí)間不能超過(guò)1個(gè)月,特殊情況除

7、外??记诠芾砉δ苄枨螅喝握n老師通過(guò)考勤管理系統(tǒng),對(duì)學(xué)生上課出勤信息進(jìn)行公開(kāi)。請(qǐng)假系統(tǒng)要借助班導(dǎo)師才能完成,考勤管理系統(tǒng)要借助請(qǐng)假系統(tǒng)、班級(jí)課表安排才能完成,然而每學(xué)年課表都在變化,班導(dǎo)師安排也有在變化,學(xué)生也在變化,因此必須要求后臺(tái)管理系統(tǒng)能根據(jù)系統(tǒng)需求,動(dòng)態(tài)的、準(zhǔn)確的更新系統(tǒng)數(shù)據(jù)。2.4系統(tǒng)功能劃分根據(jù)系統(tǒng)用戶(hù)的需求,將本系統(tǒng)按功能劃分成三大功能模塊:請(qǐng)假系統(tǒng)、考勤系統(tǒng)、后臺(tái)管理模塊,涉及到六大類(lèi)用戶(hù):學(xué)生、任課教師、班導(dǎo)師、院系領(lǐng)導(dǎo)、學(xué)校領(lǐng)導(dǎo)、系統(tǒng)管理員。2.4.1 請(qǐng)假系統(tǒng)模塊本模塊的功能是在線請(qǐng)假的實(shí)現(xiàn)及管理,主要涉及三大類(lèi)用戶(hù):學(xué)生、班導(dǎo)師及院系領(lǐng)導(dǎo)用戶(hù),學(xué)生通過(guò)此功能模塊進(jìn)行在線請(qǐng)

8、假及查看請(qǐng)假記錄信息;班導(dǎo)師在線審批學(xué)生請(qǐng)假及查看請(qǐng)假記錄信息;院系領(lǐng)導(dǎo)在線審批學(xué)生長(zhǎng)時(shí)間的請(qǐng)假及查看請(qǐng)假記錄信息。2.4.2 考勤系統(tǒng)模塊本模塊的功能是學(xué)生考勤信息統(tǒng)計(jì)的實(shí)現(xiàn)、查看及管理,涉及六大類(lèi)用戶(hù)中的所有用戶(hù)。學(xué)生在線查看自己所有學(xué)年的出勤信息;任課老師在線管理學(xué)生出勤信息;班導(dǎo)師、院系領(lǐng)導(dǎo)、學(xué)校領(lǐng)導(dǎo)查看不同的范圍的學(xué)生出勤信息。2.4.3 后臺(tái)管理管理本模塊的功能實(shí)現(xiàn)整個(gè)系統(tǒng)數(shù)據(jù)的同步更新及維護(hù),只涉及系統(tǒng)管理員用戶(hù)。系統(tǒng)管理員動(dòng)態(tài)的管理學(xué)生信息、課表安排、學(xué)年安排等信息,是整個(gè)系統(tǒng)實(shí)現(xiàn)的基礎(chǔ)。3學(xué)生考勤系統(tǒng)的E-R模型n1n1nmn1n1m1nnn1教師班級(jí)學(xué)生學(xué)院領(lǐng)導(dǎo)學(xué)院專(zhuān)業(yè)課程

9、假條開(kāi)設(shè)考勤屬于屬于授課聘請(qǐng)班導(dǎo)師管理請(qǐng)假學(xué)號(hào)姓名性別班級(jí)專(zhuān)業(yè)院系編號(hào)名稱(chēng)編號(hào)專(zhuān)業(yè)名稱(chēng)所屬學(xué)院編號(hào)姓名性別所屬院系課程號(hào)課程名課程性質(zhì)編號(hào)名稱(chēng)編號(hào)姓名性別所屬院系職稱(chēng)編號(hào)姓名性別所屬專(zhuān)業(yè)所屬學(xué)院班導(dǎo)師編號(hào)學(xué)號(hào)原因4數(shù)據(jù)字典設(shè)計(jì)名字:管理員信息描述:每一位管理員的具體信息定義:管理員信息=編號(hào)+姓名+性別+職稱(chēng)+密碼名字:學(xué)院領(lǐng)導(dǎo)信息描述:每一位學(xué)院領(lǐng)導(dǎo)的具體信息定義:學(xué)院領(lǐng)導(dǎo)信息=編號(hào)+姓名+性別+職稱(chēng)+所屬學(xué)院名字:院系信息描述:每一個(gè)學(xué)院的具體信息定義:院系信息=編號(hào)+院系名稱(chēng)名字:專(zhuān)業(yè)信息描述:每一位管理員的具體信息定義:專(zhuān)業(yè)信息=編號(hào)+姓名+所屬院系名字:課程信息描述:每一門(mén)課程的具體

10、信息定義:課程信息=課程號(hào)+課程名+課程性質(zhì)名字:教師信息描述:每一位教師的具體信息定義:教師信息=編號(hào)+姓名+性別+所屬院系名字:班級(jí)信息描述:每一個(gè)班級(jí)的具體信息定義:班級(jí)信息=編號(hào)+班級(jí)名稱(chēng)+班導(dǎo)師名字:班導(dǎo)師信息描述:每一位班導(dǎo)師的具體信息定義:班導(dǎo)師信息=編號(hào)+姓名+性別+所屬學(xué)院+所屬專(zhuān)業(yè)名字:學(xué)生信息描述:每一位學(xué)生的具體信息定義:學(xué)生信息=學(xué)號(hào)+姓名+性別+專(zhuān)業(yè)+院系+班級(jí)名字:請(qǐng)假條信息描述:每一請(qǐng)假條的具體信息定義:請(qǐng)假條信息=請(qǐng)假代號(hào)+班級(jí)代號(hào)+學(xué)生學(xué)號(hào)+請(qǐng)假原因+開(kāi)始時(shí)間+結(jié)束時(shí)間+請(qǐng)假天數(shù)+申請(qǐng)請(qǐng)假時(shí)間+班導(dǎo)師審批狀態(tài)+班導(dǎo)師審批時(shí)間+院系領(lǐng)導(dǎo)審批狀態(tài)+院系領(lǐng)導(dǎo)代號(hào)+

11、院系領(lǐng)導(dǎo)審批時(shí)間5數(shù)據(jù)庫(kù)表的邏輯結(jié)構(gòu)設(shè)計(jì)(1)系統(tǒng)管理員表admin字段名數(shù)據(jù)類(lèi)型可否為空鍵引用備注admin_nochar(5)否主鍵管理員編號(hào)admin_namechar(10)否管理員姓名admin_sexchar(2)否性別admin_titlechar(20)否職稱(chēng)admin_passwordvarchar2(20)否登入密碼(2)學(xué)生表student字段名數(shù)據(jù)類(lèi)型可否為空鍵引用備注stu_nochar(10)否主鍵學(xué)生學(xué)號(hào)stu_namevarchar(30)否學(xué)生姓名stu_sexchar(2)否性別stu_classchar(13)否外鍵所屬班級(jí)stu_majorchar(30

12、)否外鍵所屬專(zhuān)業(yè)stu_facultychar(40)否外鍵所屬學(xué)院(3)院系表faculty字段名數(shù)據(jù)類(lèi)型可否為空鍵引用備注faculty_idnumber否主鍵院系編號(hào)faculty_namechar(20)否院系名稱(chēng)(4)專(zhuān)業(yè)表major字段名數(shù)據(jù)類(lèi)型可否為空鍵引用備注major_idnumber否主鍵專(zhuān)業(yè)編號(hào)major_namechar(20)否專(zhuān)業(yè)名稱(chēng)major_facultynumber否外鍵所屬院系(5)教師表teacher字段名數(shù)據(jù)類(lèi)型可否為空鍵引用備注tea_nochar(10)否主鍵任課老師編號(hào)tea_namechar(20)否任課老師姓名tea_sexchar(2)否性別

13、tea_facultynumber否外鍵所屬學(xué)院(6)班導(dǎo)師表classteacher字段名數(shù)據(jù)類(lèi)型可否為空鍵引用備注classtea_nochar(5)否主鍵任課老師編號(hào)classtea_namechar(20)否任課老師姓名classtea_sexchar(2)否性別classtea_majornumber否外鍵所屬專(zhuān)業(yè)classtea_facultynumber否外鍵所屬學(xué)院(7)院領(lǐng)導(dǎo)表collegeleader字段名數(shù)據(jù)類(lèi)型可否為空鍵引用備注collegeleader_nochar(5)否主鍵學(xué)院領(lǐng)導(dǎo)編號(hào)collegeleader_namechar(20)否學(xué)院領(lǐng)導(dǎo)姓名college

14、leader_sexchar(2)否性別collegeleader_facultynumber否外鍵所屬學(xué)院titlechar(20)否職稱(chēng)(8)學(xué)校領(lǐng)導(dǎo)表schoolleader字段名數(shù)據(jù)類(lèi)型可否為空鍵引用備注schoolleader_nochar(5)否主鍵學(xué)校領(lǐng)導(dǎo)編號(hào)schoolleader_namechar(20)否學(xué)校領(lǐng)導(dǎo)姓名schoolleader_sexchar(2)否性別deptchar(20)否所屬部門(mén)titlechar(25)否職稱(chēng)(9)學(xué)生上課出勤記錄表kaoqin_record字段名數(shù)據(jù)類(lèi)型可否為空鍵引用備注kaoqin_idchar(13)否主鍵上課出勤編號(hào)sk_ti

15、medatetime否上課時(shí)間stu_numberchar(10)否外鍵 學(xué)生學(xué)號(hào)stu_statuschar(10)否學(xué)生上課考勤狀態(tài)teacher_nochar(10)否外鍵教師編號(hào)course_nochar(13)否外鍵課程編號(hào)(10)課程信息表course字段名數(shù)據(jù)類(lèi)型可否為空鍵引用備注course_nochar(13)否主鍵課程編號(hào)course_namechar(20)否課程名稱(chēng)course_xzchar(4)否課程性質(zhì)(11)班級(jí)表classes字段名數(shù)據(jù)類(lèi)型可否為空鍵引用備注class_nochar(10)否主鍵課程編號(hào)class_namechar(20)否課程名稱(chēng)cl

16、asstea_nochar(5)否外鍵課程性質(zhì)(12)請(qǐng)假信息表qingjia字段名數(shù)據(jù)類(lèi)型可否為空鍵引用備注idnumber否主鍵請(qǐng)假代號(hào)class_idchar(10)否外鍵班級(jí)代號(hào)stu_novarchar2 (20)否外鍵學(xué)生學(xué)號(hào)leave_reasonvarchar2 (200)否請(qǐng)假原因start_timedatetime否開(kāi)始時(shí)間end_timedatetime否結(jié)束時(shí)間day_numbernumber否請(qǐng)假天數(shù)qingjia_timedatetime否申請(qǐng)請(qǐng)假時(shí)間class_tea_idchar(5)否外鍵class_tea_sp_statuschar(10)否班導(dǎo)師審批狀態(tài)c

17、lass_tea_sp_timedatetime否班導(dǎo)師審批時(shí)間coll_leader_sp_statuschar(10)否院系領(lǐng)導(dǎo)審批狀態(tài)coll_leader_idchar(5)否外鍵院系領(lǐng)導(dǎo)代號(hào)coll_leader_sp_timedatetime否院系領(lǐng)導(dǎo)審批時(shí)間備注:status 表示審批狀態(tài):0為等待審批,1為同意請(qǐng)假,2為不同意請(qǐng)假。6數(shù)據(jù)庫(kù)表空間和表設(shè)計(jì)6.1、設(shè)計(jì)表空間及用戶(hù)創(chuàng)建一般的字典管理類(lèi)表空間,目的是為了方便利用SQL字典跟蹤磁盤(pán)的使用情況。使用如下命令創(chuàng)建表空間:connect system/myPassword;create user dyz06103103ide

18、ntified by duanyuzhao;grant create session,dba to dyz06103103;create tablespace tabs06103103 datafile 'C:dyzoracletabstabsduanyuzhao.dbf' size 100Malter USER dyz06103103 default tablespace tabs06103103;6.2、創(chuàng)建表1、創(chuàng)建系統(tǒng)管理員表admincreate table admin(admin_no char(5) not null,admin_name char(10) not

19、 null,admin_sex char(2) check (admin_sex='男' or admin_sex='女'),admin_title char(20) not null,admin_password varchar(20) not null,constraint pk_admin primary key (admin_no)tablespace tabs06103103;2、學(xué)生表studentcreate table student(stu_no char(10) not null,stu_name varchar(30) not null,s

20、tu_sex char(2) check (stu_sex='男' or stu_sex='女'),stu_class char(5) foreign key references classes(class_no),stu_major number foreign key references major(major_id),stu_faculty number foreign key references faculty(faculty_id),constraint pk_student primary key(stu_no)tablespace tabs0

21、6103103;3、院系表facultycreate table faculty(faculty_id number not null,faculty_name char(10) not null,constraint pk_faculty primary key (faculty_id)tablespace tabs06103103;4、專(zhuān)業(yè)表majorcreate table major(major_id number not null,major_name char(10) not null,major_faculty number foreign key references facu

22、lty(faculty_id),constraint pk_major primary key (major_id)tablespace tabs06103103;5、教師表teachercreate table teacher(tea_no char(10) not null,tea_name char(20) not null,tea_sex char(2) check (tea_sex='男' or tea_sex='女'),tea_faculty number foreign key references faculty(faculty_id),cons

23、traint pk_teacher primary key (tea_no)tablespace tabs06103103;6、班導(dǎo)師表classteachercreate table classteacher(classtea_no char(5) not null,classtea_name char(20) not null,classtea_sex char(2) check (classtea_sex='男' or classtea_sex='女'),classtea_major number foreign key references major(

24、major_id),classtea_faculty number foreign key references faculty(faculty_id),constraint pk_classteacher primary key (classtea_no)tablespace tabs06103103;7、院領(lǐng)導(dǎo)表collegeleadercreate table collegeleader(collegeleader_no char(5) primary key,collegeleader_name char(20) not null,collegeleader_sex char(2) c

25、heck(collegeleader_sex in('男','女'),collegeleader_faculty number foreign key references faculty(faculty_id),title char(20) not null)tablespace tabs06103103;8、學(xué)校領(lǐng)導(dǎo)表schoolleadercreate table schoolleader(schoolleader_no char(5) primary key not null,schoolleader_name char(20) not null,sch

26、oolleader_sex char(2) check(schoolleader_sex in('男','女'),dept char(20) not null,title char(20) not null)tablespace tabs06103103;9、學(xué)生上課出勤記錄表kaoqin_recordcreate table kaoqin_record(kaoqin_id char(13) primary key not null,sk_time datetime not null,stu_number char(10) foreign key referen

27、ces student(stu_no),stu_status char(10) not null,teacher_no char(10) foreign key references teacher(tea_no),course_no char(13) foreign key references course(course_no)tablespace tabs06103103;10、課程信息表coursecreate table course(course_no char(13) primary key,course_name char(20) not null,course_xz char

28、(4) not null)tablespace tabs06103103;11、班級(jí)表classescreate table classes(class_no char(10) primary key,class_name char(20) not null,classtea_no char(5) foreign key references classteacher(classtea_no)tablespace tabs06103103;12、請(qǐng)假信息表qingjiacreate table qingjia(id number primary key,class_id char(10) fo

29、reign key references classes(class_no),stu_no char(10) foreign key references student(stu_no),leave_reason varchar2(200) not null,start_time datetime not null,end_time datetime not null,day_number nubmer not null,qingjia_time datetime not null,class_tea_id char(5) foreign key references classteacher

30、(classtea_no),class_tea_sp_status char(10),class_tea_sp_time datetime,coll_leader_sp_status char(10),coll_leader_id char(5) foreign key references collegeleader(collegeleader_no),coll_leader_sp_time datetime)tablespace tabs06103103;6.3、創(chuàng)建其它數(shù)據(jù)庫(kù)對(duì)象1、創(chuàng)建存儲(chǔ)過(guò)程用于統(tǒng)計(jì)學(xué)生查詢(xún)某門(mén)課程的出勤情況create or replace procedure ge

31、tMessage(stu_no in varchar2, course_no in varchar2, total_times out number)as absence_times number;begin select count(*) in to absence_times from kaoqin_record where stu_number=stu_no and course_no=course_no; total_times=absence_times;end;2、創(chuàng)建視圖,使不同院系的領(lǐng)導(dǎo)只能查詢(xún)到自己學(xué)院學(xué)生上課的考勤信息,假設(shè)軟學(xué)院的ID為5,以下代碼為創(chuàng)建一個(gè)用于給軟件學(xué)院

32、領(lǐng)導(dǎo)查看本學(xué)院學(xué)生考勤信息的視圖。create view rjxy as select kaoqin_record.kaoqin_id,kaoqin_record.sk_time,kaoqin_record.stu_number,kaoqin_record.stu_status,kaoqin_record.teacher_no,kaoqin_record.course_no from kaoqin_record,student where student.stu_no=kaoqin_record.stu_number and student.stu_faculty=5;3、創(chuàng)建觸發(fā)器,當(dāng)某學(xué)生

33、某課程的缺勤次數(shù)超過(guò)一定次數(shù)時(shí)給出提示信息create or replace trigger alertMessageafter insert on kaoqin_record for each rowdeclare current_times number;begin select count(*) into current_times from kaoqin_record where stu_number=:new.stu_number and course_no=:new.course_no; if(current_times >= 3) then dbms_output.put_

34、line('學(xué)號(hào)為:' | :new.stu_number | '的學(xué)生該門(mén)課程被取消考試資格!'); end if;end;4、創(chuàng)建索引CREATE INDEX index_KaoQin ON kaoqin_record (stu_number);CREATE INDEX index_QingJia ON qingjia (stu_no); 7對(duì)于課程設(shè)計(jì)要求的一些問(wèn)題的回答1. 為了完成管理數(shù)據(jù)庫(kù)對(duì)象的工作,DBA應(yīng)該能夠很好地回答諸如下面的一些問(wèn)題:l 系統(tǒng)應(yīng)該包括哪些數(shù)據(jù)?系統(tǒng)應(yīng)該包含的數(shù)據(jù)如上面的12張表的數(shù)據(jù),另外,還有相應(yīng)的視圖數(shù)據(jù)等等在內(nèi) l 應(yīng)

35、該怎樣存儲(chǔ)這些數(shù)據(jù)? 關(guān)于數(shù)據(jù)的存儲(chǔ)請(qǐng)見(jiàn)下面的敘述.l 應(yīng)該在系統(tǒng)中創(chuàng)建哪些表?所應(yīng)該創(chuàng)建的表如附帶建表腳本所示l 應(yīng)該在這些表中創(chuàng)建哪些索引,以便加速對(duì)表中數(shù)據(jù)的檢索? 在創(chuàng)建索引時(shí)要做到三個(gè)適當(dāng),即在適當(dāng)?shù)谋砩?、適當(dāng)?shù)牧猩蟿?chuàng)建適當(dāng)數(shù)量的索引. 一、 根據(jù)表的大小來(lái)創(chuàng)建索引。二、 根據(jù)列的特征來(lái)創(chuàng)建索引。三、 在一個(gè)表上創(chuàng)建合適數(shù)目的索引.根據(jù)以上幾點(diǎn),我覺(jué)得應(yīng)該在 學(xué)生上課出勤記錄表kaoqin_record以及請(qǐng)假信息表qingjia上創(chuàng)建一個(gè)索引。理由是他們的使用頻率較之于其他表的使用頻率來(lái)說(shuō)還是算高的。創(chuàng)建的索引見(jiàn)上面的創(chuàng)建所以呢語(yǔ)句。l 是否應(yīng)該創(chuàng)建創(chuàng)建視圖?為什么要?jiǎng)?chuàng)建這些視圖?

36、 應(yīng)該創(chuàng)建視圖,使不同院系的領(lǐng)導(dǎo)只能查詢(xún)到自己學(xué)院學(xué)生上課的考勤信息, 這樣可以讓不同學(xué)院的領(lǐng)導(dǎo)針對(duì)自己學(xué)院的學(xué)生的出勤情況來(lái)有效的采取措施。l 應(yīng)該創(chuàng)建哪些過(guò)程、函數(shù)、程序包? 本數(shù)據(jù)庫(kù)只是創(chuàng)建了存儲(chǔ)過(guò)程getMessage(stu_no in varchar2, course_no in varchar2, total_times out number)。創(chuàng)建的理由就是查看出勤情況時(shí)的操作借助于這個(gè)存儲(chǔ)過(guò)程可以節(jié)省很多時(shí)間以及服務(wù)器資源,減少網(wǎng)絡(luò)流量。,用于統(tǒng)計(jì)學(xué)生查詢(xún)某門(mén)課程的出勤情況l 應(yīng)該在哪些表上創(chuàng)建觸發(fā)器?這些觸發(fā)器的類(lèi)型是什么?應(yīng)該創(chuàng)建觸發(fā)器,尤其是當(dāng)某學(xué)生某課程的缺勤次數(shù)超過(guò)

37、一定次數(shù)時(shí)要給出提示信息,此觸發(fā)器是create or replace trigger alertMessageafter insert on kaoqin_record for each rowdeclare current_times number;beginselect count(*) into current_times from kaoqin_record where stu_number=:new.stu_number and course_no=:new.course_no; if(current_times >= 3) then dbms_output.put_line

38、('學(xué)號(hào)為:' | :new.stu_number | '的學(xué)生該門(mén)課程被取消考試資格!'); end if;end;針對(duì)表kaoqin_record的current_times(次數(shù)),當(dāng)插入后判斷該學(xué)生的缺勤次數(shù)是否已經(jīng)超過(guò)學(xué)校規(guī)定次數(shù)了:若是超過(guò),則給出提示信息,引起相關(guān)授課教師以及學(xué)生本人的注意。故我覺(jué)得在該表上創(chuàng)建一個(gè)觸發(fā)器是很有必要的。是否應(yīng)該創(chuàng)建同義詞?根據(jù)Oracle數(shù)據(jù)庫(kù)課程中學(xué)習(xí)的理論中有關(guān)同義詞的使用范圍來(lái)講,創(chuàng)建同義詞擁有如下好處:節(jié)省大量的數(shù)據(jù)庫(kù)空間,對(duì)不同用戶(hù)的操作同一張表沒(méi)有多少差別;擴(kuò)展的數(shù)據(jù)庫(kù)的使用范圍,能夠在不同的數(shù)據(jù)庫(kù)用戶(hù)之間實(shí)現(xiàn)無(wú)縫交互;同義詞可以創(chuàng)建在不同一個(gè)數(shù)據(jù)庫(kù)服務(wù)器上,通過(guò)網(wǎng)絡(luò)實(shí)現(xiàn)連接。但是考慮到該數(shù)據(jù)庫(kù)主要是為了供校園網(wǎng)用戶(hù)使用,不要求特表高的權(quán)限設(shè)置以及數(shù)據(jù)庫(kù)權(quán)限的授權(quán)與收權(quán)的問(wèn)題,另外就是我的數(shù)據(jù)庫(kù)對(duì)象也不是很多,而且僅有的那些對(duì)象也不復(fù)雜。故我覺(jué)得我的數(shù)據(jù)庫(kù)沒(méi)必要?jiǎng)?chuàng)建同義詞2. 存儲(chǔ)空間管理任務(wù)包括為數(shù)據(jù)分配空間、保持空間可以滿(mǎn)足數(shù)據(jù)的不斷增長(zhǎng)。隨著業(yè)務(wù)量的繼續(xù)和擴(kuò)大,數(shù)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論