版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 數(shù)據(jù)庫(kù)實(shí)驗(yàn)報(bào)告</b></p><p><b> 一 實(shí)驗(yàn)名稱(chēng)</b></p><p><b> 學(xué)生學(xué)籍管理系統(tǒng)</b></p><p><b> 二 實(shí)驗(yàn)?zāi)康?lt;/b></p><p> 數(shù)據(jù)庫(kù)課程設(shè)計(jì)實(shí)驗(yàn)是一門(mén)獨(dú)立
2、開(kāi)設(shè)的實(shí)驗(yàn)課程。數(shù)據(jù)庫(kù)課程設(shè)計(jì)實(shí)驗(yàn)對(duì)于鞏固數(shù)據(jù)庫(kù)知識(shí),加強(qiáng)學(xué)生的實(shí)際動(dòng)手能力和提高學(xué)生綜合素質(zhì)十分必要。本課程設(shè)計(jì)實(shí)驗(yàn)主要數(shù)據(jù)庫(kù)設(shè)計(jì),進(jìn)行數(shù)據(jù)庫(kù)編程實(shí)踐。通過(guò)本實(shí)驗(yàn),使學(xué)生了解數(shù)據(jù)庫(kù)系統(tǒng)的理論,掌握數(shù)據(jù)庫(kù)的設(shè)計(jì)方法及數(shù)據(jù)庫(kù)的運(yùn)用和開(kāi)發(fā)技術(shù)。</p><p> 1. 掌握數(shù)據(jù)庫(kù)設(shè)計(jì)的基本方法,熟悉數(shù)據(jù)庫(kù)設(shè)計(jì)的步驟;</p><p> 2. 通過(guò)設(shè)計(jì)數(shù)據(jù)庫(kù)系統(tǒng)應(yīng)用課題,進(jìn)一步熟悉數(shù)據(jù)庫(kù)管理
3、系統(tǒng)的操作技術(shù),提高動(dòng)手能力,提高分析問(wèn)題和解決問(wèn)題的能力;</p><p> 要求學(xué)生根據(jù)所學(xué)的數(shù)據(jù)庫(kù)原理與程序設(shè)計(jì)的知識(shí),能夠針對(duì)一個(gè)小型的數(shù)據(jù)庫(kù)管理系統(tǒng),進(jìn)行系統(tǒng)的需求分析,系統(tǒng)設(shè)計(jì),數(shù)據(jù)庫(kù)設(shè)計(jì),編碼等,完成題目要求的功能,從而達(dá)到掌握開(kāi)發(fā)一個(gè)小型數(shù)據(jù)庫(kù)的目的.</p><p><b> 三 實(shí)驗(yàn)簡(jiǎn)述</b></p><p> 隨著
4、社會(huì)的發(fā)展,基本上所有的具有一定數(shù)量數(shù)據(jù)的企事業(yè)單位或機(jī)關(guān)部門(mén)都開(kāi)始使用計(jì)算機(jī)數(shù)據(jù)庫(kù)來(lái)做管理。在各大中小學(xué)校,用計(jì)算機(jī)管理學(xué)校的信息已經(jīng)越來(lái)越普遍了。用計(jì)算機(jī)不但可以提高工作效率,而且還節(jié)省了許多人力物力,增強(qiáng)了學(xué)校資料的安全性,提高了學(xué)校的管理能力,為此,用計(jì)算機(jī)來(lái)管理學(xué)校的信息,是非常必要的。該課程設(shè)計(jì)要求設(shè)計(jì)一個(gè)學(xué)籍管理的數(shù)據(jù)庫(kù)系統(tǒng),數(shù)據(jù)庫(kù)中包含學(xué)生的基本信息,學(xué)校院系信息,班級(jí)信息以及課程設(shè)置的信息。同時(shí)還要設(shè)計(jì)它們之間的關(guān)系,
5、如學(xué)生與課程關(guān)系和學(xué)生的成績(jī)等,最后還要對(duì)一些數(shù)據(jù)進(jìn)行查詢(xún),如查詢(xún)學(xué)生成績(jī)的各種集合等。而本系統(tǒng)的開(kāi)發(fā),為學(xué)校的工作效率帶來(lái)了一個(gè)質(zhì)的飛躍,為此主要表現(xiàn)有以下幾個(gè)方面:</p><p> 第一,本系統(tǒng)的運(yùn)行可以代替人工進(jìn)行許多繁雜的勞動(dòng);第二,本系統(tǒng)的運(yùn)行可以節(jié)省許多資源;第三,本系統(tǒng)的運(yùn)行可以大大的提高學(xué)校的工作效率;第四,本系統(tǒng)可以使敏感文檔更加安全,等等。我們通過(guò)該課程設(shè)計(jì),應(yīng)該達(dá)到的目的是把數(shù)據(jù)庫(kù)理論知
6、識(shí)更加的鞏固加深,加強(qiáng)動(dòng)手能力與實(shí)踐能力,學(xué)以致用,與現(xiàn)實(shí)生活中的應(yīng)用充分的結(jié)合起來(lái)。</p><p><b> 四 系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)</b></p><p><b> 1.數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p> (1)概念結(jié)構(gòu)設(shè)計(jì)(E-R圖)</p><p> ?、?邏輯結(jié)構(gòu)設(shè)計(jì),完整性約束設(shè)計(jì)
7、與實(shí)現(xiàn)</p><p> 學(xué)生信息:(學(xué)號(hào),姓名,入學(xué)時(shí)間,班號(hào),性別,聯(lián)系電話,出生日期,專(zhuān)業(yè),狀態(tài))</p><p> 課程信息:(課程號(hào),課程名,課程類(lèi)型,學(xué)分)</p><p> 班級(jí)信息:(班號(hào),年級(jí),專(zhuān)業(yè),班主任)</p><p> 選課表:(學(xué)號(hào),姓名,課程號(hào),課程名)</p><p> 教學(xué)計(jì)
8、劃:(年級(jí),專(zhuān)業(yè),學(xué)期,課程名)</p><p> ?、?整理《數(shù)據(jù)庫(kù)表目錄》和《數(shù)據(jù)庫(kù)結(jié)構(gòu)表》</p><p> 數(shù)據(jù)庫(kù)表/視圖一覽表</p><p> 表3.1 學(xué)生信息表</p><p> 表3.2 課程信息表</p><p><b> 表3.3 班級(jí)信息</b></p>
9、<p><b> 表3.4 選課表</b></p><p> 表3.5 成績(jī)信息表</p><p> 表3.6 教學(xué)計(jì)劃表</p><p><b> 2. 系統(tǒng)設(shè)計(jì)</b></p><p> (1)程序功能模塊圖</p><p> ?。?)功能描述,包
10、括查詢(xún)內(nèi)容</p><p> ?實(shí)現(xiàn)學(xué)生基本情況的錄入,修改,刪除等基本操作.</p><p> ?對(duì)學(xué)生基本信息提供靈活的查詢(xún)方式.</p><p> ?完成一個(gè)班級(jí)的學(xué)期選課功能.</p><p> ?實(shí)現(xiàn)學(xué)生成績(jī)的錄入,修改,刪除等基本操作.</p><p> ?能方便的對(duì)學(xué)生的各學(xué)期成績(jī)進(jìn)行
11、查詢(xún).</p><p> ?具有成績(jī)統(tǒng)計(jì),排名等功能.</p><p> ?具有留級(jí),休學(xué)等特殊情況的處理功能.</p><p> ?能輸出常用的各種報(bào)表.</p><p> ?具有數(shù)據(jù)備份和數(shù)據(jù)恢復(fù)功能.</p><p> ?學(xué)生成績(jī)表的設(shè)計(jì),要考慮到不同年級(jí)的教學(xué)計(jì)劃的變化</p>
12、<p><b> 3. 系統(tǒng)實(shí)現(xiàn)</b></p><p> ⑴ 建立數(shù)據(jù)庫(kù)對(duì)象,查詢(xún)語(yǔ)句的全部SQL命令(存儲(chǔ)過(guò)程)</p><p> create table 學(xué)生信息</p><p> (學(xué)號(hào)int primary key NOT NULL,</p><p> 姓名char(10),<
13、/p><p> 性別char(2),</p><p> 出生日期datetime,</p><p> 班號(hào)char(12),</p><p> 年級(jí)char(10),</p><p> 電話號(hào)碼char(11),</p><p> 入學(xué)日期datetime,</p><
14、;p> 專(zhuān)業(yè)char(10),</p><p> 狀態(tài)char(10),</p><p><b> )</b></p><p> create table 課程信息( </p><p> 課程號(hào)char(10) primary key not null,</p><p> 課程名
15、char(10),</p><p> 課程類(lèi)型 char(10),</p><p> 學(xué)分char(10) )</p><p> create table 班級(jí)信息(</p><p> 班號(hào)char(12)primary key not null,</p><p> 年級(jí)char(10),</p>
16、<p> 班主任char(10),</p><p> 專(zhuān)業(yè)char(10) )</p><p> create table 選課表(</p><p> 學(xué)號(hào)char(10),</p><p> 姓名char(10),</p><p> 年級(jí)char(10),</p><p&
17、gt; 課程號(hào)char(10),</p><p> 課程名char(10),</p><p><b> )</b></p><p> create table 成績(jī)信息(</p><p> 學(xué)號(hào)int not null,</p><p> 姓名char(10),</p>
18、<p> 課程號(hào)char(10),</p><p> 課程名char(10),</p><p> 成績(jī)float(8),</p><p> 學(xué)分char(10),</p><p><b> 學(xué)期int )</b></p><p> Create table 教學(xué)計(jì)劃表(<
19、;/p><p> 年級(jí)char(10),</p><p> 專(zhuān)業(yè)char (10),</p><p> 班號(hào)char(12),</p><p><b> 學(xué)期int,</b></p><p> 課程號(hào)char(10),</p><p> 課程名char(10),
20、)</p><p> CREATE procedure 添加學(xué)生信息</p><p><b> (@學(xué)號(hào)int,</b></p><p> @姓名char(10),</p><p> @性別char(2),</p><p> @出生日期datetime,</p><p
21、> @班號(hào)char(12),</p><p> @電話號(hào)碼char(11),</p><p> @入學(xué)日期datetime,</p><p> @專(zhuān)業(yè)char(10),</p><p> @狀態(tài)char(10),</p><p> @回復(fù)char(20)output)</p><p
22、><b> as </b></p><p> if exists(select*from 學(xué)生信息where 學(xué)號(hào)=@學(xué)號(hào))</p><p><b> begin</b></p><p> set @回復(fù)='本條記錄已經(jīng)存在'</p><p><b> en
23、d</b></p><p><b> else</b></p><p><b> insert</b></p><p><b> into </b></p><p><b> 學(xué)生信息</b></p><p>
24、 values(@學(xué)號(hào),@姓名,@性別,@出生日期,@班號(hào),@電話號(hào)碼,@入學(xué)日期,@專(zhuān)業(yè),@狀態(tài))</p><p><b> GO</b></p><p> CREATE procedure 刪除學(xué)生信息</p><p><b> (@學(xué)號(hào)int)</b></p><p><b>
25、 as</b></p><p> if exists(select*from 學(xué)生信息where 學(xué)號(hào)=@學(xué)號(hào))</p><p><b> DELETE</b></p><p> FROM學(xué)生信息WHERE學(xué)號(hào)in(@學(xué)號(hào))</p><p> if exists(select*from 選課表whe
26、re 學(xué)號(hào)=@學(xué)號(hào))</p><p><b> DELETE</b></p><p> FROM選課表WHERE學(xué)號(hào)in(@學(xué)號(hào))</p><p> if exists(select*from 成績(jī)信息where 學(xué)號(hào)=@學(xué)號(hào))</p><p><b> DELETE</b></p&g
27、t;<p> FROM成績(jī)信息WHERE學(xué)號(hào)in(@學(xué)號(hào))</p><p><b> Go</b></p><p> CREATE PROCEDURE 修改學(xué)生信息</p><p><b> (@學(xué)號(hào)int,</b></p><p> @姓名char(10),</p&g
28、t;<p> @性別char(2),</p><p> @出生日期datetime,</p><p> @班號(hào)char(12),</p><p> @電話號(hào)碼char(11),</p><p> @入學(xué)日期datetime,</p><p> @專(zhuān)業(yè)char(10),</p>&
29、lt;p> @狀態(tài)char(10) )</p><p><b> as</b></p><p> UPDATE 學(xué)生信息</p><p> SET 學(xué)號(hào)=@學(xué)號(hào),姓名=@姓名,性別=@性別,出生日期=@出生日期,班號(hào)=@班號(hào),電話號(hào)碼=@電話號(hào)碼,入學(xué)日期=@入學(xué)日期,專(zhuān)業(yè)=@專(zhuān)業(yè),狀態(tài)=無(wú)</p><p>
30、; WHERE 學(xué)號(hào)=@學(xué)號(hào)</p><p><b> Go</b></p><p> create procedure 查詢(xún)學(xué)生信息</p><p> @姓名char(10)</p><p><b> as</b></p><p> SELECT * FROM
31、學(xué)生信息WHERE 姓名=@姓名</p><p><b> go</b></p><p> create procedure 班級(jí)選課</p><p> (@班號(hào)char(12),</p><p> @年級(jí)char(10),</p><p> @專(zhuān)業(yè)char(10),</p>
32、<p><b> @學(xué)期int)</b></p><p><b> As</b></p><p><b> Insert</b></p><p><b> Into選課表</b></p><p> Values('selec
33、t學(xué)號(hào)from學(xué)生信息where(年級(jí)=@年級(jí)and班號(hào)=@班號(hào)and專(zhuān)業(yè)=@專(zhuān)業(yè))','select姓名from學(xué)生信息where(年級(jí)=@年級(jí)and班號(hào)=@班號(hào)and專(zhuān)業(yè)=@專(zhuān)業(yè))','select課程號(hào)from教學(xué)計(jì)劃where(年級(jí)=@年級(jí)and班號(hào)=@班號(hào)and專(zhuān)業(yè)=@專(zhuān)業(yè)and學(xué)期=@學(xué)期)','select課程名from教學(xué)計(jì)劃where(年級(jí)=@年級(jí)and班號(hào)=@班號(hào)and
34、專(zhuān)業(yè)=@專(zhuān)業(yè)and學(xué)期=@學(xué)期),select學(xué)分from課程信息where課程號(hào)=(select課程號(hào)from教學(xué)計(jì)劃where年級(jí)=@年級(jí)and班號(hào)=@班號(hào)and專(zhuān)業(yè)=@專(zhuān)業(yè))')</p><p><b> Go</b></p><p> Create procedure 添加成績(jī)信息</p><p><b> (@
35、學(xué)號(hào)int,</b></p><p> @姓名char(10),</p><p> @課程號(hào)char(10),</p><p> @課程名char(10),</p><p> @成績(jī)float(8),</p><p> @學(xué)分char(10))</p><p><b&
36、gt; As</b></p><p> Insert into成績(jī)信息</p><p> Values(@學(xué)號(hào),@姓名,@課程號(hào),@課程名,@成績(jī),@學(xué)分) </p><p><b> Go</b></p><p> Create procedure 刪除成績(jī)信息</p><p&
37、gt;<b> (@學(xué)號(hào)int)</b></p><p><b> As</b></p><p><b> DELETE </b></p><p> FROM成績(jī)信息WHERE學(xué)號(hào)in(@學(xué)號(hào))</p><p><b> Go</b></p
38、><p> Create procedure 修改成績(jī)信息</p><p><b> (@學(xué)號(hào)int,</b></p><p> @姓名char(10),</p><p> @課程號(hào)char(10),</p><p> @課程名char(10),</p><p>
39、@成績(jī)float(8),</p><p> @學(xué)分char(10) )</p><p><b> As</b></p><p> Update 成績(jī)信息</p><p> set 學(xué)號(hào)=@學(xué)號(hào), 姓名=@姓名,課程號(hào)=@課程號(hào),課程名=@課程名,成績(jī)=@成績(jī),select學(xué)分from課程信息where課程號(hào)=@課
40、程號(hào)</p><p> where 學(xué)號(hào)=@學(xué)號(hào)</p><p><b> Go</b></p><p> Create procedure 成績(jī)查詢(xún)</p><p><b> @學(xué)號(hào),</b></p><p><b> @學(xué)期</b><
41、/p><p><b> As</b></p><p> Select學(xué)號(hào),姓名.成績(jī)from成績(jī)信息where學(xué)號(hào)=@學(xué)號(hào)and學(xué)期@學(xué)期、</p><p><b> Go</b></p><p> Create procedure 成績(jī)排名</p><p> (@班號(hào)
42、char(12),</p><p> @年級(jí)char(10),</p><p> @專(zhuān)業(yè)char(10))</p><p><b> As</b></p><p> Select 學(xué)號(hào),姓名,成績(jī)</p><p> from成績(jī)信息,班級(jí)信息</p><p>
43、where成績(jī)信息.(select學(xué)號(hào)from學(xué)生信息where班號(hào)=@班號(hào)and年級(jí)=@年級(jí)and專(zhuān)業(yè)=@專(zhuān)業(yè))=班級(jí)信息.(select學(xué)號(hào)from學(xué)生信息where班號(hào)=@班號(hào)and年級(jí)=@年級(jí)and專(zhuān)業(yè)=@專(zhuān)業(yè))</p><p> Order by 成績(jī)DESC</p><p><b> Go</b></p><p> Creat
44、e procedure 成績(jī)統(tǒng)計(jì)</p><p> (@班號(hào)char(12),</p><p> @年級(jí)char(10),</p><p> @專(zhuān)業(yè)char(10))</p><p><b> As</b></p><p> Select sum(成績(jī)) 總成績(jī)</p>&
45、lt;p> from 成績(jī)信息,班級(jí)信息</p><p> where成績(jī)信息.(select學(xué)號(hào)from學(xué)生信息where班號(hào)=@班號(hào)and年級(jí)=@年級(jí)and專(zhuān)業(yè)=@專(zhuān)業(yè))=班級(jí)信息.(select學(xué)號(hào)from學(xué)生信息where班號(hào)=@班號(hào)and年級(jí)=@年級(jí)and專(zhuān)業(yè)=@專(zhuān)業(yè))</p><p> Group by學(xué)號(hào)</p><p><b>
46、 Go</b></p><p> Create procedure 留級(jí)休學(xué)</p><p><b> As</b></p><p> If ((select sum(學(xué)分)from成績(jī)信息group by 學(xué)期)<=20)</p><p> Begin update 學(xué)生信息set 狀態(tài)=&
47、#39;留級(jí)'</p><p><b> End</b></p><p><b> Else</b></p><p><b> Begin</b></p><p> Update 學(xué)生信息set 狀態(tài)='null'</p><
48、p><b> End</b></p><p><b> Go</b></p><p><b> 數(shù)據(jù)庫(kù)備份</b></p><p> Use master</p><p><b> Go</b></p><p>
49、Exec sp_addumpdevice’disk’,’學(xué)生管理系統(tǒng)_1’,</p><p> DISK=”c:\Program Files\Microsoft SQL Sever\MSSQL\BACKUP\學(xué)生管理系統(tǒng)_1.dat”</p><p><b> Go</b></p><p> BACKUP DATABASE 學(xué)生管理系統(tǒng)T
50、O學(xué)籍管理系統(tǒng)_1</p><p><b> Go</b></p><p><b> 還原數(shù)據(jù)庫(kù)備份</b></p><p> RESTORE DATABASE 學(xué)生管理系統(tǒng)</p><p> From學(xué)籍管理系統(tǒng)_1</p><p><b> Go<
溫馨提示
- 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ù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)生學(xué)籍管理系統(tǒng)數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 學(xué)生學(xué)籍管理系統(tǒng)報(bào)告--數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--學(xué)籍管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--學(xué)籍管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--學(xué)籍管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)---學(xué)籍管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)---學(xué)生學(xué)籍信息管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)---學(xué)生學(xué)籍管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 學(xué)籍管理數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 學(xué)籍管理系統(tǒng)數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告
- 數(shù)據(jù)庫(kù)原理課程設(shè)計(jì)---學(xué)籍管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告--學(xué)籍管理系統(tǒng)設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告--學(xué)籍管理系統(tǒng)設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告---學(xué)生學(xué)籍管理信息系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)-學(xué)生管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)——學(xué)生管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--學(xué)生管理系統(tǒng)
- 數(shù)據(jù)庫(kù)原理與技術(shù)課程設(shè)計(jì)--學(xué)籍管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)---學(xué)生成績(jī)管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論