《課表查詢系統(tǒng)數(shù)據(jù)庫課程設(shè)計報告》由會員分享,可在線閱讀,更多相關(guān)《課表查詢系統(tǒng)數(shù)據(jù)庫課程設(shè)計報告(17頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、數(shù)據(jù)庫課程設(shè)計報告設(shè)計題目:課表查詢系統(tǒng)院系:長江學(xué)院信工系信息工程專業(yè)姓名: X X X學(xué)號: XXXXXXXX指導(dǎo)老師: X X X完成日期:2009年4月22日目 錄數(shù)據(jù)庫設(shè)計.37系統(tǒng)設(shè)計.78程序設(shè)計8運行圖.810心得體會.10源代碼程序.1015一、數(shù)據(jù)庫設(shè)計1、需求分析“課表查詢系統(tǒng)”數(shù)據(jù)庫需要體現(xiàn)課表的安排、查詢問題,在經(jīng)過詳細調(diào)查、仔細分析后,得出以下信息:學(xué)生表基本信息包括:學(xué)號,姓名,所上的課程編號;教師表基本信息包括:教師編號,姓名,所教課程編號;課程表基本信息包括:課程編號,課程名;時間安排表基本信息包括:上課時間,上課地點,所進行的課程編號.2、概要結(jié)構(gòu)設(shè)計采用自
2、底向上法,即先定義各局部概念結(jié)構(gòu),再逐步整和畫出E-R圖.根據(jù)需求分析的結(jié)果,設(shè)計出“課表查詢系統(tǒng)”數(shù)據(jù)庫的E-R圖.該E-R圖共有4個實體:學(xué)生表,教師表,課程表,時間安排表.分別如下圖所示.學(xué)生姓名學(xué)號課程號圖1 學(xué)生表實體E-R圖教師教師姓名教師編號課程編號圖2 教師表實體E-R圖課程課程名課程編號圖3 課程表實體E-R圖時間安排上課時間上課地點課程編號圖4 時間安排表實體E-R圖根據(jù)全局設(shè)計概念模式,將局部E-R圖根據(jù)它們之間的聯(lián)系綜合成一個完整的全局E-R圖.學(xué)生表和課程表之間有聯(lián)系,時間安排表與課程表之間有聯(lián)系,教師表與課程表之間有聯(lián)系.學(xué)生與課程之間是多對多的關(guān)系,時間安排表與課
3、程之間是多對一的關(guān)系,教師與課程表之間是多對多的關(guān)系.最后畫出聯(lián)系,將局部E-R圖綜合成如圖5所示的圖示. 學(xué)習(xí)習(xí)課程表教 學(xué)安 排學(xué)生教師時間安排姓名學(xué)號課程號課程名上課時間上課地點課程名教師姓名教師編號課程名課程編號 圖5 全局E-R圖3、邏輯結(jié)構(gòu)設(shè)計根據(jù)概念結(jié)構(gòu)設(shè)計的結(jié)果,設(shè)計出“課表查詢系統(tǒng)”數(shù)據(jù)庫的邏輯關(guān)系模型。將圖5的E-R圖轉(zhuǎn)換為關(guān)系模型:學(xué)生(學(xué)號,姓名,課程號)教師(教師編號,教師姓名,課程號)課程(課程號,課程名)時間安排(課程號,上課時間,上課地點)4、物理結(jié)構(gòu)設(shè)計將邏輯結(jié)構(gòu)設(shè)計的關(guān)系模型轉(zhuǎn)換為物理數(shù)據(jù)庫,即具體的RDBMS中支持的關(guān)系數(shù)據(jù)模型表。在SQL Server2
4、005數(shù)據(jù)庫管理系統(tǒng)中創(chuàng)建學(xué)生表、教師表、課程表、時間安排表。表結(jié)構(gòu)分別如表14所示。 表1 學(xué)生表列名數(shù)據(jù)類型是否允許為空是否主鍵姓名Char(10)不允許學(xué)號Char(10)不允許主鍵課程號Char(10)不允許 表2 教師表列名數(shù)據(jù)類型是否允許為空是否主鍵教師姓名Char(10)不允許教師編號Char(10)不允許主鍵課程號Char(10)不允許 表3 課程表列名數(shù)據(jù)類型是否允許空是否主鍵課程號Char(10)不允許主鍵課程名Char(10)不允許 表4 時間安排表列名數(shù)據(jù)類型是否允許為空是否主鍵上課時間Char(10)不允許上課地點Char(10)不允許課程號Char(10)不允許主鍵
5、二、系統(tǒng)設(shè)計系統(tǒng)開發(fā)的總體任務(wù)是實現(xiàn)課表查詢的系統(tǒng)化、規(guī)范化和自動化管理。本系統(tǒng)需要完成的功能主要有 :1) 有關(guān)學(xué)生信息的輸入。2) 有關(guān)學(xué)生信息的查找。3) 有關(guān)教師信息的輸入。4) 有關(guān)教師信息的查詢。5) 有關(guān)課程信息的輸入。6) 有關(guān)課程查詢的查詢。7) 有關(guān)時間安排表信息的輸入。8) 有關(guān)時間安排表信息的查詢。對于上述各項功能進行集中、分塊、按照結(jié)構(gòu)化程序設(shè)計的要求,得到下圖所示的系統(tǒng)功能模塊圖。 課表查詢系統(tǒng)學(xué)生信息教師信息課表信息時間安排學(xué)生信息查詢學(xué)生信息輸入教師信息查詢教師信息輸入課表信息查詢課表信息輸入時間安排查詢時間安排輸入圖6 系統(tǒng)功能模塊圖三、程序設(shè)計1、打開SQL
6、 軟件,進入界面以后,新建一個新的數(shù)據(jù)庫,命名為“課表查詢系統(tǒng)”。2、按照數(shù)據(jù)庫設(shè)計的分析,逐步輸入學(xué)生表、教師表、課程表、時間安排表;再逐步輸入數(shù)據(jù)。3、完成以后兩步以后,建立新的數(shù)據(jù)庫關(guān)系圖。4、打開SQL查詢分析器,輸入查詢語句,進行查詢。無誤,即設(shè)計完成。四、運行圖1、新建的數(shù)據(jù)庫關(guān)系圖截圖。2、對“學(xué)號,課程名,上課時間,上課地點”信息進行查找。SELECT 學(xué)號,課程名,上課時間,上課地點FROM 學(xué)生表,課程表,時間安排表WHERE 學(xué)生表.姓名=湯瑋 and 學(xué)生表.課程號=課程表.課程號and 課程表.課程號=時間安排表.課程號3、對“姓名,課程名,教師姓名”信息進行查找。S
7、ELECT 姓名,課程名,教師姓名FROM 學(xué)生表,課程表,教師表WHERE 學(xué)生表.學(xué)號=07323218 and 學(xué)生表.課程號=課程表.課程號and 課程表.課程號=教師表.課程號五、心得體會通過這次實驗,使我認識到做程序設(shè)計并不是只掌握思想和算法就可以了,一定要自己動手,這樣才能充分認識到自己的不足,以提高自己全方面的能力。所以,我將在今后的學(xué)習(xí)中一定要努力提高自己在程序設(shè)計方面的能力。在整個設(shè)計過程中,遇到了很多意想不到的困難,其主要原因是對各個部分要實現(xiàn)的功能考慮不夠周全,還好,有很多同學(xué)和老師的幫助,解決了一些我不懂的問題,通過本次課程設(shè)計一定程度上提高了軟件開發(fā)能力,對編譯原理
8、這一門課程也有了比較深刻的了解。最后,由于所學(xué)知識不夠全面,課程設(shè)計在很多方面還有待完善,在以后的學(xué)習(xí)過程中,會掌握更多知識,力求做到更好。六、源代碼程序USE masterGO/* 對象: Database 設(shè)計課表查詢系統(tǒng) 腳本日期: 04/22/2009 16:11:59 */CREATE DATABASE 設(shè)計課表查詢系統(tǒng) ON PRIMARY ( NAME = N設(shè)計課表查詢系統(tǒng), FILENAME = NC:MSSQL.1MSSQLDATA設(shè)計課表查詢系統(tǒng).mdf , SIZE = 3072KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB
9、) LOG ON ( NAME = N設(shè)計課表查詢系統(tǒng)_log, FILENAME = NC:MSSQL.1MSSQLDATA設(shè)計課表查詢系統(tǒng)_log.ldf , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)GOEXEC dbo.sp_dbcmptlevel dbname=N設(shè)計課表查詢系統(tǒng), new_cmptlevel=90GOIF (1 = FULLTEXTSERVICEPROPERTY(IsFullTextInstalled)beginEXEC 設(shè)計課表查詢系統(tǒng).dbo.sp_fulltext_database action =
10、 enableendGOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET ANSI_NULL_DEFAULT OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET ANSI_NULLS OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET ANSI_PADDING OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET ANSI_WARNINGS OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET ARITHABORT OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET AUTO_CLOSE OFF GOALTER
11、DATABASE 設(shè)計課表查詢系統(tǒng) SET AUTO_CREATE_STATISTICS ON GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET AUTO_SHRINK OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET AUTO_UPDATE_STATISTICS ON GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET CURSOR_CLOSE_ON_COMMIT OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET CURSOR_DEFAULT GLOBAL GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET CONCAT_NULL
12、_YIELDS_NULL OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET NUMERIC_ROUNDABORT OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET QUOTED_IDENTIFIER OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET RECURSIVE_TRIGGERS OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET ENABLE_BROKER GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET AUTO_UPDATE_STATISTICS_ASYNC OFF GOALTER DATABASE 設(shè)
13、計課表查詢系統(tǒng) SET DATE_CORRELATION_OPTIMIZATION OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET TRUSTWORTHY OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET ALLOW_SNAPSHOT_ISOLATION OFF GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET PARAMETERIZATION SIMPLE GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET READ_WRITE GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET RECOVERY SIMPLE GOALTER
14、DATABASE 設(shè)計課表查詢系統(tǒng) SET MULTI_USER GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET PAGE_VERIFY CHECKSUM GOALTER DATABASE 設(shè)計課表查詢系統(tǒng) SET DB_CHAINING OFF附:信息內(nèi)容數(shù)據(jù)1、學(xué)生表姓名學(xué)號課程號陳麗0732320101陳麗丹0732320201陳曉男0732320301鄧聰0732320401杜歡歡0732320501馮瓏0732320602符嬋菊0732320702郭友軍0732320802何文磊0732320902洪潔0732321002黃軍華0732321103姜巨峰073232120
15、3劉龍0732321303盧遠明0732321403饒明軒0732321503宋偉0732321604孫安修0732321704湯瑋0732321804汪韻0732321904王浩楷07323220042、教師表教師姓名教師編號課程號劉自強0101葉志翔0202諶洪茂0303黃笑娟04043、課程表課程名課程號數(shù)據(jù)結(jié)構(gòu)01數(shù)據(jù)庫原理02匯編語言03C語言044、時間安排表上課時間上課地點課程號星期一10101星期二10202星期三10303星期四10404 東華理工大學(xué)長江學(xué)院 課程設(shè)計評分表學(xué)生姓名:XX 班級:XXXXXX 學(xué)號:XXXXXXXX課程設(shè)計題目:項目內(nèi)容滿分實 評選題能結(jié)合所
16、學(xué)課程知識、有一定的能力訓(xùn)練。符合選題要求(5人一題)10工作量適中,難易度合理10能力水平能熟練應(yīng)用所學(xué)知識,有一定查閱文獻及運用文獻資料能力10理論依據(jù)充分,數(shù)據(jù)準確,公式推導(dǎo)正確10能應(yīng)用計算機軟件進行編程、資料搜集錄入、加工、排版、制圖等10能體現(xiàn)創(chuàng)造性思維,或有獨特見解10成果質(zhì)量總體設(shè)計正確、合理,各項技術(shù)指標符合要求。10說明書綜述簡練完整,概念清楚、立論正確、技術(shù)用語準確、結(jié)論嚴謹合理;分析處理科學(xué)、條理分明、語言流暢、結(jié)構(gòu)嚴謹、版面清晰10設(shè)計說明書欄目齊全、合理,符號統(tǒng)一、編號齊全。格式、繪圖、表格、插圖等規(guī)范準確,符合國家標準10有一定篇幅,字符數(shù)不少于500010總 分100指導(dǎo)教師評語: 指導(dǎo)教師簽名: 年 月 日17