版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 《數(shù)據(jù)庫系統(tǒng)》</b></p><p><b> 課程設(shè)計</b></p><p> 課程設(shè)計題目: 教學(xué)管理系統(tǒng) .</p><p><b> 指導(dǎo)教師:</b></p><p><b> 學(xué)生院系:</b
2、></p><p><b> 學(xué)生班級:</b></p><p><b> 學(xué)生姓名: </b></p><p><b> 學(xué)生學(xué)號: </b></p><p><b> 目錄</b></p><p><b>
3、; 一、任務(wù)書1</b></p><p> 二、相關(guān)技術(shù)與環(huán)境介紹(分析)3</p><p><b> 三、需求分析4</b></p><p> 四、概念結(jié)構(gòu)設(shè)計6</p><p> 五、邏輯結(jié)構(gòu)設(shè)計7</p><p> 六、數(shù)據(jù)庫物理設(shè)計8<
4、/p><p> 七、數(shù)據(jù)庫實(shí)施8</p><p> 八、系統(tǒng)測試方案和測試報告10</p><p> 九、系統(tǒng)的主要功能和使用說明10</p><p> 十、系統(tǒng)安裝說明19</p><p> 十一、課程設(shè)計心得19</p><p><b> 十二、附錄
5、19</b></p><p><b> 任務(wù)書</b></p><p> 1.課程設(shè)計的題目與內(nèi)容</p><p><b> 教學(xué)管理系統(tǒng)</b></p><p><b> 【1】信息需求:</b></p><p> 學(xué)生信息:學(xué)號
6、、姓名、班級編號、性別、年級、政治面貌編號、民族編號、籍貫編號、身份證號、學(xué)籍編號;</p><p> 班級信息:班級編號、年級、班級名稱、班級簡稱、人數(shù)、班主任;</p><p> 課程信息:課程編號、課程名稱、課程簡稱、拼音碼、本學(xué)期課程、教師、開課系別、學(xué)分;</p><p> 成績信息:編號、學(xué)號、課程編號、成績、考試次數(shù)、是否補(bǔ)修、是否重考、是否已確
7、定成績。</p><p><b> 【2】處理需求:</b></p><p> (1) 學(xué)生基本信息管理</p><p><b> 學(xué)生信息錄入;</b></p><p> 學(xué)生信息查詢:按學(xué)號或姓名查詢出指定學(xué)生的相關(guān)學(xué)籍信息</p><p> 學(xué)生信息修改:按
8、學(xué)號或姓名查詢出指定學(xué)生的信息并做信息修改;</p><p> 或者通過直接點(diǎn)擊學(xué)生信息進(jìn)行修改。</p><p> (2) 班級信息管理:對班級的基本信息輸入、修改、刪除</p><p> (3) 課程信息管理:課程信息的輸入、修改、刪除</p><p> (4) 學(xué)生成績信息管理:成績信息的輸入、修改、刪除</p>
9、;<p> (6) 學(xué)生成績統(tǒng)計管理</p><p><b> 統(tǒng)計不合格人數(shù)</b></p><p> 統(tǒng)計學(xué)生考試成績總分</p><p> 統(tǒng)計某一課程的最高分、平均分。</p><p><b> 信息查詢</b></p><p> 學(xué)生信息
10、查詢:按學(xué)號或姓名查詢出指定學(xué)生的相關(guān)學(xué)籍信息</p><p><b> 學(xué)生成績查詢</b></p><p><b> (8) 統(tǒng)計報表</b></p><p> 成績登記表,內(nèi)容包括課程基本信息(課程號、課程名稱、任課教師號、學(xué)時、學(xué)分、上課時間、上課地點(diǎn)、考試時間),每個學(xué)生的平時成績(空格)、考試成績(空格
11、)和總評成績(空格),按學(xué)號排序:</p><p> 順序輸出所有課程的成績登記表。</p><p> 1.設(shè)計分工情況:略</p><p> 相關(guān)技術(shù)與環(huán)境介紹(分析)</p><p> 對使用的RDBMS和應(yīng)用開發(fā)工具作簡單的介紹,及運(yùn)行環(huán)境介紹。</p><p> 2. 1.使用的RDBMS:SQLSe
12、rver2012數(shù)據(jù)庫</p><p> SQL Server是由Microsoft開發(fā)和推廣的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(DBMS),它</p><p> 最初是由Microsoft、Sybase和Ashton-Tate三家公司共同開發(fā)的,并于1988年推出了第一個OS/2版本。Microsoft SQL Server近年來不斷更新版本,1996年,Microsoft 推出了SQL Serv
13、er 6.5版本;1998年,SQL Server 7.0版本和用戶見面;SQL Server 2000是Microsoft公司于2000年推出,目前最新版本是2015年份推出的SQL SERVER 2015。</p><p> SQL Server 2012具備很強(qiáng)的可伸縮性、更加可靠以及前所未有的高性能;而Power View為用戶對數(shù)據(jù)的轉(zhuǎn)換和勘探提供強(qiáng)大的交互操作能力,并協(xié)助做出正確的決策。增加Powe
14、r View數(shù)據(jù)查找工具和數(shù)據(jù)質(zhì)量服務(wù),企業(yè)版本則提高安全性可用性,以及從大數(shù)據(jù)到StreamInsight復(fù)雜事件處理,再到新的可視化數(shù)據(jù)和分析工具等,都將成為SQL Server 2012最終版本的一部分。</p><p> 2. 2.應(yīng)用開發(fā)工具:C++ Builder </p><p> C++Builder是由Borland公司推出的一款可視化集成開發(fā)工具。C++ Build
15、er</p><p> 具有快速的可視化開發(fā)環(huán)境:只要簡單地把控件(Component)拖到窗體(Form)上,定義一下它的屬性,設(shè)置一下它的外觀,就可以快速地建立應(yīng)用程序界面;C++ Builder內(nèi)置了100多個完全封裝了Windows公用特性且具有完全可擴(kuò)展性(包括全面支持ActiveX控件)的可重用控件;C++ Builder具有一個專業(yè)C++開發(fā)環(huán)境所能提供的全部功能:快速、高效、靈活的編譯器優(yōu)化,命
16、令行工具等。它實(shí)現(xiàn)了可視化的編程環(huán)境和功能強(qiáng)大的編程語言(C++)的完美結(jié)合。</p><p> C++ Builder可以編譯所有符合ANSI/ISO標(biāo)準(zhǔn)的原代碼,支持最新ANSI </p><p> C++/C語言特征:模板(Templates)、異常(Exceptions)、運(yùn)行類型信息(Runtime Type Information)、Namespaces(命名空間)等,另外
17、它還可以使用標(biāo)準(zhǔn)C++庫且支持標(biāo)準(zhǔn)模板庫(STL),以前的所有C++/C原代碼可以不經(jīng)過修改,直接移植到C++ Builder環(huán)境下來。C++ Builder完全支持32位長文件名、多線程程序設(shè)計,且允許程序員直接調(diào)用任何Win95和NT API函數(shù)。</p><p> 2. 3.運(yùn)行環(huán)鏡:C++ Builder</p><p> C++ Builder集成開發(fā)環(huán)境包含可視化窗體設(shè)計器
18、,對象觀察器、組件面板、</p><p> 工程治理器、源代碼編輯器、調(diào)試程序以及安裝工具等。</p><p><b> 需求分析</b></p><p> 數(shù)據(jù)字典(包括數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲和數(shù)據(jù)處理,參考數(shù)據(jù)庫教材和軟件工程教材)和數(shù)據(jù)流圖(參考軟件工程教材);</p><p> 3. 1.此系
19、統(tǒng)中的部分參數(shù)名詞解釋(數(shù)據(jù)項(xiàng)):</p><p> 3. 1.1.系統(tǒng)數(shù)據(jù)表及其用途:</p><p> 3. 1.2.學(xué)生信息表:</p><p> 3. 1.3.班級信息:</p><p> 3. 1.4.課程信息:</p><p> 3. 1.5.成績信息:</p><p>&
20、lt;b> 3. 2.數(shù)據(jù)流圖</b></p><p> 圖3-1 系統(tǒng)功能數(shù)據(jù)流圖</p><p> 3. 3.安全性和完整性要求</p><p> 隨著這些年電腦計算機(jī)的速度質(zhì)的提高,成本的下降,IT互聯(lián)網(wǎng)大眾趨勢的發(fā)展。我們使用電腦的高效率才處理數(shù)據(jù)信息成為可能。 學(xué)生學(xué)籍管理系統(tǒng)的出現(xiàn),正是管理人員與信息數(shù)據(jù),計算機(jī)的進(jìn)入互動時代的
21、體現(xiàn)。友好的人機(jī)交互模式,清晰簡明的圖形界面,高效安全的操作使得我們對成千上萬的信息的管理得心應(yīng)手。</p><p> 學(xué)生學(xué)籍管理系統(tǒng),以SQL數(shù)據(jù)庫作為后臺信息存儲,以C++ Builder作為前臺系統(tǒng)的語言。提供了對學(xué)生信息添加,查詢,修改,刪除的功能。實(shí)現(xiàn)了最基本的信息管理。同時SQL Server 2012具備很強(qiáng)的可伸縮性、更加可靠以及前所未有的高性能;而Power View為用戶對數(shù)據(jù)的轉(zhuǎn)換和勘探
22、提供強(qiáng)大的交互操作能力,并協(xié)助做出正確的決策。在完整性跟安全性上存在很強(qiáng)的優(yōu)越性。</p><p><b> 概念結(jié)構(gòu)設(shè)計</b></p><p><b> E-R圖。</b></p><p> 圖4-1 詳細(xì)介紹的功能模塊</p><p> 圖4-2 系統(tǒng)流程E-R圖</p>
23、<p><b> 邏輯結(jié)構(gòu)設(shè)計</b></p><p> 概念結(jié)構(gòu)設(shè)計所得的E-R模型是對用戶需求的一種抽象的表達(dá)形式,它獨(dú)立于任何一種具體的數(shù)據(jù)模型,因而也不能為任何一個具體的DBMS所支持。為了能夠建立起最終的物理系統(tǒng),還需要將概念結(jié)構(gòu)進(jìn)一步轉(zhuǎn)化為某一DBMS所支持的數(shù)據(jù)模型,然后根據(jù)邏輯設(shè)計的準(zhǔn)則、數(shù)據(jù)的語義約束、規(guī)范化理論等對數(shù)據(jù)模型進(jìn)行適當(dāng)?shù)恼{(diào)整和優(yōu)化,形成合理的全
24、局邏輯結(jié)構(gòu),并設(shè)計出用戶子模式這就是數(shù)據(jù)庫邏輯設(shè)計所要完成的任務(wù)。</p><p> 數(shù)據(jù)庫邏輯結(jié)構(gòu)的設(shè)計分為兩個步驟:首先將概念設(shè)計所得的E-R圖轉(zhuǎn)換為關(guān)系模型;然后對關(guān)系模型進(jìn)行優(yōu)化。關(guān)系模型是由一組關(guān)系(二維表)的結(jié)合,而E-R模型則是由實(shí)體、實(shí)體的屬性、實(shí)體間的關(guān)系三個要素組成。所以要將E-R模型轉(zhuǎn)換為關(guān)系模型,就是將實(shí)體、屬性和聯(lián)系都要轉(zhuǎn)換為相應(yīng)的關(guān)系模型。</p><p>&
25、lt;b> 數(shù)據(jù)庫物理設(shè)計</b></p><p> 數(shù)據(jù)庫在物理上的存儲結(jié)構(gòu)與存儲方法稱為數(shù)據(jù)庫的物理結(jié)構(gòu),它依賴于選定的數(shù)據(jù)庫管理系統(tǒng)。為一個給定的邏輯數(shù)據(jù)模型選取一個最適合應(yīng)用要求的物理結(jié)構(gòu)的過程,就是物理結(jié)構(gòu)設(shè)計。</p><p> 數(shù)據(jù)庫的物理結(jié)構(gòu)設(shè)計通常分為兩步:</p><p> ?。?)確定數(shù)據(jù)庫的物理結(jié)構(gòu),在關(guān)系數(shù)據(jù)庫中主要
26、指存取方法和存儲結(jié)構(gòu);</p><p> ?。?)對物理結(jié)構(gòu)進(jìn)行評價,評價的中的是時間和空間效率。</p><p><b> 數(shù)據(jù)庫實(shí)施</b></p><p> 創(chuàng)建數(shù)據(jù)庫及數(shù)據(jù)庫對象,實(shí)現(xiàn)及應(yīng)用程序編碼如下:</p><p> create table 班級信息(</p><p> 班
27、級編號 varchar(4) not null,</p><p> 年級 varchar(4) null,</p><p> 班級名稱 varchar(30) null,</p><p> 班級簡稱 varchar(16) null,</p><p> 人數(shù) numeric(3,0) null,</p><p>
28、; 班主任 varchar(8) null)</p><p> create table 學(xué)生信息(</p><p> 學(xué)號 varchar(14) not null,</p><p> 姓名 varchar(8) null,</p><p> 班級編號 varchar(14) null,</p><p>
29、 性別 varchar(2) null,</p><p> 年級 int null,</p><p> 政治面貌編號 varchar(2) null,</p><p> 民族編號 varchar(2) not null,</p><p> 籍貫編號 varchar(2) not null,</p><p>
30、身份證號 varchar(15) null,</p><p> 學(xué)籍編號 varchar(2) not null)</p><p> create table 課程信息(</p><p> 課程編號 int not null,</p><p> 課程名稱 char(40) not null,</p><p>
31、 課程簡稱 char(40) not null,</p><p> 拼音碼 char(6) null,</p><p> 本學(xué)期課程 char(2) null,</p><p> 教師 char(10) null,</p><p> 開課系別 char(30) null,</p><p> 學(xué)分 int nu
32、ll</p><p><b> )</b></p><p> create table 成績表(</p><p> 編號 int not null,</p><p> 學(xué)號 varchar(14) not null,</p><p> 課程編號 int not null,</p&g
33、t;<p> 成績 int not null,</p><p> 是否補(bǔ)修 varchar(2) null,</p><p> 是否重考 varchar(2) null,</p><p> 是否已確定成績 varchar(2) null</p><p><b> )</b></p>
34、<p> INSERT INTO 成績表</p><p> values('1','14020301','1','90','null','null','null');</p><p> INSERT INTO 成績表</p><p>
35、 values('2','14020301','2','59','null','null','null');</p><p> INSERT INTO 成績表</p><p> values('3','14020301','3'
36、,'80','null','null','null');</p><p> INSERT INTO 成績表</p><p> values('4','14010302','1','91','null','null','n
37、ull');</p><p> INSERT INTO 成績表</p><p> values('5','14010302','2','80','null','null','null');</p><p> INSERT INTO 成績表&l
38、t;/p><p> values('6','14010302','3','80','null','null','null');</p><p> INSERT INTO 成績表</p><p> values('7','14030
39、203','2','60','是','是','是');</p><p> INSERT INTO 成績表</p><p> values('8','14030203','1','32','null','null&
40、#39;,'null');</p><p> INSERT INTO 成績表</p><p> values('9','14030203','3','72','null','null','null');</p><p> INSERT
41、 INTO 課程信息</p><p> values('1','數(shù)據(jù)結(jié)構(gòu)','數(shù)據(jù)結(jié)構(gòu)','sjjg','a','胡杏','信息與計算科學(xué)','3');</p><p> INSERT INTO 課程信息</p><p> value
42、s('2','數(shù)據(jù)庫系統(tǒng)概論','數(shù)據(jù)庫','sjk','a','劉緬芳','信息與計算科學(xué)','3');</p><p> INSERT INTO 課程信息</p><p> values('3','數(shù)值分析','數(shù)值
43、分析','szfx','a','譚敏','信息與計算科學(xué)','4');</p><p> INSERT INTO 學(xué)生信息</p><p> values('14010302','謝露','140103','男','2014
44、39;,'2','1','10','112233445567','2');</p><p> INSERT INTO 學(xué)生信息</p><p> values('14020301','路毅恒','140203','女','2014
45、9;,'1','1','4','112233445566','1');</p><p> INSERT INTO 學(xué)生信息</p><p> values('14030203','王五','140302','男','2015',
46、'2','2','6','223344556677','3');</p><p> INSERT INTO 班級信息</p><p> values('1','2014','信息與計算科學(xué)3班','信計3班','26','
47、;劉佩');</p><p> INSERT INTO 班級信息</p><p> values('2','2014','數(shù)學(xué)與計算數(shù)學(xué)3班','數(shù)學(xué)3班','28','張三');</p><p> ISERT INTO 班級信息</p>&l
48、t;p> values('3','2014','數(shù)學(xué)與應(yīng)用統(tǒng)計2班','統(tǒng)計2班','29','李四');</p><p> 系統(tǒng)測試方案和測試報告</p><p> 總體來講,我們每編寫一個模塊,就會進(jìn)行相應(yīng)的測試,當(dāng)當(dāng)前的所有功能測試完畢而且能正常運(yùn)行時,我們才繼續(xù)進(jìn)行下一模塊的
49、編寫。我們用到的測試方法大概有如下幾種:</p><p> 8. 1.1黑盒測試:</p><p> 黑盒測試又稱功能測試或者數(shù)據(jù)驅(qū)動測試。黑盒測試是根據(jù)軟件的規(guī)格對軟件進(jìn)行的測試,這類測試不考慮軟件內(nèi)部的運(yùn)作原理,因此軟件對用戶來說就像一個黑盒子。</p><p> 軟件測試人員以用戶的角度,通過各種輸入和觀察軟件的各種輸出結(jié)果來發(fā)現(xiàn)軟件存在的缺陷,而不關(guān)心
50、程序具體如何實(shí)現(xiàn)的一種軟件測試方法。釋);</p><p> 8. 1.2靜態(tài)測試:</p><p> 靜態(tài)測試指測試不運(yùn)行的部分,例如測試產(chǎn)品說明書,對此進(jìn)行檢查和審閱.。靜態(tài)方法是指不運(yùn)行被測程序本身,僅通過分析或檢查源程序的文法、結(jié)構(gòu)、過程、接口等來檢查程序的正確性。靜態(tài)方法通過程序靜態(tài)特性的分析,找出欠缺和可疑之處,例如不匹配的參數(shù)、不適當(dāng)?shù)难h(huán)嵌套和分支嵌套、不允許的遞歸、未
51、使用過的變量、空指針的引用和可疑的計算等。靜態(tài)測試結(jié)果可用于進(jìn)一步的查錯,并為測試用例選取提供指導(dǎo)</p><p> 8. 1.3動態(tài)測試:</p><p> 動態(tài)測試是指通過運(yùn)行軟件來檢驗(yàn)軟件的動態(tài)行為和運(yùn)行結(jié)果的正確性。 回歸測試: 回歸測試是指在發(fā)生修改之后重新測試先前的測試以保證修改的正確性。理論上,軟件產(chǎn)生新版本,都需要進(jìn)行回歸測試,驗(yàn)證以前發(fā)現(xiàn)和修復(fù)的錯誤是否在新軟件版本上
52、再次出現(xiàn)。</p><p> 根據(jù)修復(fù)好了的缺陷再重新進(jìn)行測試。回歸測試的目的在于驗(yàn)證以前出現(xiàn)過但已經(jīng)修復(fù)好的缺陷不再重新出現(xiàn)。一般指對某已知修正的缺陷再次圍繞它原來出現(xiàn)時的步驟重新測試。通常確定所需的再測試的范圍時是比較困難的,特別當(dāng)臨近產(chǎn)品發(fā)布日期時。因?yàn)闉榱诵拚橙毕輹r必需更改源代碼,因而就有可能影響這部分源代碼所控制的功能。所以在驗(yàn)證修好的缺陷時不僅要服從缺陷原來出現(xiàn)時的步驟重新測試,而且還要測試有可能
53、受影響的所有功能。</p><p> 8.1.4單元測試:</p><p> 單元測試是最微小規(guī)模的測試;以測試某個功能或代碼塊。典型地由程序員而非測試員來做,因?yàn)樗枰纼?nèi)部程序設(shè)計和編碼的細(xì)節(jié)知識。這個工作不容易做好,除非應(yīng)用系統(tǒng)有一個設(shè)計很好的體系結(jié)構(gòu); 還可能需要開發(fā)測試驅(qū)動器模塊或測試套具。</p><p><b> 8.2 測試報告 &
54、lt;/b></p><p> 8.2.1 登錄界面測試報告 </p><p> 在對學(xué)生成績統(tǒng)計表測試結(jié)果運(yùn)行報告如下圖所示:</p><p> 系統(tǒng)的主要功能和使用說明</p><p> 我們采用BCB中的BDE功能與通過SQL Server2012建立的ODBC數(shù)據(jù)源建立連接,從而實(shí)現(xiàn)訪問數(shù)據(jù)庫的功能。其次,我們使用BCB
55、中“數(shù)據(jù)</p><p> 庫”菜單中的“窗體創(chuàng)建向?qū)А眮砩啥鄠€窗體。如下:</p><p> 1、首先,登錄功能:只有正確的賬戶和密碼才能登錄,保證數(shù)據(jù)的基本安全性。</p><p> 2、登錄界面,可視化操作界面從而方便操作。</p><p> 3、學(xué)生信息查詢與維護(hù)功能。包括查詢首記錄、上記錄、下記錄、尾記錄、新增、刪除(同時
56、會提示用戶再次確認(rèn))、編輯、完成、放棄、撤銷;根據(jù)學(xué)號或者姓名查詢,當(dāng)沒有符合條件的結(jié)果時,系統(tǒng)會返回空白,當(dāng)查詢條件為空時,系統(tǒng)會返回全部內(nèi)容。同時,界面下方還會顯示所選中記錄的各種信息。</p><p> 4、班級信息查詢與維護(hù)功能,和學(xué)生信息查詢與維護(hù)功能相似。包括查詢首記錄、上記錄、下記錄、尾記錄、新增、刪除(同時會提示用戶再次確認(rèn))、編輯、完成、放棄、撤銷;根據(jù)課程名稱號或課程簡稱名查詢,當(dāng)沒有符合條
57、件的結(jié)果時,系統(tǒng)會返回空白,當(dāng)查詢條件為空時,系統(tǒng)會返回全部內(nèi)容。同時,界面下方還會顯示所選中記錄的各種信息。</p><p> 5成績信息查詢與維護(hù)功能,和學(xué)生信息查詢與維護(hù)功能相似,包括查詢首記錄、上記錄、下記錄、尾記錄、新增、刪除(同時會提示用戶再次確認(rèn))、編輯、完成、放棄、撤銷;根據(jù)課程名稱號或課程簡稱名查詢,當(dāng)沒有符合條件的結(jié)果時,系統(tǒng)會返回空白,當(dāng)查詢條件為空時,系統(tǒng)會返回全部內(nèi)容。同時,界面下方還
58、會顯示所選中記錄的各種信息。同時同時嵌入式SOL語言實(shí)現(xiàn)統(tǒng)計各種數(shù)據(jù)的功能。如圖片的右方所示。</p><p><b> 系統(tǒng)安裝說明</b></p><p> 1、打開SQL sever,導(dǎo)入數(shù)據(jù)表腳本文件并重啟</p><p> 2、在安裝了SQL Sever的Windows平臺上即可運(yùn)行本系統(tǒng)</p><p>
59、; 3、輸入正確的數(shù)據(jù)庫訪問賬戶與密碼即可開始使用系統(tǒng)。</p><p><b> ?。ǔ跏冀缑妫?lt;/b></p><p><b> (登錄界面)</b></p><p><b> 課程設(shè)計心得</b></p><p> 通過此次課程設(shè)計,使我更加扎實(shí)的掌握了有關(guān)信息管
60、理系統(tǒng)方面的知識,在設(shè)計過程中雖然遇到了一些問題,但經(jīng)過一次又一次的思考,一遍又一遍的檢查終于找出了原因所在,也暴露出了前期我在這方面的知識欠缺和經(jīng)驗(yàn)不足。實(shí)踐出真知,通過親自動手制作,使我們掌握的知識不再是紙上談兵。 課程設(shè)計誠然是一門專業(yè)課,給我很多專業(yè)知識以及專業(yè)技能上的提升,同時又是一門講道課,一門辯思課,給了我許多道,給了我很多思,給了我莫大的空間。同時,設(shè)計讓我感觸很深。使我對抽象的理論有了具體的認(rèn)識。</p>
61、<p> 本次課程設(shè)計雖然很辛苦,實(shí)在是受益匪淺。本來這門課的知識學(xué)的就不夠扎實(shí),本次課程設(shè)計,在設(shè)計過程中碰到了很多問題,剛開始要設(shè)計的時候,還真不知道從哪里下手但最終在圖書、同學(xué)和老師的幫助下都得到了解決,讓我學(xué)會了好多書本上沒有的東西,通過本次課程設(shè)計我也能將課本上的知識融會貫通,起到了很好的輔助學(xué)習(xí)的效果,但是我發(fā)現(xiàn)我學(xué)到的知識比整整一個學(xué)期學(xué)到的都多。理論和實(shí)踐的相結(jié)合是學(xué)習(xí)最有效的方法。在設(shè)計的過程中發(fā)現(xiàn)了自
62、己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,通過這次課程設(shè)計之后,一定把以前所學(xué)過的知識重新溫故。 </p><p> 通過這次課程設(shè)計使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論.</p><p><b> 附錄</b></p><p>
63、; #include <vcl.h></p><p> #pragma hdrstop</p><p> #include<string.h></p><p> #include "Unit1.h"</p><p> #include "Unit2.h"</p&g
64、t;<p> #include "Unit3.h"</p><p> #include "Unit4.h"</p><p> #include "Unit5.h"</p><p> #include "db.cpp"</p><p> #p
65、ragma package(smart_init)</p><p> #pragma resource "*.dfm"</p><p> TForm1 *Form1;</p><p> __fastcall TForm1::TForm1(TComponent* Owner)</p><p> : TForm(Own
66、er)</p><p><b> {</b></p><p><b> }</b></p><p> void __fastcall TForm1::Button1Click(TObject *Sender)</p><p><b> {</b></p>
67、<p> Form2->Show();</p><p><b> }</b></p><p> //---------------------------------------------------------------------------</p><p> void __fastcall TForm1::Bu
68、tton2Click(TObject *Sender)</p><p><b> {</b></p><p> Form3->Show();</p><p><b> }</b></p><p> void __fastcall TForm1::Button3Click(TObject
69、 *Sender)</p><p><b> {</b></p><p> Form4->Show();</p><p><b> }</b></p><p> void __fastcall TForm1::Button4Click(TObject *Sender)</p>
70、;<p><b> {</b></p><p> Form5->Show(); </p><p><b> }</b></p><p> void __fastcall TForm1::N2Click(TObject *Sender)</p><p><b>
71、 {</b></p><p> Form1->Button1->Click();</p><p><b> }</b></p><p> void __fastcall TForm1::N6Click(TObject *Sender)</p><p><b> {</b&g
72、t;</p><p> Form1->Button2->Click();</p><p><b> }</b></p><p> void __fastcall TForm1::N4Click(TObject *Sender)</p><p><b> {</b></p&g
73、t;<p> Form1->Button4->Click();</p><p><b> }</b></p><p> void __fastcall TForm1::N5Click(TObject *Sender)</p><p><b> {</b></p><p&
74、gt; Form1->Close();</p><p> Form2->Close();</p><p> Form3->Close();</p><p> Form4->Close();</p><p> Form5->Close();</p><p> }void __fa
75、stcall TForm1::N3Click(TObject *Sender)</p><p><b> {</b></p><p> Form1->Button3->Click();</p><p><b> }</b></p><p> void __fastcall TFo
76、rm1::Label1Click(TObject *Sender)</p><p><b> {</b></p><p> Form1->Button1->Click(); </p><p><b> }</b></p><p> void __fastcall T
77、Form1::Label2Click(TObject *Sender)</p><p><b> {</b></p><p> Form1->Button2->Click(); </p><p><b> }</b></p><p> void __fastcall
78、 TForm1::Label3Click(TObject *Sender)</p><p><b> {</b></p><p> Form1->Button3->Click(); </p><p><b> }</b></p><p> void __fastca
79、ll TForm1::Label4Click(TObject *Sender)</p><p><b> {</b></p><p> Form1->Button4->Click();</p><p><b> }</b></p><p> void __fastcall TFo
80、rm1::FormCreate(TObject *Sender)</p><p><b> {</b></p><p> Form1->Button4->Visible=false;</p><p> Form1->Button3->Visible=false;</p><p> Form
81、1->Button2->Visible=false;</p><p> Form1->Button1->Visible=false;</p><p><b> }</b></p><p> void __fastcall TForm1::N1Click(TObject *Sender)</p><
82、;p><b> {</b></p><p> ShowMessage("待開發(fā)..."); </p><p><b> }</b></p><p> void __fastcall TForm1::Image1Click(TObject *Sender)</p>
83、<p><b> {</b></p><p><b> }</b></p><p> #include <vcl.h></p><p> #pragma hdrstop</p><p> #include<string.h></p><
84、;p> #include"db.cpp"</p><p> #include "Unit1.h"</p><p> #include "Unit5.h"</p><p> #pragma resource "*.dfm"</p><p> TFor
85、m5 *Form5;</p><p> __fastcall TForm5::TForm5(TComponent *Owner)</p><p> : TForm(Owner)</p><p><b> {</b></p><p><b> }</b></p><p>
86、; void __fastcall TForm5::FormCreate(TObject *Sender)</p><p><b> {</b></p><p> Table1->Open();</p><p> Label9->Caption="首記錄 ";</p><p>
87、 Label10->Caption="上記錄 ";</p><p> Label11->Caption="下記錄 ";</p><p> Label12->Caption="尾記錄 ";</p><p> Label13->Caption="新增 "
88、;</p><p> Label14->Caption="刪除 ";</p><p> Label15->Caption="編輯 ";</p><p> Label16->Caption="完成 ";</p><p> Label17->Capt
89、ion="放棄 ";</p><p> Label18->Caption="撤銷 ";</p><p> DBEdit1->Text="";</p><p> DBEdit2->Text="";</p><p> DBEdit3-&g
90、t;Text="";</p><p> DBEdit4->Text="";</p><p> DBEdit5->Text="";</p><p> DBEdit6->Text="";</p><p> DBEdit7->Text=&
91、quot;";</p><p><b> }</b></p><p> void __fastcall TForm5::Button1Click(TObject *Sender)</p><p><b> {</b></p><p> Table1->Filtered=fal
92、se;</p><p> if(Edit1->Text.Length()==0)</p><p> Table1->Filter="";</p><p><b> else</b></p><p> Table1->Filter="學(xué)號='"+Ed
93、it1->Text+"*'";</p><p> Table1->Filtered=true;</p><p> }void __fastcall TForm5::Button2Click(TObject *Sender)</p><p><b> {</b></p><p>
94、; Table1->Filtered=false;</p><p> if(Edit2->Text.Length()==0)</p><p> Table1->Filter="";</p><p><b> else</b></p><p> Table1->Filt
95、er="課程編號='"+Edit2->Text+"'";</p><p> Table1->Filtered=true;</p><p><b> }</b></p><p> void __fastcall TForm5::Button3Click(TObject *S
96、ender)</p><p><b> {</b></p><p> String str;</p><p> Query1->Close();</p><p> Query1->SQL->Add("Select Count(distinct 學(xué)號) as temp from 成績表
97、 where 成績<60 ");</p><p> Query1->Open() ;</p><p> str=Query1->FieldByName("temp")->AsString;</p><p> Edit3->Text=str;</p><p><b>
98、 }</b></p><p> void __fastcall TForm5::Button4Click(TObject *Sender)</p><p><b> {</b></p><p> String str;</p><p> Query1->SQL->Clear();</
99、p><p> Query1->SQL->Add("Select sum(成績) as temp from 成績表 ");</p><p> Query1->Open() ;</p><p> str=Query1->FieldByName("temp")->AsString;</p>
100、;<p> Edit4->Text=str;</p><p><b> }</b></p><p> void __fastcall TForm5::Button5Click(TObject *Sender)</p><p><b> {</b></p><p> St
101、ring str;</p><p> Query1->SQL->Clear();</p><p> Query1->SQL->Add("Select avg(成績) as temp from 成績表 ");</p><p> Query1->Open() ;</p><p> str
102、=Query1->FieldByName("temp")->AsString;</p><p> Edit5->Text=str;</p><p><b> }</b></p><p> void __fastcall TForm5::Button6Click(TObject *Sender)<
103、/p><p><b> {</b></p><p> String str;</p><p> Query1->SQL->Clear();</p><p> Query1->SQL->Add("Select max(成績) as temp from 成績表 where 課程編號=&
104、#39;1' ");</p><p> Query1->Open() ;</p><p> str=Query1->FieldByName("temp")->AsString;</p><p> Edit6->Text=str;</p><p><b> }<
105、;/b></p><p> void __fastcall TForm5::Button8Click(TObject *Sender)</p><p><b> {</b></p><p> String str;</p><p> Query1->SQL->Clear();</p>
106、<p> Query1->SQL->Add("Select avg(成績) as temp from 成績表 where 課程編號='2' ");</p><p> Query1->Open() ;</p><p> str=Query1->FieldByName("temp")->
107、AsString;</p><p> Edit8->Text=str;</p><p><b> }</b></p><p> void __fastcall TForm5::Button7Click(TObject *Sender)</p><p><b> {</b></p&
108、gt;<p> String str;</p><p> Query1->SQL->Clear();</p><p> Query1->SQL->Add("Select avg(成績) as temp from 成績表 where 課程編號='1' ");</p><p> Quer
109、y1->Open() ;</p><p> str=Query1->FieldByName("temp")->AsString;</p><p> Edit7->Text=str;</p><p><b> }</b></p><p> #include <vcl
110、.h></p><p> #pragma hdrstop</p><p> #include "Unit4.h"</p><p> #pragma resource "*.dfm"</p><p> TForm4 *Form4;</p><p> __fastca
111、ll TForm4::TForm4(TComponent *Owner)</p><p> : TForm(Owner)</p><p><b> {</b></p><p><b> }</b></p><p> void __fastcall TForm4::FormCreate(TOb
112、ject *Sender)</p><p><b> {</b></p><p> Table1->Open();</p><p> Label8->Caption="首記錄 ";</p><p> Label9->Caption="上記錄 ";<
113、;/p><p> Label10->Caption="下記錄 ";</p><p> Label11->Caption="尾記錄 ";</p><p> Label12->Caption="新增 ";</p><p> Label13->Caption
114、="刪除 ";</p><p> Label14->Caption="編輯 ";</p><p> Label15->Caption="完成 ";</p><p> Label16->Caption="放棄 ";</p><p>
115、Label18->Caption="撤銷 ";</p><p> DBEdit1->Text="";</p><p> DBEdit2->Text="";</p><p> DBEdit3->Text="";</p><p>
116、DBEdit4->Text="";</p><p> DBEdit5->Text="";</p><p> DBEdit6->Text="";</p><p><b> }</b></p><p> void __fastcall TF
117、orm4::Button1Click(TObject *Sender)</p><p><b> {</b></p><p> Table1->Filtered=false;</p><p> if(Edit1->Text.Length()==0)</p><p> Table1->Filter
118、="";</p><p><b> else</b></p><p> Table1->Filter="班級簡稱='"+Edit1->Text+"*'";</p><p> Table1->Filtered=true;</p>&l
119、t;p><b> }</b></p><p> void __fastcall TForm4::Button2Click(TObject *Sender)</p><p><b> {</b></p><p> Table1->Filtered=false;</p><p>
120、if(Edit2->Text.Length()==0)</p><p> Table1->Filter="";</p><p><b> else</b></p><p> Table1->Filter="班級編號='"+Edit2->Text+"'
121、";</p><p> Table1->Filtered=true;</p><p><b> }</b></p><p> #include <vcl.h></p><p> #pragma hdrstop</p><p> #include "U
122、nit3.h"</p><p> #pragma resource "*.dfm"</p><p> TForm3 *Form3;</p><p> __fastcall TForm3::TForm3(TComponent *Owner)</p><p> : TForm(Owner)</p>
123、<p><b> {</b></p><p><b> }</b></p><p> void __fastcall TForm3::FormCreate(TObject *Sender)</p><p><b> {</b></p><p> Tabl
124、e1->Open();</p><p> Label10->Caption="首記錄 ";</p><p> Label11->Caption="上記錄 ";</p><p> Label12->Caption="下記錄 ";</p><p>
125、Label13->Caption="尾記錄 ";</p><p> Label14->Caption="新增 ";</p><p> Label15->Caption="刪除 ";</p><p> Label16->Caption="編輯 ";&l
126、t;/p><p> Label17->Caption="完成 ";</p><p> Label18->Caption="放棄 ";</p><p> Label19->Caption="撤銷 ";</p><p> DBEdit1->Text=&q
127、uot;";</p><p> DBEdit2->Text="";</p><p> DBEdit3->Text="";</p><p> DBEdit4->Text="";</p><p> DBEdit5->Text="&quo
128、t;;</p><p> DBEdit6->Text="";</p><p> DBEdit7->Text="";</p><p> DBEdit8->Text="";</p><p><b> }</b></p><
129、;p> void __fastcall TForm3::Button1Click(TObject *Sender)</p><p><b> {</b></p><p> Table1->Filtered=false;</p><p> if(Edit1->Text.Length()==0)</p>&l
130、t;p> Table1->Filter="";</p><p><b> else</b></p><p> Table1->Filter="課程名稱='"+Edit1->Text+"*'";</p><p> Table1->Fi
131、ltered=true;</p><p><b> }</b></p><p> void __fastcall TForm3::Button2Click(TObject *Sender)</p><p><b> {</b></p><p> Table1->Filtered=fal
132、se;</p><p> if(Edit2->Text.Length()==0)</p><p> Table1->Filter="";</p><p><b> else</b></p><p> Table1->Filter="課程簡稱='"+
133、Edit2->Text+"*'";</p><p> Table1->Filtered=true;</p><p><b> }</b></p><p> void __fastcall TForm3::DBEdit5Change(TObject *Sender)</p><p&
134、gt;<b> {</b></p><p> if(DBEdit5->Text=="a")</p><p><b> {</b></p><p> RadioButton1->Checked=true;</p><p><b> }</b&g
135、t;</p><p><b> else</b></p><p> RadioButton1->Checked=false;</p><p><b> }</b></p><p> #include <vcl.h></p><p> #pragma
136、 hdrstop</p><p> #include"db.cpp"</p><p> #include "Unit2.h"</p><p> #include "Unit1.h"</p><p> #pragma resource "*.dfm"<
137、/p><p> TForm2 *Form2;</p><p> //----------------------------------------------------------------------------</p><p> __fastcall TForm2::TForm2(TComponent *Owner)</p><p&g
138、t; : TForm(Owner)</p><p><b> {</b></p><p><b> }</b></p><p> //----------------------------------------------------------------------------</p><
139、;p> void __fastcall TForm2::FormCreate(TObject *Sender)</p><p><b> {</b></p><p> Table1->Open();</p><p> DBEdit1->Text="";</p><p> D
140、BEdit2->Text="";</p><p> DBEdit3->Text="";</p><p> DBEdit4->Text="";</p><p> DBEdit5->Text="";</p><p> DBEdit6-&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫課程設(shè)計報告--學(xué)生信息管理系統(tǒng)
- 學(xué)生信息管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計報告
- 數(shù)據(jù)庫系統(tǒng)課程設(shè)計---工資信息管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--學(xué)生信息管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計---學(xué)生信息管理系統(tǒng)
- 數(shù)據(jù)庫系統(tǒng)課程設(shè)計--工資信息管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計學(xué)生信息管理系統(tǒng)
- 學(xué)生信息管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計
- 數(shù)據(jù)庫課程設(shè)計--學(xué)生信息管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計學(xué)生信息管理系統(tǒng)
- sql數(shù)據(jù)庫(學(xué)生信息管理系統(tǒng))課程設(shè)計報告
- 數(shù)據(jù)庫課程設(shè)計---學(xué)生信息管理系統(tǒng)設(shè)計
- 學(xué)生信息管理數(shù)據(jù)庫課程設(shè)計
- 數(shù)據(jù)庫原理b課程設(shè)計--數(shù)據(jù)庫學(xué)生信息管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計--學(xué)生信息管理系統(tǒng) (2)
- 數(shù)據(jù)庫課程設(shè)計--學(xué)生選課信息管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計---學(xué)生學(xué)籍信息管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計報告書(學(xué)生信息管理系統(tǒng))
- 數(shù)據(jù)庫課程設(shè)計之學(xué)生信息管理系統(tǒng)
- 數(shù)據(jù)庫課程設(shè)計報告-宿舍信息管理系統(tǒng)
評論
0/150
提交評論