數(shù)據(jù)庫綜合實驗報告(學(xué)生成績管理系統(tǒng))_第1頁
數(shù)據(jù)庫綜合實驗報告(學(xué)生成績管理系統(tǒng))_第2頁
數(shù)據(jù)庫綜合實驗報告(學(xué)生成績管理系統(tǒng))_第3頁
數(shù)據(jù)庫綜合實驗報告(學(xué)生成績管理系統(tǒng))_第4頁
數(shù)據(jù)庫綜合實驗報告(學(xué)生成績管理系統(tǒng))_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

PAGE16數(shù)據(jù)庫綜合實驗報告班級:學(xué)號:姓名:2013年5月數(shù)據(jù)庫應(yīng)用系統(tǒng)的初步開發(fā)一、實驗?zāi)康?.掌握數(shù)據(jù)庫設(shè)計的基本技術(shù),熟悉數(shù)據(jù)庫設(shè)計的每個步驟中的任務(wù)和實施方案,并加深對數(shù)據(jù)庫系統(tǒng)系統(tǒng)概念和特點的理解。2.初步掌握基于C/S的數(shù)據(jù)庫應(yīng)用系統(tǒng)分析、設(shè)計和實現(xiàn)方法。3.進(jìn)一步提高學(xué)生的知識綜合運用能力。二、實驗內(nèi)容在SQLServer2000數(shù)據(jù)庫管理系統(tǒng)上,利用

MicrosoftVisualC++6.0開發(fā)工具開發(fā)一個學(xué)生成績管理系統(tǒng)的數(shù)據(jù)庫應(yīng)用系統(tǒng)。三、實驗過程(一.)系統(tǒng)需求說明1系統(tǒng)功能要求設(shè)計:此系統(tǒng)實現(xiàn)如下系統(tǒng)功能:(1)使得學(xué)生的成績管理工作更加清晰、條理化、自動化。(2)通過用戶名和密碼登錄系統(tǒng),查詢課程基本資料,學(xué)生所選課程成績,修改用戶密碼等功能。容易地完成學(xué)生信息的查詢操作。(3)設(shè)計人機友好界面,功能安排合理,操作使用方便,并且進(jìn)一步考慮系統(tǒng)在安全性,完整性,并發(fā)控制,備份和恢復(fù)等方面的功能要求。2系統(tǒng)模塊設(shè)計登陸失敗學(xué)生管理登陸失敗學(xué)生管理課程管理退出系統(tǒng)用戶驗證成績查詢登陸成功3數(shù)據(jù)字典 數(shù)據(jù)項是數(shù)據(jù)庫的關(guān)系中不可再分的數(shù)據(jù)單位,下表分別列出了數(shù)據(jù)的名稱、數(shù)據(jù)類型、長度、取值能否為空。利用SQLServer2000建立“學(xué)生選課”數(shù)據(jù)庫,其基本表清單及表結(jié)構(gòu)描述如下:數(shù)據(jù)庫中用到的表:數(shù)據(jù)庫表名關(guān)系模式名稱備注Student學(xué)生學(xué)生學(xué)籍信息表Course課程課程基本信息表Score成績選課成績信息表Student基本情況數(shù)據(jù)表,結(jié)構(gòu)如下:字段名字段類型NotNull說明Student_snoCharPrimarykey學(xué)號Student_sncharNotNull學(xué)生姓名Student_sexchar‘男’或‘女’性別Student_deptchar系別Student_agechar年齡Student_addresschar地址course數(shù)據(jù)表,結(jié)構(gòu)如下:字段名字段類型約束控制說明course_cnochar主鍵(primarykey)課程號course_cnamecharnotnull課程名稱course_hourintnotnull課時course_scorenumeric(2,1)notnull學(xué)分score情況數(shù)據(jù)表,結(jié)構(gòu)如下:字段名字段類型約束控制說明score_idintnotnull成績記錄號course_cnochar外部鍵課程號student_snochar外部鍵學(xué)號scoreint成績(二)數(shù)據(jù)庫結(jié)構(gòu)設(shè)計1.概念結(jié)構(gòu)設(shè)計由需求分析的結(jié)果可知,本系統(tǒng)設(shè)計的實體包括:(1)學(xué)生基本信息:學(xué)號,姓名,性別。(2)課程基本信息:課程名,課程號,分?jǐn)?shù)。2.邏輯結(jié)構(gòu)設(shè)計這些實體間的關(guān)系模式如下:(1)學(xué)生(學(xué)號,姓名,性別),其主關(guān)鍵字為學(xué)號;(2)課程(課程名,課程號),其中主關(guān)鍵字為課程號;(3)成績(課程號,學(xué)號,分?jǐn)?shù))其中主關(guān)鍵字為學(xué)號和課程號。可以與學(xué)生關(guān)系模式合并為:學(xué)生(學(xué)號,姓名,性別,成績,課程號)。3.確定關(guān)系模型的存取方法在將概念模型轉(zhuǎn)換成物理模型之后,我們可以對物理模型進(jìn)行設(shè)計,雙擊物理模型的關(guān)系,可以對該關(guān)系的名稱、注釋等信息進(jìn)行查詢??蓪υ撽P(guān)系的屬性列進(jìn)行設(shè)計,可分別設(shè)置其名稱、碼、數(shù)據(jù)類型以及主碼、是否為空等。在實際設(shè)計中最常用的存取方法是索引發(fā),使用索引可以大大減少數(shù)據(jù)的查詢時間,在建立索引時應(yīng)遵循:在經(jīng)常需要搜索的列上建立索引;

在主關(guān)鍵字上建立索引;在經(jīng)常用于連接的列上建立索引,即在外鍵上建立索引;在經(jīng)常需要根據(jù)范圍進(jìn)行搜索的列上創(chuàng)建索引,因為索引已經(jīng)排序,其指定的范圍是連續(xù)的等規(guī)則。才能充分利用索引的作用避免因索引引起的負(fù)面作用。4.確定數(shù)據(jù)庫的存儲結(jié)構(gòu)確定數(shù)據(jù)庫的存儲結(jié)構(gòu)主要指確定數(shù)據(jù)的存放位置和存儲結(jié)構(gòu),包括確定關(guān)系、索引、日志、備份等的存儲安排及存儲結(jié)構(gòu),以及確定系統(tǒng)存儲參數(shù)的配置。因為該成績管理系統(tǒng)的數(shù)據(jù)量小,,所以我們只用把數(shù)據(jù)存儲在使用的電腦硬盤上,不用作更多的安排。(1)創(chuàng)建學(xué)生基本信息表:createtableStudent(學(xué)號varchar(11)notnull,姓名varchar(6)notnull,性別varchar(2)notnull,constraintPK_STUDENTprimarykey(學(xué)號))goexecutesp_addextendedproperty'MS_Description','學(xué)生基本信息描述','user','','table','StudentsInfo'go(2)創(chuàng)建課程表:createtableCourse(cnovarchar(5)notnull,cnamevarchar(10)null,constraintPK_COURSEprimarykey(課程號))goexecutesp_addextendedproperty'MS_Description',(3)創(chuàng)建學(xué)生與課程的成績表createtableSC(snovarchar(11)notnull,cnovarchar(5)notnull,chengjivarchar(4)notnullconstraintPK_SCprimarykey(學(xué)號,課程號))go在SC表上創(chuàng)建索引SC_FK與SC2_FKcreateindexSC_FKonSC(學(xué)號ASC)GocreateindexSC2_FKonSC(課程號ASC)go建立課程號索引createindexTC_FKonTC(課程號ASC)go下圖顯示了學(xué)生,課程和成績?nèi)齻€關(guān)系的物理設(shè)計其中課程號與學(xué)號號分別為關(guān)系的主碼。五數(shù)據(jù)庫的實施與維護(hù)5.1數(shù)據(jù)庫的實施:此階段主要任務(wù)包括創(chuàng)建數(shù)據(jù)庫,加載初始數(shù)據(jù),數(shù)據(jù)庫試運行,數(shù)據(jù)庫的安全性和完整性控制數(shù)據(jù)庫的備份與恢復(fù),數(shù)據(jù)庫性能的監(jiān)督分析和改僅,數(shù)據(jù)庫的重組和重構(gòu)等。首先在數(shù)據(jù)庫中建立一個學(xué)生成績管理系統(tǒng)數(shù)據(jù)庫,然后新建一個數(shù)據(jù)源。主要代碼如下:1)基本表的創(chuàng)建,建表語句createtablestudents(stunochar(10)primarykey,stunamevarchar(40)notnull,stusexchar(2)notnull,stuagechar(10)notnull,stumajorchar(10)notnull,studepartchar(10)notnull,)(2)基本表的刪除droptablestudents2.數(shù)據(jù)查詢操作A.單表查詢:(1)查詢sno為09901學(xué)生的snameselectsnamefromstudentwheresno='0901'結(jié)果:(2)查詢ssex為’女’并且sdepart為’金融系’的snameselectsnamefromstudentwheressex='女'andsdepart='金融系'結(jié)果:(3)查詢所有學(xué)生的姓名和系別。selectsname,Departfromstudent結(jié)果:(4)查詢Depart為計算機系的sname。selectsnamefromstudentwhereDepart='計算機系'結(jié)果:(5)查詢所有學(xué)生所在院系名稱selectdistinctDepartfromstudent結(jié)果:(6)查詢學(xué)生信息表中年齡小于21和年齡大于21的學(xué)生的姓名和系別selectsname,Departfromstudent wheresage>21orsage<21結(jié)果:B.嵌套查詢查詢選修了0304這門課的所有學(xué)生的學(xué)號、姓名、年齡、院系Selectsno,sname,sage,DepartFromstudentWheresnoin(selectsnoFromscoreWherecno=’0304’)查詢結(jié)果3.數(shù)據(jù)庫更新操作A.插入數(shù)據(jù)向Student表中添加一項記錄:姓名:楊昇昇,學(xué)號:0907,性別:男,年齡:22專業(yè):信息管理,系別:金融系InsertIntoStudent1(Sno,Sname,Ssex,sage,major,depart)Values('0907','楊昇昇','男','22','信息管理','金融系')B.修改數(shù)據(jù)修改的學(xué)號為0908:UpdateStudentSetSno=’0908’WhereSname=’陳波’;C.刪除數(shù)據(jù)刪除所有金融學(xué)生的記錄DeletefromstudentWhere(depart=’金融系’);4.視圖的操作:數(shù)據(jù)庫視圖的定義(創(chuàng)建和刪除)、查詢和更新A.查詢所有學(xué)生選課的信息,包括學(xué)號、姓名、課程號、課程名、成績createviewscore1asselectstudent.sno'學(xué)號',student.sname'學(xué)生名',o'課程號',ame'課程名',score.degree'成績'fromstudent,class,scorewherestudent.sno=score.snoando=oGo查詢結(jié)果B.更新視圖:(1)修改信息:將宋丹丹的名字改為宋丹Updatescore1set學(xué)生名='宋丹丹'where學(xué)生名='宋丹'(2)刪除信息:刪除視圖score1中王恒文的記錄deletefromscorewhere學(xué)生名='王恒文'5.createdatabasestuDB創(chuàng)建表在此學(xué)生成績管理系統(tǒng)中需要創(chuàng)建三個表,即課程信息表、學(xué)生信息表和成績表。創(chuàng)建數(shù)據(jù)庫后,為stuDB數(shù)據(jù)庫添加數(shù)據(jù)表,步驟如下。新建查詢窗口在查詢窗口中鍵入下列SQL語句createtableClass(//創(chuàng)建課程信息表cnochar(10)primarykey,//課程號cnamechar(10)notnull,//課程名teanochar(10)Notnull//教師號creditchar(4),Notnull//學(xué)分)執(zhí)行上述SQL語句即可創(chuàng)建課程信息表相關(guān)表格createtablestudent1(//創(chuàng)建學(xué)生信息表snochar(10)primarykey,//學(xué)號snamechar(10)notnull,//姓名ssexchar(2)notnull,//性別Sagechar(2)notnull,//年齡Majorchar(10)notnull,//專業(yè)Departchar(10)notnull,//系別)執(zhí)行上述SQL語句即可創(chuàng)建學(xué)生信息表相關(guān)表格createtablescore(

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論