《數據庫課程設計》課程設計報告-基于PHP_MySQL的學籍管理系統_第1頁
《數據庫課程設計》課程設計報告-基于PHP_MySQL的學籍管理系統_第2頁
《數據庫課程設計》課程設計報告-基于PHP_MySQL的學籍管理系統_第3頁
《數據庫課程設計》課程設計報告-基于PHP_MySQL的學籍管理系統_第4頁
《數據庫課程設計》課程設計報告-基于PHP_MySQL的學籍管理系統_第5頁
已閱讀5頁,還剩43頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、成績課 程 設 計 課程名稱_數據庫課程設計 題目名稱 基于PHP+MySQL的學籍管理系統學生學院 計算機學院 指導教師 2010 年 6 月1日 評價標準分數比例%成績論文論文結構包含:相關技術介紹、需求分析、概念結構設計、邏輯結構設計、數據庫物理設計、數據庫實施、系統測試方案和測試報告、系統的主要功能和使用說明、系統安裝說明。要求論文完整、內容詳細,格式標準。40程序系統運行正確;功能完善:有增、刪、改、查功能,有根本的報表、查詢、統計和輸入、輸出功能;工作量充分;系統實現技術的難度。30數據庫設計E-R圖設計正確;數據庫邏輯結構設計標準化;數據庫物理設計合理。30總評成績 優 良 中

2、及格 不及格總分 TOC o 1-3 h z u HYPERLINK l _Toc263320805 1設計背景 PAGEREF _Toc263320805 h 5 HYPERLINK l _Toc263320806 本次課程設計的說明 PAGEREF _Toc263320806 h 5 HYPERLINK l _Toc263320807 設計學籍管理系統的背景 PAGEREF _Toc263320807 h 5 HYPERLINK l _Toc263320808 2PHP+MySQL技術介紹 PAGEREF _Toc263320808 h 6 HYPERLINK l _Toc26332080

3、9 簡單介紹 PAGEREF _Toc263320809 h 6 HYPERLINK l _Toc263320810 的特性: PAGEREF _Toc263320810 h 6 HYPERLINK l _Toc263320811 技術應用 PAGEREF _Toc263320811 h 6 HYPERLINK l _Toc263320812 簡單介紹。 PAGEREF _Toc263320812 h 7 HYPERLINK l _Toc263320813 的特性 PAGEREF _Toc263320813 h 7 HYPERLINK l _Toc263320814 Mysql最常見的應用架構

4、 PAGEREF _Toc263320814 h 7 HYPERLINK l _Toc263320815 3. 開發環境 PAGEREF _Toc263320815 h 8 HYPERLINK l _Toc263320816 4. 需求分析 PAGEREF _Toc263320816 h 8 HYPERLINK l _Toc263320817 4.1 引言 PAGEREF _Toc263320817 h 8 HYPERLINK l _Toc263320818 4.2 用戶需求 PAGEREF _Toc263320818 h 8 HYPERLINK l _Toc263320819 4.3 劃分功

5、能模塊 PAGEREF _Toc263320819 h 9 HYPERLINK l _Toc263320820 數據流圖 PAGEREF _Toc263320820 h 10 HYPERLINK l _Toc263320821 4.4.1 數據流圖介紹 PAGEREF _Toc263320821 h 10 HYPERLINK l _Toc263320822 4.4.2 系統數據流圖 PAGEREF _Toc263320822 h 10 HYPERLINK l _Toc263320823 數據字典 PAGEREF _Toc263320823 h 12 HYPERLINK l _Toc263320

6、824 4.5.1 數據項 PAGEREF _Toc263320824 h 12 HYPERLINK l _Toc263320825 數據結構 PAGEREF _Toc263320825 h 15 HYPERLINK l _Toc263320826 數據流 PAGEREF _Toc263320826 h 16 HYPERLINK l _Toc263320827 數據存儲 PAGEREF _Toc263320827 h 17 HYPERLINK l _Toc263320828 處理過程 PAGEREF _Toc263320828 h 17 HYPERLINK l _Toc263320829 5.

7、 概念結構設計 PAGEREF _Toc263320829 h 17 HYPERLINK l _Toc263320830 系統E-R圖 PAGEREF _Toc263320830 h 17 HYPERLINK l _Toc263320831 5.1.1 學生信息管理 PAGEREF _Toc263320831 h 17 HYPERLINK l _Toc263320832 老師信息管理 PAGEREF _Toc263320832 h 18 HYPERLINK l _Toc263320833 教務信息管理 PAGEREF _Toc263320833 h 18 HYPERLINK l _Toc263

8、320834 5.2 概念模型 PAGEREF _Toc263320834 h 19 HYPERLINK l _Toc263320835 6. 邏輯結構設計 PAGEREF _Toc263320835 h 20 HYPERLINK l _Toc263320836 6.1 關系模型 PAGEREF _Toc263320836 h 21 HYPERLINK l _Toc263320837 6.2 物理模型 PAGEREF _Toc263320837 h 22 HYPERLINK l _Toc263320838 7 .數據庫實現 PAGEREF _Toc263320838 h 23 HYPERLIN

9、K l _Toc263320839 7.1 物理結構設計 PAGEREF _Toc263320839 h 23 HYPERLINK l _Toc263320840 7.1.1 確定數據庫的存儲結構 PAGEREF _Toc263320840 h 23 HYPERLINK l _Toc263320841 7.1.2 存取方法和優化方法 PAGEREF _Toc263320841 h 23 HYPERLINK l _Toc263320842 7.2 功能實現 PAGEREF _Toc263320842 h 23 HYPERLINK l _Toc263320843 7.3 數據庫的實施 PAGERE

10、F _Toc263320843 h 24 HYPERLINK l _Toc263320844 7.3.1 數據庫的實施 PAGEREF _Toc263320844 h 24 HYPERLINK l _Toc263320845 7.3.2 數據的載入 PAGEREF _Toc263320845 h 29 HYPERLINK l _Toc263320846 創立數據庫腳本 PAGEREF _Toc263320846 h 32 HYPERLINK l _Toc263320847 創立數據庫 PAGEREF _Toc263320847 h 32 HYPERLINK l _Toc263320848 數據

11、庫值初始化 PAGEREF _Toc263320848 h 33 HYPERLINK l _Toc263320849 7.5 數據庫的運行和維護 PAGEREF _Toc263320849 h 35 HYPERLINK l _Toc263320850 8系統測試 PAGEREF _Toc263320850 h 35 HYPERLINK l _Toc263320851 9安裝和使用說明 PAGEREF _Toc263320851 h 39 HYPERLINK l _Toc263320852 所需軟件 PAGEREF _Toc263320852 h 39 HYPERLINK l _Toc26332

12、0853 軟件安裝步驟 PAGEREF _Toc263320853 h 39 HYPERLINK l _Toc263320854 使用說明 PAGEREF _Toc263320854 h 44 HYPERLINK l _Toc263320855 10參考文獻 PAGEREF _Toc263320855 h 451設計背景本次數據庫課程設計,我將重點放在數據庫的設計上,做好根本的需求分析;重點進行概念結構設計,邏輯結構設計,數據庫物理設計,以及數據庫實施階段中的數據庫創立和SQL腳本的編寫局部。由于本次數據庫課程設計的重點不在應用程序的編寫和界面的設計上,所以在這方面花費的精力不會太多,當然,其

13、中還有一個原因是采用自己不太熟悉的技術進行系統的編寫,最終導致系統的整體外觀不是很滿意。由于應用系統編寫技術的限制,很多在數據庫設計時采用的技術將很難出現在系統上,比方觸發器。本次課程設計的成果學籍管理系統必須運行在已經搭建好的環境下,因此需要閱讀“安裝和使用說明文檔后將環境搭建好,方可正常運行本系統,進行一系列的操作。隨著我國教育體制改革的深入進行,教育系統得到了前所未有的開展。學生管理正在逐步邁向管理信息現代化。但是我國的學生管理信息化水平還處在初級階段,主要表現在對學生的交費管理、學生的檔案管理還是采用原有的人工管理方式。學校的規模不斷擴大,學生數量急劇增加,有關學生的各種信息量也成倍增

14、長。由于大學生類別和專業的設置的多樣化,大學生的學籍管理歷來是非常繁瑣和復雜的的工作。面對龐大的信息量, 這時的人工管理幾乎無法實現,在這種情況下用數據庫進行管理變的尤為必要,這可以發揮計算機的優勢,就需要有學生信息管理系統來提高學生管理工作的效率.通過這樣的系統,可以做到信息的標準管理,科學統計和快速的查詢,從而減少管理方面的工作量和減少人為的錯誤。學籍管理系統是一個教育單位不可缺少的局部,它的內容對于學校的決策者和管理者來說都至關重要,所以學籍管理系統應該能夠為用戶提供充足的信息和快捷的查詢手段。但一直以來人們使用傳統人工的方式管理文件檔案,這種管理方式存在著許多缺點,如:效率低、保密性差

15、,另外時間一長,將產生大量的文件和數據,這對于查找、更新和維護都帶來了不少的困難。隨著科學技術的不斷提高,計算機科學日漸成熟,其強大的功能已為人們深刻認識,它已進入人類社會的各個領域并發揮著越來越重要的作用。 通用學籍管理系統軟件屬教育行業事務管理軟件;可廣泛應用于全日制大、中小學及其他各類學校,對學生的入學、升級、學籍變動進行綜合管理和快速查詢。為了節省在學籍管理花費的人力和物力,同時便于學校掌握學生在個人愛好、家庭狀況等方面的詳細情況,學籍管理系統并因材施教、充分發揮學生的個人特長,有助于提高整個學校的教育水平和管理水平。2PHP+MySQL技術介紹簡單介紹PHP,一個嵌套的縮寫名稱,是英

16、文超級文本預處理語言PHP:Hypertext Preprocessor的縮寫。PHP 是一種HTML內嵌式的語言,PHP與微軟的ASP頗有幾分相似,都是一種在效勞器端執行的嵌入HTML文檔的腳本語言,語言的風格有類似于C語言,現在被很多的網站編程人員廣泛的運用。PHP 獨特的語法混合了 C、Java、Perl 以及 PHP 自創新的語法。它可以比 CGI 或者 Perl 更快速的執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多;與同樣是嵌入HTML文檔的腳本語言JavaScript相比,PHP在

17、效勞器端執行,充分利用了效勞器的性能;PHP執行引擎還會將用戶經常訪問的PHP程序駐留在內存中,其他用戶在一次訪問這個程序時就不需要重新編譯程序了,只要直接執行內存中的代碼就可以了,這也是PHP高效率的表達之一。PHP具有非常強大的功能,所有的CGI或者JavaScript的功能PHP都能實現,而且支持幾乎所有流行的數據庫以及操作系統。 PHP的特性: 開放的源代碼:所有的PHP源代碼事實上都可以得到。 PHP是免費的。 php的便捷性 : php十分便捷,學習簡單 基于效勞器端:由于PHP是運行在效勞器端的腳本,可以運行在UNIX、LINUX、WINDOWS下。 嵌入HTML:因為PHP可以

18、嵌入HTML語言,所以學習起來并不困難。 簡單的語言:PHP堅持腳本語言為主,與Java和C+不同。 效率高:PHP消耗相當少的系統資源。 圖像處理:用PHP動態創立圖像 面向對像:在php4,php5 中,面向對象方面都有了很大的改良,現在php完全可以用來開發大型商業程序。 PHP 相對于其他語言,編輯簡單,實用性強,更適合初學者。PHP技術應用偽靜態 靜態頁面生成 數據庫緩存 過程緩存 div+css w3c標準 大負荷 分布式 jquery框架集成 flex 桌面程序應用2.2MYSQL簡單介紹。MySQL是一個小型關系型數據庫管理系統,開發者為瑞典MySQL AB公司。在2021年1

19、月16號被Sun公司收購。而2021年,SUN又被Oracle收購.對于Mysql的前途,沒有任何人抱樂觀的態度.目前MySQL被廣泛地應用在Internet上的中小型網站中。由于其體積小、速度快、總體擁有本錢低,尤其是開放源碼這一特點,許多中小型網站為了降低網站總體擁有本錢而選擇了MySQL作為網站數據庫。MySQL的官方網站的網址是:.MySQL的特性使用C和C+編寫,并使用了多種編譯器進行測試,保證源代碼的可移植性 支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多種操作系

20、統 為多種編程語言提供了API。這些編程語言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。 支持多線程,充分利用CPU資源 優化的SQL查詢算法,有效地提高查詢速度 既能夠作為一個單獨的應用程序應用在客戶端效勞器網絡環境中,也能夠作為一個庫而嵌入到其他的軟件中提供多語言支持,常見的編碼如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作數據表名和數據列名 提供TCP/IP、ODBC和JDBC等多種數據庫連接途徑 提供用于管理、檢查、優化數據庫操作的管理工具 可以處理擁有上千萬條記錄的大型數據庫2.2.2 Mysql最常見的應用架構單

21、點Single,適合小規模應用 復制Replication,適合中小規模應用 集群Cluster,適合大規模應用 MySQL4.1版本中增加了不少新的性能,包括對主鍵的更高速度的緩存,對子查詢的更好的支持,以及應網絡約會網站所要求的,基于地理信息的查詢。 其同步開發的5.0版本那么把目標對準了企業用戶,對于4.1版本中的所有新特性,5.0版本悉數收入囊中,并且獨具以下特點:對外鍵的良好支持;系統自動報錯機制以及對存儲過程的充分支持。3. 開發環境本學籍管理系統的開發與運行環境如下:開發環境:Windows XP輔助工具:PowerDesigner Trial 11,Dreamweaver CS

22、4數據庫管理系統:MySQL編程語言:PHP + HTML運行環境:Windows 2000/XP/20034. 需求分析4.1 引言 進行數據庫設計首先必須準確了解也分析用戶需求包括數據和處理。目的是為學籍管理數據庫系統的設計打下牢牢的根底,是數據庫開發的重要文件依據,主要為數據庫設計人員使用,是用戶和系統分析員的工程依據文件。作為“地基的需求分析是否做得充分與準確,它決定了在其上構建數據庫大廈的速度和質量。需求分析做得不好,甚至會導致整個數據庫設計返工重做。本系統的開發是設計一個學生學籍管理系統數據庫系統。4.2 用戶需求本系統是針對高等院校的學生學籍管理,因此學籍管理系統的用戶包括系統管

23、理員、教師和學生。主要涉及系部信息、班級信息、任課教師信息、學生信息、課程信息以及選課記錄和成績等多種數據信息。實現的具體功能如下:根本信息管理系統管理員負責對各種根本信息的錄入、修改、刪除等操作。學生成績管理系統管理員負責對學生成績的錄入、修改、刪除等操作,學生可以查詢各科成績。信息查詢統計學生可以查詢根本信息和各科的考試成績,老師可以查詢根本信息和授課信息,系統管理員負責把老師提交的學生成績進行管理,計算總成績和平均成績,統計不及格學生信息和獲得獎學金學生的信息,最后再輸出所有的信息。畢業生信息管理系統管理員負責計算畢業學生在學校期間所修課程的總學分,并進行審核,最后輸出登記表和名冊。以上

24、是用戶對系統的根本的功能要求,此外用戶還要求系統的效率要高,查詢速度要快,比擬小的冗余,易維護,具有較高的數據平安性。4.3 劃分功能模塊根據系統功能的需求分析和高等院校學籍管理的特點,經過模塊化的分析得到如下列圖4-1所示的系統功能模塊結構圖。學籍管理系統根本信息管理畢業生信息管理學生成績管理信息查詢統計根本信息刪除根本信息修改根本信息錄入學生成績刪除學生成績修改學生成績錄入輸出相關信息統計學生成績計算學生成績學生成績查詢根本信息查詢輸知名冊審核資格計算學分圖 4-1 系統功能模塊圖 數據流圖介紹數據流圖也稱為數據流程圖date flow diagram , DFD,是一種便于用戶理解和分析

25、系統數據流程的圖形工具,擺脫了系統和具體內容,精確的在邏輯上描述系統的功能、輸入、輸出和數據存儲等,是系統邏輯模型的重要組成局部。數據流圖的根本組成成分:(1)數據流:是由一組固定成分的數據組成,表示數據的流向。值得注意的是,數據流圖中描述的是數據流,而不是控制流。除了流向數據存儲或從數據存儲流出的數據不必命名外,每個數據流必須要有一個適宜的名字,以反映該數據流的含義。(2)加工:加工描述了輸入數據流到輸出數據之間的變換,也就是輸入數據流經過什么處理后變成了輸出數據。每個加工都有一個名字和編號。編號能反映該加工位于分層的數據流圖的哪個層次和哪張圖中,能夠看出它是由哪個加工分解出來的子加工。(3

26、)數據存儲:數據存儲表示暫時存儲的數據。每個數據存儲都有一個名字。(4)外部實體:外部實體是存在于軟件系統之外的人員或組織,指出數據所需要的發源地或系統所產生的數據的歸屬地。 系統數據流圖(1)頂層數據流圖管理員用戶 用戶信息學籍管理系統 數 存取 據 獲取 庫授權用戶 用戶信息 文 件 圖4-2 頂層數據流圖(2)0層數據流圖管理員用戶信息 學生信息登錄 授權用戶信息 存取 存取 獲取 獲取 數據庫文件 獲取 獲取 獲取 存取 存取 存取相關查詢課程信息成績信息登錄 管理員用戶信息 授權用戶信息 圖4-3 0層數據流圖 (3)子圖學生信息數據流圖: 學生信息 添加 修改 查詢 刪除 獲取 存

27、取 數據庫文件 圖4-4 學生信息數據流圖成績信息數據流圖: 成績信息 添加 修改 查詢 刪除 獲取 存取 數據庫文件 圖4-5 考勤信息數據流圖教師信息數據流圖: 教師信息 添加 修改 查詢 刪除 獲取 存取 數據庫文件 圖4-6 工資信息數據流圖4.5數據字典4.5.1 數據項數據字典是系統中各類數據描述的集合,是進行詳細的數據收集和數據分析所獲得的主要成果,數據字典是對系統所用到的所有表結構的描述,學籍管理的主要數據見下表。表 4.1 老師根本信息表序號字段別名數據類型數據長度碼1tno學號varchar10Y2dno院系號varchar10N3tname姓名varchar10N4tse

28、x性別varchar2N5profess職稱varchar10N6tel int11N表 4.2 學生根本信息表序號字段別名數據類型數據長度碼1sno學號varchar10Y2dno院系編號varchar10N3spno專業編號varchar10N4sname姓名varchar10N5ssex性別varchar2N6birthday出生日期datatimepN7symbol政治面貌varchar8N8id身份證號varchar20N9intime入學時間datatimeN10birthplace籍貫varchar50N11homeaddr家庭住址varchar50N12postcode郵政編碼

29、varchar6N表 4.3 專業根本信息表序號字段別名數據類型數據長度碼1spno專業號varchar10Y2spname專業名varchar20N表 4.4 畢業根本信息表序號字段別名數據類型數據長度碼1gno畢業證編號varchar10Y2sno學號varchar10N3sname姓名varchar10N4ssex性別varchar2N5dno所屬院系varchar10N6intime入學時間datetimeN7graduatetime畢業時間datetimeN8havecredit已修學分floatN9needcredit需修學分floatN表 4.5 院系根本信息表序號字段別名數據類

30、型數據長度碼1dno院系號varchar10Y2dname院系名稱varchar20N3dheader院長名varchar10N表 4.6 課程根本信息表序號字段別名數據類型數據長度碼1cno課程號varchar10Y2cname課程名varchar20N3credit學分smallintN表 4.7 學生上課表序號字段別名數據類型數據長度碼1sno學號varchar10Y2cno課程號varchar10Y3grade成績floatN表 4.8 老師授課表序號字段別名數據類型數據長度碼1cno課程號varchar10Y2tno教工號varchar10Y3ctime課時smallintN表 4.

31、9 專業開課表序號字段別名數據類型數據長度碼1sno專業號varchar10Y2cno課程號varchar10Y4.5.2數據結構數據結構反映了數據之間的組合關系。一個數據結構可以由假設干個數據項組成,也可以由假設干個數據結構組成,或假設干個數據項和數據結構混合組成。經過數據項和用戶需求的分析,我對本系統一共分了5個組,具體如下表所示:表 4.10 數據結構表數據結構名含義說明組成局部學生根本信息管理描述學生根本信息學號+姓名+性別+出生日期+身份證號+入學時間+政治面貌+家庭住址+籍貫+郵政編碼+民族老師根本信息管理描述老師根本信息教工號+姓名+性別+職稱+所屬院系+ 學生、老師相關信息管理

32、描述學生選課信息,畢業信息,專業、院系信息,老師授課信息,院系信息學號+課程號+成績課程號+教工號畢業證編號+學號+姓名+性別+身份證號+所屬院系+入學時間+已修學分+需修學分學生成績管理描述學生平均成績、總成績的計算,統計相關信息學號+課程號+成績系統管理描述用戶修改密碼,幫助信息4.5.3數據流數據流是數據結構在系統內傳輸的路徑。通過對用戶的需求分析,以及數據項和數據流的設計,得出了相應的數據流描述如下表所示:1、數據流定義表表 4.11 數據流定義表編號數據流名組成流量備注01學生信息學號+姓名+性別+出生日期+身份證號+入學時間+政治面貌+家庭住址+籍貫+郵政編碼+民族大學生根本信息0

33、2教師信息教工號+姓名+性別+職稱+所屬院系+ 一般教師根本信息03學生成績學號+姓名+性別+學號+課程號+成績大學生詳細信息04科目成績學號+課程號+成績大學生考試成績05各門成績學號+課程號+成績課程號+課程名+學分大同上06查詢結果科目成績+各門成績大各種信息07統計分析科目成績+各門成績大學生獎勵2、外部項定義表表 4.12 外部項定義表編號名稱輸入數據流輸出數據流備注1學生處01主要用于錄入學生信息2學生06主要用語學生查詢信息和成績3老師03主要用于老師提交成績4教務員06/07主要用于輸出查詢和統計信息的結果4.5.4數據存儲數據存儲是數據結構停留或保存的地方,也是數據流的來源和

34、去向之一。經過數據項、數據結構和數據流的設計,本系統一共選用了三個數據存儲,具體對數據存儲的描述通常如下表所示:表 4.13 數據存儲表編號數據存儲名輸入數據流輸出數據流數據量存取方式A1學生相關信息01大批處理、順序檢索A2教師相關信息0302一般批處理、順序檢索A3學生成績單06,07大批處理、更新、順序檢索4.5.5處理過程處理過程的具體處理邏輯一般用判定表或判定樹來描述。對于本系統用于學生學籍管理一共設計了四種處理方法,具體處理方式如下表所示:表 4.14 數據處理過程表編號名稱輸入數據流輸出數據流備注B1插入修改01,02,0301,02,03插入學生信息和老師信息B2更新修改01,

35、02,0301,02,03更新學生信息和老師信息B3刪除修改01,02,0301,02,03刪除學生信息和老師信息B4統計分析05,0605,06統計學生信息和成績5. 概念結構設計概念結構設計是整個數據庫設計的關鍵,它通過對用戶需求進行綜合、歸納與抽象,形成獨立于具體DBMS的概念模型。5.1系統E-R圖5.1.1 學生信息管理對于學生信息管理,我們可以將學生實體抽象出來,學生屬于學院可以將學院作為一個實體,學生所屬專業和畢業信息都將可以作為一個實體。在學生信息管理中存在這樣的關系:選擇一個學生只能選擇一個專業,而一個專業可以供多個學生選擇,故是多對一的關系、學習一個學生只能在一個院系學習,

36、而一個院系可以供多個學生學習,故是多對一的關系。圖 5-1 學生關系E-R圖5.1.2老師信息管理對于老師信息管理,我們可以將老師實體抽象出來,老師屬于學院可以將學院作為一個實體。在老師信息管理中存在這樣的關系:擁有一個老師只能在一個院系工作,而一個院系可以供多個多個老師工作,故是多對一的關系。圖 5-2 老師關系E-R圖5.1.3教務信息管理對于教務信息管理,我們可以將課程實體抽象出來。在教務信息管理中存在這樣的關系:畢業一個學生擁有一個畢業信息,而一個畢業信息只屬于一個學生,故是一對一的關系、選修一個學生可以選修多門課程,而一門課程可以被多個學生選修,故是多對多的關系、開設一個專業可以開設

37、多門課程,而一門課程可以被多個專業選擇,故是多對多的關系、授課一門課程可以被多個老師講授,而一個老師可以講授多門課程,故是多對多的關系。 圖 5-3 教務關系E-R圖以上是本系統中的根本的實體和關系,本系統是將其分步找出來加以描述,下面是本系統總體的E-R圖:圖 5-4 學籍管理系統E-R圖5.2 概念模型概念模型是在對用戶需求分析之后,通過畫出本系統抽象出的E-R圖,由概念模型輔助工具PowerDesigner11進行設計,通過具體地設置和繪圖,最后就形成了如下所示的概念模型圖,生成的概念結構就能真實、充分地反映現實世界,包括事物和事物之間的聯系,能滿足用戶對數據的處理要求,是對現實世界的一

38、個真實模型。圖 5-5 學籍管理系統概念模型圖6. 邏輯結構設計邏輯結構設計就是把概念結構設計階段設計好的根本E-R圖轉換為與選用DBMS產品所支持的數據模型相符合的邏輯結構。設計邏輯結構一般分為3步進行:1將概念結構轉換為一般的關系、網狀、層次模型;2將轉換來的關系、網狀、層次模型向特定DBMS支持下的數據模型轉換;3對數據模型進行優化。6.1 關系模型將E-R圖轉換為關系模型實際上就是要獎實體型、實體的屬性和實體型之間的聯系轉換為關系模式,這種轉換一般遵循如下原那么:一個實體型轉換為一個關系模式。實體的屬性就是關系的屬性,實體的碼就是關系的碼。對于實體型間的聯系那么有以下不同的情況:1一個

39、1:1聯系可以轉換為一個獨立的關系模式,也可以與任意一端對應的關系模式合并。如果轉換為一個獨立的關系模式,那么與該聯系相連的個實體的碼以及聯系本身的屬性均轉換為關系的屬性,每個實體的碼均是該關系的侯選碼。如果與某一端實體對應的關系模式合并,那么需要在關系模式的屬性中參加另一個關系模式的碼和聯系本身的屬性。2一個1:n聯系可以轉換為一個獨立的關系模式,也可以與n端對應的關系模式合并。如果轉換為一個獨立的關系模式,那么與該聯系相連的個各實體的碼以及聯系本身的屬性均轉換為關系的屬性,而關系的碼為n端實體的碼。3一個m:n聯系轉換為一個關系模式。與該聯系相連的個實體的碼以及聯系本身的屬性均轉換為關系的

40、屬性,各實體的碼組成關系的碼或關系碼的一局部。43個或3個以上實體間的一個多元聯系可以轉換為一個關系模式。與該多元聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,各實體的碼組成關系的碼或關系碼的一局部。5具有相同碼的關系模式可合并。將概念結構設計階段設計好的根本E-R圖轉換為關系模型,如下所示:學生學號,專業號,院系號,姓名,性別,出生日期,身份證號,入學時間,政治面貌,家庭住址,籍貫,郵政編碼,民族,此為學生實體對應的關系模式。教師教工號,姓名,性別,職稱,所屬院系, ,此為老師實體對應的關系模式。畢業畢業證編號,學號,姓名,性別,身份證號,所屬院系,入學時間,已修學分,需修學分,

41、此為畢業實體對應的關系模式。課程課程號,課程名,學分,此為課程實體對應的關系模式。院系院系號,院系名稱,院長名,此為院系實體對應的關系模式。選修學號,課程號,成績,此為選修關系對應的關系模式。授課課程號,教工號,課時,此為老師授課關系對應的關系模式。開設專業號,課程號,此為專業開設課程關系對應的關系模式。6.2 物理模型將生成的概念模型通過單擊PowerDesigner11工具菜單欄上的Tools選項,再選擇Generate Physical Data Model選項,就可以轉換為物理模型,生成的最后結果具體如下列圖所示:圖 6-1 學籍管理系統物理模型圖7 .數據庫實現7.1 物理結構設計數

42、據庫的物理設計就是為一個給定的邏輯數據模型選取一個最適合應用要求的物理結構的過程。物理結構設計階段實現的是數據庫系統的內模式,它的質量直接決定了整個系統的性能。因此在確定數據庫的存儲結構和存取方法之前,對數據庫系統所支持的事務要進行仔細分析,獲得優化數據庫物理設計的參數數據庫的物理設計通常分為兩步:1確定數據庫的物理結構,在關系數據庫中主要指存取方法和存取結構;2對物理結構進行評價,評價的重點是時間和空間效率。7 確定數據庫的存儲結構由于本系統的數據庫建立不是很大,所以數據存儲采用的是一個磁盤的一個分區。7 存取方法和優化方法存取方法是快速存取數據庫中數據的技術。數據庫管理系統一般都是提供多種

43、存取方法。常用的存取方法有三類。第一類是索引方法,目前主要是B+樹索引方法;第二類是聚簇方法;第三類是HASH方法。數據庫的索引類似書的目錄。在書中,目錄允許用戶不必瀏覽全書就能迅速地找到所需要的位置。在數據庫中,索引也允許應用程序迅速找到表中的數據,而不必掃描整個數據庫。在書中,目錄就是內容和相應頁號的清單。在數據庫中,索引就是表中數據和相應存儲位置的列表。使用索引可以大大減少數據的查詢時間。但需要注意的是索引雖然能加速查詢的速度,但是為數據庫中的每張表都設置大量的索引并不是一個明智的做法。這是因為增加索引也有其不利的一面:首先,每個索引都將占用一定的存儲空間,如果建立聚簇索引(會改變數據物

44、理存儲位置的一種索引),占用需要的空間就會更大;其次,當對表中的數據進行增加、刪除和修改的時候,索引也要動態地維護,這樣就降低了數據的更新速度。7.2 功能實現完成數據庫的物理設計之后,設計人員就要用RDBMS提供的數據定義語言和其他實用程序將數據庫邏輯設計和物理設計結果嚴格描述出來,成為DBMS可以接受的源代碼,再經過調試產生目標模式。然后就可以組織數據入庫,最后就在此根底上編寫各個表相關的觸發器和存儲過程。7.3 數據庫的實施完成數據庫的物理設計之后,設計人員就要用RDBMS提供的數據定義語言和其他實用程序將數據庫邏輯設計和物理設計結果嚴格描述出來,成為DBMS可以接受的源代碼,再經過調試

45、產生目標模式。然后就可以組織數據入庫了,這就是數據庫實施階段。7 數據庫的實施數據庫的實施主要是根據邏輯結構設計和物理結構設計的結果,在計算機系統上建立實際的數據庫結構、導入數據并進行程序的調試。它相當于軟件工程中的代碼編寫和程序調試的階段。當在PowerDesigner Trial 11中設計好本系統的物理結構之后,就可以向數據庫轉換為相應的表。先選擇菜單欄中Database的Connect,通過添加數據源,連接數據源,輸入用戶名和密碼進行轉換,生成相關的SQL語句,在通過運行之后,最終在SQL Server 2000中生成了如下所示的表。學生數據庫信息截圖:圖 7-0 學生數據庫圖學生根本

46、信息表主要描述一些學生入學前的根本信息:圖 7-1 學生根本信息表結構圖教師根本信息表主要描述教師的一些根本信息:圖 7-2 教師根本信息表結構圖院系信息表主要描述學校中各個院系的一些根本信息:圖 7-3 院系信息表結構圖專業信息表主要描述學生選擇專業的信息:圖 7-4 專業信息表結構圖課程信息表主要描述學校開設的課程的根本信息:圖 7-5 課程信息表結構圖選課信息表主要描述學生選修課程的信息:圖 7-6 選課信息表結構圖授課信息表主要描述教師授課的信息:圖 7-7 授課信息表結構圖學生畢業信息表主要描述學生畢業的根本信息:圖 7-8 學生畢業信息表結構圖7 數據的載入數據庫實施階段包括兩項重

47、要的工作,一項為哪一項數據的載入,另一項為哪一項應用程序的編碼和調試。由于本次課程設計沒有進行應用程序的開發,因此對于后一項工作在這里就不做描述了。具體輸入的一局部數據如下列圖所示:輸入學生根本信息:圖 7-9 學生局部根本信息數據圖輸入教師根本信息:圖 7-10 教師根本信息數據圖輸入課程根本信息:圖 7-11 課程信息數據圖輸入院系根本信息:圖 7-12 院系根本信息數據圖輸入專業信息:圖 7-13 專業信息數據圖輸入學生畢業根本信息:圖 7-14 學生畢業根本信息數據圖輸入學生選課信息:圖 7-15 學生選課信息數據圖輸入教師授課信息:圖 7-16 教師授課根本信息數據圖輸入專業開課信息

48、:圖 7-17 專業開始課程根本信息數據圖創立數據庫create database;mysql_select_dbschool_census;CREATE TABLE student (sno VARCHAR( 10 ) NOT NULL ,dno VARCHAR( 10 ) NULL ,mno VARCHAR( 10 ) NULL ,sname VARCHAR( 10 ) NOT NULL ,ssex VARCHAR( 2 ) NULL ,birthday VARCHAR( 20 ) NULL ,symbol VARCHAR( 8 ) NULL ,id VARCHAR( 20 ) NULL

49、,intime VARCHAR( 20 ) NULL ,birthplace VARCHAR( 50 ) NULL ,homeaddr VARCHAR( 50 ) NULL ,postcode VARCHAR( 6 ) NULL ,PRIMARY KEY ( sno ) ) ENGINE = MYISAM ;CREATE TABLE teacher (tno VARCHAR( 10 ) NOT NULL ,dno VARCHAR( 10 ) NULL ,tname VARCHAR( 10 ) NOT NULL ,tsex VARCHAR( 2 ) NOT NULL ,profess VARCH

50、AR( 10 ) NULL ,tel VARCHAR( 11 ) NULL ,PRIMARY KEY ( tno ) ) ENGINE = MYISAM ;CREATE TABLE department (dno VARCHAR( 10 ) NOT NULL ,dname VARCHAR( 20 ) NULL ,dheader VARCHAR( 10 ) NULL ,PRIMARY KEY ( dno ) ) ENGINE = MYISAM ;CREATE TABLE speciality (spno VARCHAR( 10 ) NOT NULL ,spname VARCHAR( 20 ) N

51、OT NULL ,PRIMARY KEY ( spno ) ) ENGINE = MYISAM ;CREATE TABLE course (cno VARCHAR( 10 ) NOT NULL ,cname VARCHAR( 20 ) NOT NULL ,credit FLOAT NULL ,PRIMARY KEY ( cno ) ) ENGINE = MYISAM ;CREATE TABLE student_course (sno VARCHAR( 10 ) NOT NULL ,cno VARCHAR( 10 ) NOT NULL ,grade FLOAT NULL ,PRIMARY KEY

52、 ( sno , cno ) ) ENGINE = MYISAM ;CREATE TABLE teacher_course (cno VARCHAR( 10 ) NOT NULL ,tno VARCHAR( 10 ) NOT NULL ,ctime VARCHAR( 20 ) NULL ,PRIMARY KEY ( cno , tno ) ) ENGINE = MYISAM ;CREATE TABLE speciality_course (spno VARCHAR( 10 ) NOT NULL ,cno VARCHAR( 10 ) NOT NULL ,PRIMARY KEY ( sno , c

53、no ) ) ENGINE = MYISAM ;CREATE TABLE graduate (gno VARCHAR( 10 ) NOT NULL ,sno VARCHAR( 10 ) NOT NULL ,sname VARCHAR( 10 ) NOT NULL ,ssex VARCHAR( 2 ) NULL ,dno VARCHAR( 10 ) NULL ,intime DATETIME NULL ,graduatetime DATETIME NULL ,havecredit FLOAT NULL ,needcredit FLOAT NULL ,PRIMARY KEY ( gno ) ) E

54、NGINE = MYISAM ;數據庫值初始化INSERT INTO department ( dno , dname , dheader ) VALUES (1001, 計算機學院, 王河親), (1002, 信息學院, 魏文彬), (1003, 環境學院, 梁靜茹), (1004, 外國語學院, 張含韻), (1005, 機電學院, 機長), (1006, 自動化學院, 老值);INSERT INTO speciality ( spno , spname ) VALUES (2001, 計算機科學與技術), (2002, 網絡工程), (2003, 軟件工程), (2004, 光信息方向)

55、, (2005, 對外貿易), (2006, 外國文化);INSERT INTO course ( cno , cname , credit ) VALUES (3001, 多媒體技術, 2.5), (3002, C語言, 4.5), (3003, 通信原理, 3), (3004, 大學英語, 4.5), (3006, 高等數學, 6), (3005, 大學物理, 3.5);INSERT INTO teacher ( tno , dno , tname , tsex , profess , tel ) VALUES (), (), (0103, 1002, 譚家, 男, 講師, NULL ),

56、 (0104, 1003, 魏偉, 男, 副教授, 189900000), (0105, 1004, 李莉, 女, 講師, NULL ), (0106, 1005, 王敏, 女, 院士, 110);INSERT INTO student ( sno , dno , mno , sname , ssex , birthday , symbol , id , intime , birthplace , homeaddr , postcode ) VALUES (7006545, 1001, 2001, 王河親, 男, 19880821, 漢, 4002231988-8213513, 2007091

57、0, 南雄, 廣東省南雄市南畝鎮, 512443), (7006541, 1001, 2002, 魏大家, 男, 19870909, 漢, 440223200098762345, 20070910, 廣州, 武漢, 530000), (7006100, 1002, 2004, 李孝利, 女, NULL , NULL , NULL , NULL , NULL , NULL , NULL ), (7006578, 1004, 2006, 黃曉, 男, NULL , 漢, NULL , NULL , NULL , NULL , NULL ); 數據庫的運行和維護數據庫試運行合格后,數據庫開發工作就根

58、本完成,即可投入正式運行了。但是,由于應用環境在不斷變化,數據庫運行過程中物理存儲也會不斷變化,對數據庫設計進行評價、調整、修改等維護工作是一個長期的任務,也是設計工作的繼續和提高。在數據庫運行階段,對數據庫經常性的維護工作主要是由DBA完成的,包括:1數據庫的轉儲和恢復DBA要針對不同的應用要求制定不同的轉儲方案,一保證一旦發生故障能盡快將數據庫恢復到某種一致的狀態,并盡可能減少對數據庫的破壞。2數據庫的平安性、完整性控制DBA根據實際情況修改原有的平安性控制和數據庫的完整性約束條件,以滿足用戶要求。3數據庫性能的監督、分析和改造在數據庫運行過程中,DBA必須監督系統運行,對監測數據進行分析

59、,找出改良系統性能的方法。4數據庫的重組織與重構造數據庫運行一段時間后,由于記錄不斷增、刪、改,會使數據庫的物理存儲情況變壞,降低了數據的存取效率,數據庫性能下降,這時DBA就要對數據庫進行重組織或局部重組織。8系統測試登入測試賬號密碼統一為admin圖8-1主界面圖8-2插入測試點擊“新學生參加圖8-2結果為:圖8-3刪除前圖8-4刪除后圖8-5修改前圖8-6修改后圖8-7查詢可按多種條件查詢圖8-8結果為:圖8-9選課安排為 “魏大家 選擇 “高等數學圖8-10結果:圖8-11專業開課和學生選課類似圖8-12為老師排課和學生選課及專業開課類似圖8-139安裝和使用說明安裝軟件“php環境3

60、合一.exe :放在文件夾“3107006545王河親文件夾下。瀏覽器:因為沒做兼容性方面的調試,建議使用IE內核的瀏覽器,如IE,遨游。1雙擊文件夾“3107006545王河親下的“php環境3合一.exe將出現如下界界:圖9-12點擊“next圖9-23選擇“I Agree,將得到如下內容圖9-34此時可以選擇安裝路徑,建議不變,盡量保持安裝在根目錄下,如“C:AppeServ 或 “D:AppeServ ,方便接下來的操作。點擊“next,得到如下列圖:圖9-45全選默認是全選,并點擊“next,得到如下列圖:圖9-56此一步關鍵:選擇一個主機未使用的端口號并填寫,如果端口被使用,將導致

溫馨提示

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

評論

0/150

提交評論