版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 成績(jī): </b></p><p> 課 程 設(shè) 計(jì) 報(bào) 告 書</p><p> 學(xué) 號(hào) </p><p> 學(xué)生姓名 </p><p> 所屬課程名稱 數(shù)據(jù)庫(kù)技術(shù)及應(yīng)用課程設(shè)
2、計(jì) </p><p> 題 目 選修課程管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) </p><p> 分 院 電 信 分 院 </p><p> 專業(yè)班級(jí) 2010級(jí)信息管理1班 </p><p> 指導(dǎo)教師 </p>
3、<p> 2011年 6月15 日 </p><p> 課 程 設(shè) 計(jì)任 務(wù) 書</p><p> 一、課程設(shè)計(jì)題目 選修課程管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) </p><p> 二、課程設(shè)計(jì)工作:自 2011 年 6月 13日起至 2011年 6月 22日</p><p> 三、課程設(shè)計(jì)的內(nèi)容要求:&
4、lt;/p><p> 1、 通過SQL創(chuàng)建基本表格,修改基本表結(jié)構(gòu) 。 </p><p> 2、 對(duì)上面創(chuàng)建好的表格添加基本元組。(在添加元組的時(shí)候要滿足我們創(chuàng)建的約束條件)。 </p>
5、<p> 3、 通過SELECT語句對(duì)我們創(chuàng)建的表格進(jìn)行相關(guān)的查詢。 </p><p> 4、 對(duì)表格創(chuàng)建索引。 </p><p> 5、 對(duì)表格創(chuàng)建視圖等等。
6、 </p><p> 例如創(chuàng)建基本表格的語法格式如下: </p><p> CREATE TABLE <表名> (<列名> <數(shù)據(jù)類型> [列級(jí)完整性約束
7、條件] [,<列名> <數(shù)據(jù)類型> [列級(jí)完整性約束條件]]…[,<表級(jí)完整性約束條件>]) </p><p><b> 目 錄</b></p><p><b> 第一章系統(tǒng)概述5</b></p>
8、<p> 1.1系統(tǒng)開發(fā)的背景5</p><p> 1.2系統(tǒng)開發(fā)的意義5</p><p> 第二章 系統(tǒng)需求分析6</p><p> 2.1系統(tǒng)功能要求6</p><p> 2.2.需求分析概述6</p><p> 2.3系統(tǒng)層次劃分7</p><p>
9、2.4系統(tǒng)數(shù)據(jù)流程圖7</p><p><b> 2.5數(shù)據(jù)字典8</b></p><p> 2.5.1數(shù)據(jù)項(xiàng)8</p><p> 2.5.2數(shù)據(jù)結(jié)構(gòu)9</p><p> 2.5.3數(shù)據(jù)流9</p><p> 2.5.4 數(shù)據(jù)存儲(chǔ)10</p><p>
10、; 第三章系統(tǒng)總體設(shè)計(jì)11</p><p> 3.1系統(tǒng)總體設(shè)計(jì)目標(biāo)11</p><p> 3.2系統(tǒng)概念設(shè)計(jì)11</p><p> 3.2.1概念模型12</p><p> 3.2.2關(guān)系模式12</p><p> 第四章數(shù)據(jù)庫(kù)系統(tǒng)實(shí)現(xiàn)13</p><p> 4.1
11、SQL Server 2005簡(jiǎn)介13</p><p> 4.2人事管理系統(tǒng)實(shí)現(xiàn)13</p><p> 第五章程序清單15</p><p> 5.1創(chuàng)建學(xué)生表實(shí)現(xiàn)15</p><p> 5.2創(chuàng)建課程表和選課表代碼如下:16</p><p> 5.3元組信息的添加:16</p>&l
12、t;p> 5.4對(duì)學(xué)生信息進(jìn)行查詢17</p><p><b> 5.5源程序17</b></p><p><b> 第六章結(jié)束語21</b></p><p> 6.1設(shè)計(jì)總結(jié)21</p><p> 第七章參考文獻(xiàn)22</p><p><b&g
13、t; 第一章系統(tǒng)概述</b></p><p> 1.1系統(tǒng)開發(fā)的背景</p><p> 目前,我國(guó)的高等教育事業(yè)蓬勃發(fā)展,高校的規(guī)模不斷擴(kuò)大,同時(shí),高校的教學(xué)改革也在全面推行,學(xué)分制在各高校全面啟動(dòng)。學(xué)分制——允許學(xué)生在計(jì)劃的指導(dǎo)下,根據(jù)自己的條件、能力、志趣,有選擇地支配自己的學(xué)習(xí)。因此,學(xué)生的選課就成為推行學(xué)分制的重要管理任務(wù)。以往的選課均是在計(jì)劃模式下進(jìn)行:每位教師
14、將所開的課程名稱,個(gè)人簡(jiǎn)介,課程限選人數(shù),限選專業(yè)等信息交給教務(wù)處,教務(wù)處再將這些信息統(tǒng)一成冊(cè),分發(fā)給各個(gè)班級(jí)班長(zhǎng),由班長(zhǎng)將本班的選課情況統(tǒng)計(jì)并返回教務(wù)處。這是一個(gè)相當(dāng)長(zhǎng)的周期,并且耗費(fèi)大量的人力、物力,對(duì)選擇結(jié)果沒有控制。針對(duì)這些問題,提出一種基于WEB的選課系統(tǒng),該系統(tǒng)將課程的基本信息錄入之后,即可由學(xué)生選課,受限制專業(yè)的學(xué)生將無法選擇該課程,同樣,選課按照先后順序,超過限制的人數(shù),也不能選擇該課程。</p><
15、p> 學(xué)生選課系統(tǒng)能夠讓學(xué)生們?cè)诰W(wǎng)絡(luò)上自主選擇選修課程,教務(wù)處的工作人員則通過網(wǎng)絡(luò)來處理學(xué)生的選課信息。這個(gè)系統(tǒng)實(shí)現(xiàn)了對(duì)信息數(shù)據(jù)的瀏覽、查詢、編輯和管理等基本數(shù)據(jù)庫(kù)操作,采取模塊化的編寫思想,提高了可讀性,同時(shí)提高了開發(fā)效率,從而實(shí)現(xiàn)了校園無紙化辦公,提高選課的效率,減輕選課操作的工作量,從而提高教學(xué)管理的效率。</p><p> 1.2系統(tǒng)開發(fā)的意義</p><p> 學(xué)生選
16、課系統(tǒng)是一個(gè)學(xué)校不可缺少的部分,它的內(nèi)容對(duì)于學(xué)校的決策者和管理者來說都至關(guān)重要,所以學(xué)生選課系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄?。但一直以來人們使用傳統(tǒng)人工的方式管理文件檔案,這種管理方式存在著許多缺點(diǎn),如:效率低、保密性差,另外時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來了不少的困難。</p><p> 因此,開發(fā)這樣一套軟件成為很有必要的事情。</p><p
17、> 第二章 系統(tǒng)需求分析</p><p><b> 2.1系統(tǒng)功能要求</b></p><p> 管理員可以通過超級(jí)用戶身份登錄,對(duì)系統(tǒng)進(jìn)行全面的管理,對(duì)新用戶的添加,刪除,對(duì)信息進(jìn)行管理。管理員可以對(duì)老師及同學(xué)的帳戶進(jìn)行管理,</p><p> 老師、學(xué)生不同身份的用戶進(jìn)入不同的界面,進(jìn)行不同的操作。教師可以發(fā)布自己本學(xué)期所要教
18、的課程,以及對(duì)學(xué)生成績(jī)進(jìn)行管理。同學(xué)可以通過查詢本學(xué)期所開設(shè)課程進(jìn)行選擇。 </p><p> 2.2.需求分析概述</p><p> 教師信息查詢:教師用戶登錄后,進(jìn)入教師操作功能單元,選擇查詢,在查詢?cè)O(shè)置中的查詢項(xiàng)目選擇查詢的項(xiàng)目,填寫查詢條件,點(diǎn)擊查詢,在教師信息列表就得到了該用戶修改后的信息。</p><p> 教師信息修改:教師用戶登錄后,進(jìn)入教師操
19、作功能單元,選擇修改,在教師基本信息中修改信息,點(diǎn)擊數(shù)據(jù)操作中點(diǎn)擊修改,在教師信息列表就得到了該用戶修改后的信息。</p><p> 教師信息刪除:教師用戶登錄后,進(jìn)入教師操作功能單元,選擇刪除,提交之后就將該用戶刪除了。用戶組里面將不存在改用戶。</p><p> 學(xué)生選課:學(xué)生用戶登錄后,進(jìn)入選課信息功能單元,如果是已經(jīng)登錄進(jìn)入了,在查詢?cè)O(shè)置中的查詢項(xiàng)目選擇查詢的項(xiàng)目,填寫查詢條件
20、,點(diǎn)擊查詢之后系統(tǒng)會(huì)在已存在的課程信息表中查詢?cè)撋鶎賹I(yè)應(yīng)修的課程,如果該門課程存在就可以看到選擇的課程出現(xiàn)在了課程列表里面,同時(shí)該記錄也會(huì)出現(xiàn)在已選課程信息里面。如果不存在則輸出錯(cuò)誤提示信息“沒有相關(guān)信息”。</p><p> 成績(jī)查詢:學(xué)生用戶登錄后,進(jìn)入成績(jī)管理功能單元,如果是已經(jīng)登錄進(jìn)入了,在查詢項(xiàng)目中選擇查詢項(xiàng)目,在查詢條件中填寫條件,點(diǎn)擊查詢,就可以看到已選課程的成績(jī),和學(xué)期。</p>
21、<p><b> 2.3系統(tǒng)層次劃分</b></p><p> 根據(jù)系統(tǒng)功能要求,可以將問題解決分為以下步驟: </p><p> 1)應(yīng)用系統(tǒng)分析,建立該系統(tǒng)的功能模塊框圖以及界面的組織和設(shè)計(jì);</p><p> 2)分析系統(tǒng)中的各個(gè)實(shí)體及它們之間的關(guān)系; </p><p> 3)根據(jù)問題描述,
22、設(shè)計(jì)系統(tǒng)的類層次; </p><p> 4)完成類層次中各個(gè)類的描述; </p><p> 5)完成類中各個(gè)成員函數(shù)的定義; </p><p> 6)完成系統(tǒng)的應(yīng)用模塊; </p><p><b> 7)功能調(diào)試; </b></p><p> 8)完成系統(tǒng)總結(jié)報(bào)告。</p>
23、<p> 2.4系統(tǒng)數(shù)據(jù)流程圖</p><p><b> 圖2-1</b></p><p><b> 2.5數(shù)據(jù)字典</b></p><p><b> 2.5.1數(shù)據(jù)項(xiàng)</b></p><p><b> 數(shù)據(jù)項(xiàng)名:學(xué)號(hào)</b><
24、/p><p> 含義說明:作為唯一標(biāo)識(shí)該學(xué)生的主標(biāo)識(shí)符,是主碼</p><p><b> 數(shù)據(jù)類型:字符串型</b></p><p> 長(zhǎng)度:八位,取值任意</p><p><b> 數(shù)據(jù)項(xiàng)名:課程編號(hào)</b></p><p> 含義說明:用來標(biāo)識(shí)某一課程,是主碼<
25、;/p><p><b> 數(shù)據(jù)類型:字符型</b></p><p><b> 長(zhǎng)度:五位</b></p><p><b> 數(shù)據(jù)項(xiàng)名:成績(jī)</b></p><p> 含義說明:登記所有學(xué)生的成績(jī)情況</p><p><b> 數(shù)據(jù)類型:數(shù)
26、值型</b></p><p><b> 長(zhǎng)度:十位</b></p><p><b> 數(shù)據(jù)項(xiàng)名:系名稱</b></p><p> 含義說明:記錄所有的系</p><p><b> 數(shù)據(jù)類型:字符型</b></p><p><b&
27、gt; 長(zhǎng)度:十位</b></p><p><b> 數(shù)據(jù)項(xiàng)名:教師編號(hào)</b></p><p> 含義說明:登記所有選修課老師</p><p><b> 數(shù)據(jù)類型:字符型</b></p><p><b> 長(zhǎng)度:十位</b></p><
28、;p><b> 數(shù)據(jù)項(xiàng)名:教室號(hào)碼</b></p><p> 含義說明:記錄所有教室的標(biāo)號(hào)</p><p><b> 數(shù)據(jù)類型:字符型</b></p><p><b> 長(zhǎng)度:十位</b></p><p><b> 2.5.2數(shù)據(jù)結(jié)構(gòu)</b>
29、;</p><p> 學(xué)生表={學(xué)生登記表,登記學(xué)生的相關(guān)信息,</p><p> 組成:{學(xué)號(hào),姓名,年齡,所屬院系,已選課情況}}</p><p> 學(xué)生成績(jī)表={成績(jī)信息,記錄學(xué)生成績(jī)的相關(guān)信息,</p><p> 組成:{學(xué)號(hào),姓名,課程編號(hào),課程名稱,學(xué)分,成績(jī)}}</p><p> 教師表={教師
30、登記表,登記教師的相關(guān)信息,</p><p> 組成:{教師姓名,性別,年齡,學(xué)歷,職稱,畢業(yè)院校,健康狀況}}</p><p> 教室信息表={教室信息,記錄教室的相關(guān)信息,</p><p> 組成:{可容納人數(shù),空閑時(shí)間,備注}}</p><p><b> 2.5.3數(shù)據(jù)流</b></p>&l
31、t;p> 數(shù)據(jù)流名:學(xué)生信息表</p><p><b> 來源:學(xué)生管理 </b></p><p><b> 流向:學(xué)生管理 </b></p><p> 組成:學(xué)號(hào)+姓名+所屬院系+已選課情況 </p><p> 說明:對(duì)所有學(xué)生的信息進(jìn)行查詢,修改。</p><
32、p> 數(shù)據(jù)流名:教室情況表 </p><p><b> 來源:教室管理</b></p><p><b> 流向:教室管理</b></p><p> 組成:可容納人數(shù)+空閑時(shí)間</p><p> 說明:對(duì)教室的信息進(jìn)行查詢,添加和更改。</p><p> 數(shù)據(jù)
33、流名:選課信息表 </p><p><b> 來源:選課管理</b></p><p><b> 流向:選課管理</b></p><p> 組成:學(xué)號(hào)+姓名+課程編號(hào)+課程姓名+任課教師+學(xué)生選課情況</p><p> 說明:對(duì)學(xué)生成績(jī)進(jìn)行錄入和修改。</p><p>
34、 數(shù)據(jù)流名:教師情況表</p><p><b> 來源:教師管理</b></p><p><b> 流向:教師管理</b></p><p> 組成:教師編號(hào)+教師姓名+性別+年齡+學(xué)歷+職稱+畢業(yè)院校+健康狀況</p><p> 說明:對(duì)教師信息進(jìn)行錄入和查詢</p><
35、;p> 2.5.4 數(shù)據(jù)存儲(chǔ)</p><p> 數(shù)據(jù)存儲(chǔ)名:學(xué)生信息</p><p> 輸入數(shù)據(jù):學(xué)生信息表</p><p> 輸出數(shù)據(jù):學(xué)生信息表</p><p> 說明:存儲(chǔ)學(xué)生的所有相關(guān)信息</p><p><b> 數(shù)據(jù)存儲(chǔ)名:系信息</b></p>&l
36、t;p><b> 輸入數(shù)據(jù):系表</b></p><p><b> 輸出數(shù)據(jù):系表</b></p><p> 說明:存儲(chǔ)系的所有相關(guān)信息</p><p> 數(shù)據(jù)存儲(chǔ)名:教師信息</p><p> 輸入數(shù)據(jù):教師信息表</p><p> 輸出數(shù)據(jù):教師信息表&
37、lt;/p><p> 說明:存儲(chǔ)教師的所有相關(guān)信息</p><p> 數(shù)據(jù)存儲(chǔ)名:選修課信息</p><p> 輸入數(shù)據(jù):選修信息表 </p><p> 輸出數(shù)據(jù):選修信息表 </p><p> 說明:存儲(chǔ)學(xué)生選課的所有相關(guān)信息 </p><p><b> 第三章系統(tǒng)總體設(shè)計(jì)&
38、lt;/b></p><p> 3.1系統(tǒng)總體設(shè)計(jì)目標(biāo)</p><p> 完成學(xué)生選課系統(tǒng),學(xué)生通過該系統(tǒng)能夠查詢到,任課老師的相關(guān)信息,以及所在的教室。老師可以查看學(xué)生選擇該課程的情況。</p><p><b> 圖3-1</b></p><p><b> 3.2系統(tǒng)概念設(shè)計(jì)</b>
39、</p><p> 根據(jù)系統(tǒng)功能設(shè)計(jì)的要求以及功能模塊的劃分,各個(gè)系統(tǒng)的邏輯實(shí)現(xiàn)如下:</p><p> 1.對(duì)于學(xué)生選課系統(tǒng)數(shù)據(jù)庫(kù),可以列出以下數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):</p><p> 學(xué)生信息:學(xué)號(hào)、學(xué)生姓名、學(xué)生的系名、學(xué)生性別、學(xué)生年齡、學(xué)生密碼。</p><p> 2.對(duì)于教師信息維護(hù)數(shù)據(jù)庫(kù),可以列出以下數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):<
40、;/p><p> 教師個(gè)人信息:教師編號(hào)、教師名稱、教師密碼。</p><p> 3.對(duì)于后臺(tái)管理數(shù)據(jù)庫(kù),可以列出以下數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu):</p><p> 管理員信息:管理員名稱、管理員密碼。</p><p> 課程信息:課程號(hào)、課程名稱、課程類別、開課系。</p><p> 選課信息:課程號(hào)、學(xué)生學(xué)號(hào)、成績(jī)。&
41、lt;/p><p> 數(shù)據(jù)流:學(xué)生管理員和教師分別有自己的權(quán)限,學(xué)生可以查看全部選修必修課程,查看自己的詳細(xì)信息,進(jìn)行網(wǎng)上選課,管理員可以修改,插入并刪除學(xué)生,課程,還教師的信息,教師可以在網(wǎng)上進(jìn)行成績(jī)錄入,有各自權(quán)限的用戶將各自權(quán)限范圍內(nèi)的信息進(jìn)行錄入,然后保存信息到數(shù)據(jù)庫(kù)中,有權(quán)限的人可以將這些庫(kù)信息進(jìn)行修改和刪除。</p><p> 3.2.1概念模型
42、</p><p> 教室信息E-R圖 學(xué)生信息E-R圖</p><p> 教師信息E—R圖 </p><p><b> 3.2.2關(guān)系模式</b></p><p> 教室(教室編號(hào),可容納人數(shù),空余時(shí)間)</p>
43、;<p> 教師(教室編號(hào),教師姓名,性別,年齡,學(xué)歷,職稱,畢業(yè)院校,健康狀況)</p><p> 學(xué)生(學(xué)號(hào),姓名,所屬院系,已選課程)</p><p> 成績(jī)(課程編號(hào),課程名稱,任課教師,選課學(xué)生情況)</p><p> 第四章數(shù)據(jù)庫(kù)系統(tǒng)實(shí)現(xiàn)</p><p> 4.1 SQL Server 2005簡(jiǎn)介 <
44、;/p><p> SQL Server 是一個(gè)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同開發(fā)的,于1988 年推出了第一個(gè)OS/2 版本。在Windows NT 推出后,Microsoft與Sybase 在SQL Server 的開發(fā)上就分道揚(yáng)鑣了。Microsoft 將SQL Server 移植到Windows NT系統(tǒng)上,專注于開發(fā)推廣SQL Serve
45、r 的Windows NT 版本;Sybase 則較專注于SQL Server在UNIX 操作系統(tǒng)上的應(yīng)用。在本書中介紹的是Microsoft SQL Server 以后簡(jiǎn)稱為SQL Server或MS SQL Server。</p><p> SQL Server 2005 是Microsoft 公司推出的SQL Server 數(shù)據(jù)庫(kù)管理系統(tǒng)的一個(gè)版本。該版本繼承了SQL Server 7.0 版本的優(yōu)點(diǎn)同時(shí)
46、又比它增加了許多更先進(jìn)的功能,具有使用方便,可伸縮性好與相關(guān)軟件集成程度高等優(yōu)點(diǎn),可跨越從運(yùn)行Microsoft Windows 98 的膝上型電腦到運(yùn)行Microsoft Windows 2000 的大型多處理器的服務(wù)器等多種平臺(tái)使用。</p><p> 4.2人事管理系統(tǒng)實(shí)現(xiàn)</p><p> 根據(jù)系統(tǒng)需求分析要求,用數(shù)據(jù)庫(kù)SQL功能創(chuàng)建學(xué)生表4-1如下所示</p>
47、<p><b> 表4-1</b></p><p> 根據(jù)系統(tǒng)功能需求分析要求,用數(shù)據(jù)庫(kù)SQL功能創(chuàng)建學(xué)生成績(jī)表4-2如下所示。</p><p><b> 表4-2</b></p><p> 根據(jù)系統(tǒng)功能需求分析要求,用數(shù)據(jù)庫(kù)SQL功能創(chuàng)建教師信息表4-3如下所示。</p><p>
48、;<b> 表4-3</b></p><p> 根據(jù)系統(tǒng)功能需求分析要求,用數(shù)據(jù)庫(kù)SQL功能創(chuàng)建教師上課情況表4-4如下所示。</p><p><b> 表4-4</b></p><p> 根據(jù)系統(tǒng)功能需求分析要求,用數(shù)據(jù)庫(kù)SQL功能創(chuàng)建教室信息表4-5如下所示。</p><p><b
49、> 表4-5</b></p><p> 根據(jù)系統(tǒng)功能需求分析要求,用數(shù)據(jù)庫(kù)SQL功能創(chuàng)建選課信息表4-6如下所示。</p><p><b> 表4-6</b></p><p> 數(shù)據(jù)庫(kù)中表之間的關(guān)系如表4-7所示。</p><p><b> 表4-7</b></p&
50、gt;<p><b> 第五章程序清單</b></p><p> 5.1創(chuàng)建學(xué)生表實(shí)現(xiàn)</p><p><b> 表5-1</b></p><p> 5.2創(chuàng)建課程表和選課表代碼如下:</p><p> Create Table Course </p><
51、p> ( Cno CHAR(2) NOT NULL PRIMARY KEY(Cno),</p><p> Cn VARCHAR(20),</p><p> Cpno CHAR(2),</p><p> Ct SMALLINT);</p><p> Create Table SC</p><p> (
52、Sno CHAR(6) NOT NULL CONSTRAINT S_F FOREIGN KEY REFERENCES Student(Sno),</p><p> Cno CHAR(2) NOT NULL,</p><p> SCORE SMALLINT CHECK ((SCORE IS NULL) OR (SCORE BETWEEN 0 AND 100)),</p>&
53、lt;p> PRIMARY KEY(Sno,Cno),</p><p> FOREIGN KEY(Cno) REFERENCES Course(Cno));</p><p> 5.3元組信息的添加:</p><p><b> 表5-2</b></p><p> 5.4對(duì)學(xué)生信息進(jìn)行查詢</p>
54、<p><b> 表5-3</b></p><p><b> 5.5源程序</b></p><p> #include <stdio.h></p><p> #include<stdlib.h></p><p> struct course</p
55、><p><b> {</b></p><p><b> int num;</b></p><p> char name[15];</p><p> char xingzhi[10];</p><p><b> int time;</b></
56、p><p> int ttime;</p><p> int etime;</p><p><b> int mark;</b></p><p><b> int term;</b></p><p><b> };</b></p>&
57、lt;p> struct student</p><p><b> {</b></p><p><b> int snum;</b></p><p><b> int cnum;</b></p><p><b> };</b></p&
58、gt;<p> /*insert*/</p><p> void insert() </p><p><b> { </b></p><p> void menu();</p><p> FILE *fp; </p><p> struct course c;</p
59、><p> if((fp=fopen("course.txt","a+"))==NULL) </p><p><b> { </b></p><p> printf("cannot open file\n"); </p><p><b> } &l
60、t;/b></p><p> printf("\n\t請(qǐng)輸入課程信息 :\n"); </p><p> printf("\t輸入課程編號(hào),課程名稱,課程性質(zhì),總學(xué)時(shí),授課時(shí)間,實(shí)驗(yàn)或上機(jī)學(xué)時(shí),開課學(xué)期:\n");</p><p> scanf("%d %s %s %d %d %d %d %d",
61、&c.num,&c.name,&c.xingzhi,&c.time,</p><p> &c.ttime,&c. etime,&c.mark,&c.term); </p><p> fprintf(fp,"%d %s %s %d %d %d %d %d",c.num,c.name,c.xingzhi,c
62、.time,</p><p> c.ttime,c.etime,c.mark,c.term);</p><p> fclose(fp);</p><p><b> menu();</b></p><p><b> }</b></p><p> /*browse li
63、u_lan*/</p><p> void browser()</p><p><b> {</b></p><p> void menu();</p><p><b> FILE *fp;</b></p><p> struct course c;</p&g
64、t;<p> if((fp=fopen("course.txt","r"))==NULL)</p><p><b> {</b></p><p> printf("\nCannot open course!\n");</p><p><b> }<
65、/b></p><p> for(;!feof(fp);)</p><p><b> {</b></p><p> fscanf(fp,"%d%s%s%d%d%d%d%d",&c.num,&c.name,&c.xingzhi,&c.time,</p><p>
66、; &c.ttime,&c.etime,&c.mark,&c.term); </p><p> printf("%d %s %s %d %d %d %d %d",c.num,c.name,c.xingzhi,c.time,</p><p> c.ttime,c.etime,c.mark,c.term);</p><
67、;p><b> }</b></p><p> fclose(fp);</p><p><b> menu();</b></p><p><b> }</b></p><p> /*search*/</p><p> void searc
68、h()</p><p><b> {</b></p><p> void menu();</p><p><b> FILE *fp;</b></p><p> struct course c;</p><p> int score;</p><
69、p> printf("\ninput mark your wantto search:");</p><p> scanf("%d",&score);</p><p> if((fp=fopen("course.txt","r"))==NULL)</p><p>&l
70、t;b> {</b></p><p> printf("\nCannot open course!\n");</p><p><b> }</b></p><p> for(;!feof(fp);)</p><p><b> {</b></p&g
71、t;<p> fscanf(fp,"%d %s %s %d %d %d %d %d",&c.num,&c.name,&c.xingzhi,&c.time,&c.ttime,&c.etime,&c.mark,&c.term); </p><p> if(c.mark==score)</p><p
72、> printf("%d %s %s %d %d %d %d %d",c.num,c.name,c.xingzhi,c.time,</p><p> c.ttime,c.etime,c.mark,c.term);</p><p><b> }</b></p><p> fclose(fp);</p>
73、<p><b> menu();</b></p><p><b> }</b></p><p> /*tong ji xuan ke ren shu*/</p><p> void xuanke_information()</p><p><b> {</b
74、></p><p> void menu();</p><p> int total=0;</p><p><b> FILE *fp;</b></p><p> struct student c;</p><p><b> int num;</b></
75、p><p> printf("\ninput course -number your wantto search:");</p><p> scanf("%d",&num);</p><p> if((fp=fopen("student.txt","r"))==NULL)<
76、;/p><p><b> {</b></p><p> printf("\nCannot open student!\n");</p><p><b> }</b></p><p> for(;!feof(fp);)</p><p><b>
77、 {</b></p><p> fscanf(fp,"%d%d",&c.snum,&c.cnum); </p><p> if(c.cnum==num)</p><p><b> {</b></p><p><b> total++;</b>
78、</p><p> printf("student_num=%d,course_num=%d",c.snum,c.cnum);</p><p><b> }</b></p><p><b> }</b></p><p> fclose(fp);</p>&l
79、t;p> printf("\n The number choose course_num %d is %d!",num,total);</p><p><b> menu();</b></p><p><b> }</b></p><p> /*xuanke*/</p>&l
80、t;p> void xuan_ke()</p><p><b> {</b></p><p> void menu();</p><p> int snum,cnum;</p><p><b> FILE *fp;</b></p><p> printf(&
81、quot;\nPlease input your student_number and course number you want to choose:");</p><p> scanf("%d%d",&snum,&cnum);</p><p> if((fp=fopen("student.txt","a+
82、"))==NULL)</p><p><b> {</b></p><p> printf("\nCannot open student!\n");</p><p><b> }</b></p><p> fprintf(fp,"%d %d"
83、,snum,cnum);</p><p> fclose(fp);</p><p><b> menu();</b></p><p><b> }</b></p><p> void menu() </p><p> { int n,w=0;</p>
84、<p> printf("\n\t\t 請(qǐng)輸入一個(gè)數(shù)字 0 TO 5!"); </p><p> printf("\n\n\n\t*******************MENU**************************");</p><p> printf("\n\t\t 1 - 插入課程信息"); &
85、lt;/p><p> printf("\n\t\t 2 - 瀏覽課程信息"); </p><p> printf("\n\t\t 3 - 查找選課信息"); </p><p> printf("\n\t\t 4 - 統(tǒng)計(jì)選課情況");</p><p> printf("
86、\n\t\t 5 - 進(jìn)行選課 "); </p><p> printf("\n\t\t 0 - 退出系統(tǒng)"); </p><p> printf("\n\n\n\t********************************************"); </p><p> printf("\n
87、\n\n\n\n\n\t\t請(qǐng)選擇數(shù)字:"); </p><p> scanf("%d",&n);</p><p><b> do</b></p><p><b> {</b></p><p> if(n>5||n<0)</p>
88、<p><b> {</b></p><p> printf("\n錯(cuò)誤! 請(qǐng)重新輸入!");</p><p> scanf("%d",&n);</p><p><b> }</b></p><p><b> else
89、w=1;</b></p><p> }while(w==0);</p><p><b> switch(n)</b></p><p><b> {</b></p><p> case 1:insert();break;</p><p> case 2:b
90、rowser();break;</p><p> case 3:search();break;</p><p> case 4:xuan_ke();break;</p><p> case 5:xuanke_information();break;</p><p> case 0:exit(0);</p><p&
91、gt;<b> }</b></p><p><b> } </b></p><p><b> main()</b></p><p><b> { </b></p><p><b> menu();</b></p>
92、<p><b> }</b></p><p><b> 第六章結(jié)束語</b></p><p><b> 6.1設(shè)計(jì)總結(jié)</b></p><p> 數(shù)據(jù)庫(kù)的課程設(shè)計(jì)結(jié)束了,通過對(duì)數(shù)據(jù)庫(kù)的學(xué)習(xí)也初步掌握其各方面的知識(shí),數(shù)據(jù)庫(kù)的功能是強(qiáng)大的,面對(duì)目前的信息化社會(huì),在整理、查詢、分析數(shù)據(jù)
93、方面是一款強(qiáng)有力的工具。</p><p> 在數(shù)據(jù)庫(kù)上機(jī)中主要是用到的SQL(Structured Query Language)結(jié)構(gòu)化查詢語言,它是一種數(shù)據(jù)庫(kù)查詢和程序設(shè)計(jì)語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)。同時(shí)也是數(shù)據(jù)庫(kù)腳本文件的擴(kuò)展名??梢詭臀覀冏龅矫嫦驍?shù)據(jù)庫(kù)執(zhí)行查詢、取回?cái)?shù)據(jù)、插入新的記錄、更新數(shù)據(jù)庫(kù)中的數(shù)據(jù)、刪除記錄、創(chuàng)建新數(shù)據(jù)庫(kù)、新表和視圖、設(shè)置表、存儲(chǔ)過程和視圖的權(quán)限,功能非常強(qiáng)
94、大。</p><p> 學(xué)習(xí)數(shù)據(jù)庫(kù)的內(nèi)容是從數(shù)據(jù)庫(kù)、數(shù)據(jù)表的創(chuàng)建和修改開始的,表是建立關(guān)系數(shù)據(jù)庫(kù)的基本結(jié)構(gòu),用來存儲(chǔ)數(shù)據(jù)具有已定義的屬性,在表的操作過程中,有查看表信息、查看表屬性、修改表中的數(shù)據(jù)、刪除表中的數(shù)據(jù)及修改表和刪除表的操作。從課程中讓我更明白一些知識(shí),表是數(shù)據(jù)最重要的一個(gè)數(shù)據(jù)對(duì)象,表的創(chuàng)建好壞直接關(guān)系到數(shù)數(shù)據(jù)庫(kù)的成敗,表的內(nèi)容是越具體越好,但是也不能太繁瑣,以后在實(shí)際應(yīng)用中多使用表,對(duì)表的規(guī)劃和理解
95、就會(huì)越深刻。在編程方面是需要我們對(duì)于編程有邏輯思維能力及一定的編程技巧。在數(shù)據(jù)庫(kù)中插入表、表中的信息等都需要注意,不然很容易出錯(cuò)。</p><p> 通過課程設(shè)計(jì)讓我比較容易的掌握理論知識(shí)的難點(diǎn),以及一些平時(shí)不注意的問題,在課程設(shè)計(jì)的過程中需要對(duì)每個(gè)細(xì)節(jié)都要留心,這樣才不至于出錯(cuò),這就加強(qiáng)了我們對(duì)平時(shí)不注意的問題得到回應(yīng),從而加深了細(xì)節(jié)問題的處理方式。</p><p> 在課程設(shè)計(jì)過程
96、中也遇到了不少問題,積極詢問老師,和同學(xué)共同商討,查詢資料把問題得以解決,培養(yǎng)了解決問題的能力,查閱資料是很好的手段,在今后的學(xué)習(xí)過程中應(yīng)該繼續(xù)發(fā)揚(yáng)這些能力。數(shù)據(jù)庫(kù)的學(xué)習(xí)是在學(xué)習(xí)與探索中度過的,短暫的課程時(shí)間的學(xué)習(xí)是結(jié)束了,但其中學(xué)到了許多知識(shí),也有諸多的問題需要今后去解決,學(xué)習(xí)一門課程,學(xué)到的是如何學(xué)會(huì),而不是隨隨便便的學(xué)完,在今后還要自己強(qiáng)化各方面的知識(shí),真正學(xué)以致用。通過這次的學(xué)習(xí),我了解了數(shù)據(jù)庫(kù)的概念與重要性,還有今后的發(fā)展方向
97、,明白數(shù)據(jù)庫(kù)的應(yīng)用是廣泛的,不可小覷,在今后應(yīng)該再進(jìn)行加強(qiáng)學(xué)習(xí)。 </p><p><b> 第七章參考文獻(xiàn)</b></p><p> [1] 蘇金明,周建斌. 用VB.NET和VC#.NET開發(fā)交互式CAD系統(tǒng)[M]. 北京:電子工業(yè)出版社,2004</p><p> [2] 普悠瑪. VB.NET程序設(shè)計(jì)示例導(dǎo)學(xué)[M]. 北京:
98、科海電子出版社,2003</p><p> [3] 李萬紅,段恒勇. VB.NET實(shí)用培訓(xùn)教程[M]. 北京:清華大學(xué)出版社,2002</p><p> [4] 李萬紅,梁靚. VB.NET程序設(shè)計(jì)入門[M]. 北京:清華大學(xué)出版社,2002</p><p> [5] 劉斌文. 精通Visual Basic.NET中文版[M]. 北京:機(jī)械工業(yè)出版
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 選修課管理系統(tǒng)文檔(數(shù)據(jù)庫(kù)課程設(shè)計(jì))
- 設(shè)計(jì)學(xué)生選修課程系統(tǒng)課程設(shè)計(jì)--設(shè)計(jì)學(xué)生選修課程系統(tǒng)
- 課程設(shè)計(jì)報(bào)告--選修課程管理
- 課程設(shè)計(jì)---學(xué)生選修課管理系統(tǒng)
- 課程設(shè)計(jì)---學(xué)生選修課程系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)-----學(xué)生選修課程系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)報(bào)告---學(xué)生選修課程系統(tǒng)設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--學(xué)生課程數(shù)據(jù)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)
- 課程設(shè)計(jì)報(bào)告---學(xué)生選修課系統(tǒng)設(shè)計(jì)
- c語言課程設(shè)計(jì)報(bào)告--學(xué)生選修課程管理系統(tǒng)
- c語言學(xué)生選修課程系統(tǒng)設(shè)計(jì)--學(xué)生選修課程系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)---倉(cāng)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)
- c++畢業(yè)課程設(shè)計(jì)--學(xué)生選修課程系統(tǒng)設(shè)計(jì)
- c++課程設(shè)計(jì)報(bào)告--學(xué)生選修課程系統(tǒng)設(shè)計(jì)
- c語言課程設(shè)計(jì)報(bào)告—學(xué)生選修課程系統(tǒng)設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)-酒店管理系統(tǒng)課程設(shè)計(jì)
- c語言課程設(shè)計(jì)--學(xué)生選修課系統(tǒng)設(shè)計(jì)
- c語言課程設(shè)計(jì)--學(xué)生選修課系統(tǒng)
- 課程設(shè)計(jì)報(bào)告---學(xué)生選修課系統(tǒng)設(shè)計(jì).doc
- c語言課程設(shè)計(jì)-學(xué)生選修課系統(tǒng)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論