版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 課程設計報告</b></p><p> 課程設計題目:檔案管理系統(tǒng)數(shù)據(jù)庫的設計與實現(xiàn) </p><p><b> 專 業(yè):</b></p><p><b> 班 級:</b></p><p><b>
2、姓 名:</b></p><p><b> 學 號: </b></p><p><b> 指導教師: </b></p><p><b> 年 月 日</b></p><p> ?。▽W生)檔案管理系統(tǒng)數(shù)據(jù)庫課程設計報告</p>&l
3、t;p><b> 一、實驗題目</b></p><p> 學生檔案管理系統(tǒng)數(shù)據(jù)庫的設計與實現(xiàn)</p><p> 描述:設計一個學生證管理系統(tǒng)。實現(xiàn)下列功能:</p><p> 1.維護人員的檔案信息(輸入、修改和刪除)</p><p> 2.根據(jù)給定條件查詢人員檔案信息;</p><p
4、><b> 3.檔案報表輸出;</b></p><p><b> 二、實驗時間、地點</b></p><p><b> 三、實驗目的</b></p><p> 數(shù)據(jù)庫課程設計課程實驗是對我們的一種全面綜合訓練,是與課堂聽講、自學和練習相輔相成的必不可少的一個教學環(huán)節(jié),通過實驗達到深化理解
5、和靈活掌握教學內容的目的,以及提高我們分析問題、解決問題的應用能力。同時,使我們的工作規(guī)范和科學作風得到培養(yǎng)。</p><p> 通過該課程的學習,使我們能獨立分析問題,設計算法,實現(xiàn)程序的各項功能,得到正確的可執(zhí)行程序,學會調試程序,對設計過程進行系統(tǒng)的總結。</p><p> 本實踐課的主要目的:</p><p> 1、掌握運用數(shù)據(jù)庫原理進行系統(tǒng)分析和設計
6、的方法;</p><p> 2、掌握關系數(shù)據(jù)庫的設計方法;</p><p> 3、掌握利用SQL Server 2000技術;</p><p> 4、熟悉各種SQL語句及對數(shù)據(jù)庫的訪問方法。</p><p><b> 四、實驗要求</b></p><p> 1.對各個系統(tǒng)進行系統(tǒng)功能需求
7、分析</p><p> 2. 數(shù)據(jù)庫設計分析階段,進行詳細的數(shù)據(jù)庫需求分析,進行概念數(shù)據(jù)庫的設計,畫出數(shù)據(jù)庫的E-R圖(局部和整體E-R圖)</p><p> 3. 設計出詳細的邏輯數(shù)據(jù)庫結構,將各個實體和聯(lián)系轉化為相應的二維表即關系模式,指定各個關系的主關鍵字和外部關鍵字,并對各個關系的約束加以限定</p><p> 4. 通過企業(yè)管理器或是查詢分析器實現(xiàn)各
8、個二維關系(建議最好用SQL代碼實現(xiàn))</p><p> 5. 根據(jù)系統(tǒng)功能需求設計相應的查詢視圖</p><p> 6. 要求根據(jù)系統(tǒng)功能需求建立存儲過程</p><p> 7. 根據(jù)功能需求建立相應的觸發(fā)器</p><p><b> 五、實現(xiàn)思路</b></p><p><b&g
9、t; (一)系統(tǒng)需求分析</b></p><p> 需求分析師整個數(shù)據(jù)庫設計過程的基礎,要收集數(shù)據(jù)庫所有用戶的信息內容和處理要求,并加以規(guī)格化分析。這是最費時、最復雜的一步,但是也是最重要的一步,相當于待構建的數(shù)據(jù)庫大廈的地基,它決定了以后各步設計的速度和質量。需求分析做的不好,可能會導致整個數(shù)據(jù)庫設計返工重做。在分析用戶需求時,要確保用戶目標的一致性。</p><p>
10、 需求分析的任務是:對現(xiàn)實世界要處理的對象(組織、部門、企業(yè))等進行詳細的調查,通過對原系統(tǒng)的了解,收集支持新系統(tǒng)的基礎數(shù)據(jù)并對其進行處理,在此基礎上確定新系統(tǒng)的功能。</p><p> 具體地說,需求分析階段的任務包括下述三項。</p><p> 1.調查分析用戶活動</p><p> 2.收集和分析需求數(shù)據(jù),確定系統(tǒng)邊界</p><p&
11、gt; 3.編寫系統(tǒng)分析報告</p><p> 在本課程設計中,是對學生檔案信息進行管理,學生檔案信息不僅包括學生本人信息,也包括該學生在校獎懲榮譽信息及該學生家庭相關信息,因此本課程設計中要用到三個表,即學生信息表、獎懲榮譽信息表和家庭信息表。</p><p> 對學生檔案信息的處理包括信息的錄入、查詢、修改及刪除。</p><p> ?。?)對學生信息的管
12、理</p><p> ?。?)對獎懲榮譽信息的管理</p><p> ?。?)對學生家庭信息的管理</p><p><b> (二)概念結構設計</b></p><p> 概念結構設計就是將需求分析得到的用戶需求抽象為信息結構,即概念模型。概念模型作為概念結構設計的表達工具,為數(shù)據(jù)庫提供一個說明性結構,是設計數(shù)據(jù)庫邏
13、輯結構即邏輯模型的基礎。因此,概念模型必須具備以下特點:</p><p> ?。?)語意表達能力豐富。</p><p> (2)易于交流和理解。</p><p> (3)易于修改和擴充。</p><p> (4)易于向各種數(shù)據(jù)模型轉換。</p><p><b> 1.局部E-R圖:</b>
14、</p><p><b> 學生信息表:</b></p><p><b> 學生</b></p><p> 學號 班級 姓名 班主任 身份證 性別 年齡 政治面貌 聯(lián)系電話</p><p><b> 獎懲榮譽信息表:</b><
15、;/p><p><b> 獎懲榮譽</b></p><p> 學號 獎懲榮譽信息</p><p><b> 學生家庭信息表:</b></p><p><b> 學生家庭</b></p><p> 學號 家
16、庭地址 父親 母親 家庭 聯(lián)系電話 家庭月收入</p><p><b> 2.全局E-R圖:</b></p><p> 學號 家庭地址 父親 母親 家庭 聯(lián)系電話 家庭月收入</p><p> 獎懲榮譽 獎懲榮譽信息 學生家庭</p&
17、gt;<p> n 學號 1</p><p> 擁有 屬于</p><p> n n</p><p><b> 學生</b></p><p> 學號 班級 姓名
18、 班主任 身份證 性別 年齡 政治面貌 聯(lián)系電話</p><p><b> ?。ㄈ┻壿嫿Y構設計</b></p><p> 數(shù)據(jù)庫邏輯設計的任務是將概念模型轉換成特定DBMS所支持的數(shù)據(jù)模型的過程。</p><p> 在本課程設計中,存在三個實體(學生,獎懲榮譽,學生家庭),兩個聯(lián)系(擁有,屬于),在學生實
19、體中,學號作為其關鍵字;在獎懲榮譽實體中,學號作為其關鍵字;在學生家庭實體中,學號作為其關鍵字。因此得到下列關系模式:</p><p><b> 實體關系模式:</b></p><p> 學生(學號,班級號,學生姓名,班主任,身份證號,性別,年齡,政治面貌,聯(lián)系電話)</p><p> 獎懲榮譽(學號,獎懲榮譽信息)</p>
20、<p> 學生家庭:(學號,家庭地址,父親,母親,家庭聯(lián)系電話,家庭月收入)</p><p><b> ?。ㄋ模┪锢斫Y構設計</b></p><p> 數(shù)據(jù)庫物理設計的任務是為上一階段得到的數(shù)據(jù)庫邏輯模式,即數(shù)據(jù)庫的邏輯結構選擇合適的應用環(huán)境的物理結構,既確定有效地實現(xiàn)邏輯結構模式的數(shù)據(jù)庫存儲模式,確定在物理設備上所采用的存儲結構和存取方法,然后對該存
21、儲模式進行性能評價、修改設計,經(jīng)過多次反復,最后得到一個性能較好的存儲模式。數(shù)據(jù)庫物理設計內容包括記錄存儲結構的設計,存儲路徑的設計,記錄集簇的設計。</p><p> 確定數(shù)據(jù)存放位置:一臺裝有Windows系統(tǒng)的計算機的C盤。</p><p> 確定存儲結構:確定關系、索引、聚簇。</p><p><b> 六、實現(xiàn)過程</b><
22、;/p><p><b> ?。ㄒ唬┙ū?lt;/b></p><p> 在查詢分析器中,新建數(shù)據(jù)庫,并設置名為danganguanli。</p><p> 在該數(shù)據(jù)庫中創(chuàng)建三個表,即學生信息表、獎懲榮譽信息表和學生家庭信息表,分別命名為student,jiangcheng,jiating。</p><p> 首先設計學生信息
23、表student,包括以下屬性,及各屬性的數(shù)據(jù)類型和長度:</p><p> 獎懲榮譽信息表jiangcheng:</p><p> 家庭信息表jiating:</p><p> 在設計表后即可向表中添加數(shù)據(jù),在添加時要注意各項的約束條件及數(shù)據(jù)長度限制。</p><p> (二)創(chuàng)建學生檔案視圖</p><p>
24、; 創(chuàng)建學生檔案信息視圖,從三個表中選擇學生檔案所需信息,以便對視圖以外的數(shù)據(jù)進行保密,簡化了查詢操作,并保證了數(shù)據(jù)的邏輯獨立性。</p><p> 以下創(chuàng)建視圖dangan,連接student表,jiangcheng表和jiating表,選擇所需數(shù)據(jù)項組成視圖。</p><p> create view dangan(學號,班級,姓名,班主任,身份證號,性別,年齡,政治面貌,本人電
25、話,獎懲情況,家庭地址,父親,母親,家庭電話,家庭月收入)</p><p><b> as</b></p><p> select student.number,class,sname,teacher,idnum,student.sex,student.age,policy,phone,rongyu,homeadress,father,mather,call,mo
26、nthincome</p><p> from student,jiangcheng,jiating</p><p> where student.number=jiangcheng.number and student.number=jiating.number</p><p> (三)實現(xiàn)對學生檔案的各操作功能</p><p>
27、1.錄入學生檔案信息</p><p> (1)對某學生的檔案信息錄入之前,需先判斷該學生的檔案信息是否存在,如已經(jīng)存在就不能再錄入了,在判斷之后再根據(jù)不同情況進行學生檔案信息的錄入。</p><p> 創(chuàng)建存儲過程luru,判斷是否已經(jīng)存在該學生檔案信息并決定是否錄入:</p><p> create procedure luru</p><
28、;p> (@number varchar(20),</p><p> @class varchar(20),</p><p> @sname varchar(10),</p><p> @teacher varchar(20),</p><p> @idnum char(20),</p><p> @
29、sex char(2),</p><p> @age int ,</p><p> @policy char(10),</p><p> @phone varchar(12),</p><p> @rongyu char(50),</p><p> @homeadress char(20),</p>
30、;<p> @father varchar(10),</p><p> @mather varchar(10),</p><p> @call varchar(12),</p><p> @monthincome int)</p><p><b> as</b></p><p&
31、gt;<b> begin</b></p><p> declare @cant varchar(20)</p><p> declare @set varchar(20)</p><p> set @cant='信息已存在,不能錄入'</p><p> set @set='錄入'
32、;</p><p> if exists (select*from dangan where 學號=@number)</p><p> print @cant </p><p><b> else</b></p><p><b> begin</b></p><p>
33、 print @set</p><p> insert into student</p><p> values(@number,@class,@sname, @teacher,@idnum,@sex,@age,@policy,@phone)</p><p> insert into jiangcheng</p><p> valu
34、es(@number,@rongyu)</p><p> insert into jiating</p><p> values(@number,@homeadress,@father,@mather,@call,@monthincome)</p><p><b> end</b></p><p><b>
35、; end</b></p><p> 2.查詢學生檔案信息</p><p> ?。?)給定學號,查詢某位學生的檔案信息</p><p> 由于學生檔案信息是在視圖中體現(xiàn)的,因此通過查詢視圖,可以查看學生的檔案信息.</p><p> 創(chuàng)建存儲過程cx,傳遞參數(shù)number,通過給定學號,判斷該學生的檔案信息是否存在,如不存
36、在,則告知不存在該學生的檔案信息;如存在,則顯示出該學生的檔案信息.</p><p> create procedure cx</p><p> (@number varchar(20))</p><p><b> as</b></p><p> select * from dangan</p>&
37、lt;p> where 學號=@number</p><p> 3.修改學生檔案信息</p><p> 對于學生檔案信息的修改,是先通過給定學生學號,先判斷該學生的檔案信息是否存在,如存在,則進行修改。</p><p> 創(chuàng)建存儲過程xiugai,完成對學生檔案信息的修改。</p><p> create procedure
38、xiugai</p><p> (@number varchar(20),</p><p> @class varchar(20),</p><p> @sname varchar(10),</p><p> @teacher varchar(10),</p><p> @idnum char(20),<
39、;/p><p> @sex char(2),</p><p> @age int ,</p><p> @policy char(10),</p><p> @phone varchar(12),</p><p> @rongyu char(50),</p><p> @homeadre
40、ss char(20),</p><p> @father varchar(10),</p><p> @mather varchar(10),</p><p> @call varchar(12),</p><p> @monthincome int)</p><p><b> as</b&
41、gt;</p><p><b> begin</b></p><p> declare @cant varchar(20)</p><p> set @cant='該學生不存在,不能進行修改!'</p><p> if exists (select * from dangan where 學號=@
42、number)</p><p><b> begin</b></p><p> update student</p><p> set class=@class,sname=@sname,teacher= @teacher,idnum=@idnum,sex=@sex,age=@age,policy=@policy,phone=@phone
43、</p><p> where number=@number</p><p> update jiangcheng</p><p> set rongyu=@rongyu</p><p> where number=@number</p><p> update jiating</p><
44、p> set homeadress=@homeadress,father=@father,mather=@mather,call=@call,monthincome=@monthincome</p><p> where number=@number</p><p><b> end</b></p><p><b>
45、 else </b></p><p> print @cant</p><p><b> end</b></p><p> 4.刪除學生檔案信息</p><p> 創(chuàng)建存儲過程,給定學號參數(shù),判斷是否存在該學生的檔案信息,如不存在,則無法刪除;如存在,則刪除該條信息。</p><p
46、> 創(chuàng)建存儲過程Dele,給出要刪除的學生學號,通過delete操作刪除三個表中有關該學生的檔案記錄,即完成學生檔案信息的刪除工作。</p><p> create procedure dele</p><p> (@number varchar(20))</p><p><b> as</b></p><p&
47、gt;<b> begin</b></p><p> declare @cant varchar(20)</p><p> set @cant='不存在該學生檔案信息,不能刪除!'</p><p><b> begin</b></p><p> if exists (sel
48、ect * from dangan where 學號=@number)</p><p><b> begin</b></p><p> delete from jiangcheng</p><p> where number=@number</p><p> delete from jiating</p&g
49、t;<p> where number=@number</p><p> delete from student</p><p> where number=@number</p><p><b> end</b></p><p><b> else</b></p>
50、;<p> print @cant</p><p><b> end</b></p><p><b> end</b></p><p> (3)顯示錄入、修改、刪除后的信息</p><p> 1.創(chuàng)建觸發(fā)器顯示錄入后的結果</p><p> crea
51、te trigger displayiser</p><p> on jiating</p><p> after insert</p><p><b> as</b></p><p> select * from dangan</p><p> 2.創(chuàng)建觸發(fā)器檢驗刪除是否成功,顯示刪除
52、后的結果</p><p> create trigger displaysc</p><p> on student</p><p> after delete</p><p><b> as</b></p><p><b> select *</b></p&
53、gt;<p> from dangan</p><p> 3.創(chuàng)建觸發(fā)器顯示修改后的學生檔案信息</p><p> create trigger displayupd</p><p> on jiating</p><p> after update</p><p><b> as&
54、lt;/b></p><p> select * from dangan</p><p><b> 七、調試結果</b></p><p><b> 1. 錄入調試</b></p><p> exec luru '001','02','小花'
55、;,'張老師','3204011991233229','女',20,'團員','1352464269','數(shù)學競賽二等獎','南昌','王小寶','王大麗','1351213625',6000</p><p> exec luru '002
56、9;,'02','黑黑','李老師','3204011992233229','女',20,'團員','1382464269','英語競賽一等獎','南昌','肖大包','阿貍','1352213625',10000</p><p
57、><b> 結果:</b></p><p><b> 2. 修改調試</b></p><p> exec xiugai '001','01','張山','王老師','320401199109233225','男',20,'團員
58、9;,'13512364269','數(shù)學競賽一等獎','南昌','張小寶','王小麗','13512033635',6000</p><p><b> 結果:</b></p><p><b> 3.刪除調試</b></p><p
59、> exec dele '001'</p><p><b> 結果:</b></p><p><b> 4. 查詢調試</b></p><p> exec cx '001'</p><p><b> 結果:</b></p&g
60、t;<p> exec cx '002'</p><p><b> 結果:</b></p><p><b> 八、實驗總結</b></p><p> 通過一周的課程設計,完成了一個簡單的檔案(學生檔案)管理系統(tǒng),并成功實現(xiàn)了各要求所需功能。</p><p>
61、首先,在設計方面,考慮到數(shù)據(jù)的冗余及沖突等問題,將學生檔案信息分別存儲到三個表中,考慮了學生信息數(shù)據(jù),獎懲榮譽信息數(shù)據(jù)及學生家庭信息數(shù)據(jù)的獨立性問題。其次,在設計表時,注意了數(shù)據(jù)的數(shù)據(jù)類型及長度的選擇,考慮各種數(shù)據(jù)的添加情況,如將性別項的“男”設置為默認情況,同時還要保證不浪費數(shù)據(jù)的存儲空間。第三,使用了視圖view,實現(xiàn)數(shù)據(jù)的保密性,將學生檔案所需信息以視圖方式存放,在數(shù)據(jù)查詢時使用視圖查詢。第四,對于各功能的實現(xiàn),均使用了存儲過程p
62、rocedure,通過傳遞參數(shù)得到想要的結果。在實現(xiàn)功能時,注意了條件的判斷,根據(jù)分析各種情況,實現(xiàn)不同的操作。第四,在本系統(tǒng)中使用了觸發(fā)器trigger,觸發(fā)器用于響應數(shù)據(jù)庫更新,因此在錄入、修改、刪除信息時,我使用了觸發(fā)器,顯示操作后的結果信息,用來確認信息是否成功響應操作。但由于個人的經(jīng)驗、知識等方面的不足,并且時間比較匆忙,本系統(tǒng)還存在著許多缺陷。首先,在需求分析時,未能做到完全滿足用戶需要,而且整個系統(tǒng)漏洞很多,對表的設計也不
63、夠完善,對數(shù)據(jù)的完整性,獨立性等方面的要求考慮的還不夠充分。</p><p> 在本系統(tǒng)中,還有很多需改進的地方,相信通過一點點的改善,該系統(tǒng)會更完善。</p><p><b> 九、心得體會</b></p><p> 通過這次課程設計,我了解到自身在許多相關知識方面都認識得不夠深刻,致使在實際的運行操作中遇到許多困難與阻礙。在實驗過程中
64、,許多問題都在與同學的討論中得到解決,并在討論過程中,又對所學有了新的體會,學到了更多的知識。經(jīng)過一周的課程設計,體會到想要做一個完善的,功能全面的系統(tǒng),僅僅依靠課本上學習的知識是遠遠不夠的,不僅僅相關的專業(yè)知識要熟練運用,對所做的系統(tǒng)用途也要充分了解,等等這些都要花費時間與精力。在設計過程中,發(fā)現(xiàn)到合作的重要性,相互之間的溝通對系統(tǒng)的完成也有很大幫助??傊@一周的課程設計,不僅僅是一次簡單的見習,對以后的工作與生活都是一次經(jīng)驗的積累
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 黨員檔案管理系統(tǒng)數(shù)據(jù)庫課程設計含代碼
- 數(shù)據(jù)庫原理及應用課程設計--健康檔案管理系統(tǒng)
- 檔案管理系統(tǒng)課程設計報告
- 工資管理系統(tǒng)數(shù)據(jù)庫設計報告(數(shù)據(jù)庫課程設計)
- 工資管理系統(tǒng)數(shù)據(jù)庫設計報告數(shù)據(jù)庫課程設計
- 數(shù)據(jù)庫課程設計報告---餐飲管理系統(tǒng)
- 數(shù)據(jù)庫課程設計報告--食堂管理系統(tǒng)
- 數(shù)據(jù)庫課程設計報告(教材管理系統(tǒng))
- 數(shù)據(jù)庫課程設計報告--餐飲管理系統(tǒng)
- 數(shù)據(jù)庫課程設計報告---圖書館管理系統(tǒng)數(shù)據(jù)庫
- 數(shù)據(jù)庫課程設計報告---酒店管理系統(tǒng)
- 數(shù)據(jù)庫課程設計報告--酒店管理系統(tǒng)
- 數(shù)據(jù)庫課程設計報告--成績管理系統(tǒng)
- 工資管理系統(tǒng)數(shù)據(jù)庫設計報告(數(shù)據(jù)庫課程設計)模板
- 學籍管理系統(tǒng)數(shù)據(jù)庫課程設計報告
- 數(shù)據(jù)庫課程設計報告——教務管理系統(tǒng)
- 數(shù)據(jù)庫課程設計報告(醫(yī)院管理系統(tǒng))
- 數(shù)據(jù)庫課程設計--數(shù)據(jù)庫設計—公司管理系統(tǒng)
- 數(shù)據(jù)庫課程設計報告--學籍管理系統(tǒng)設計
- 數(shù)據(jù)庫課程設計報告--學籍管理系統(tǒng)設計
評論
0/150
提交評論