




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
長沙理工大學《程序設計實踐》課程設計報告鄒松林學院計通學院專業計算機科學與技術班級計算機03-05學號27學生姓名鄒松林指導教師盧曼莎課程成績完成日期2006年9月20號圖書館管理系統數據庫分析與設計學生姓名:鄒松林指導老師:盧曼莎摘要:圖書信息管理系統主要由讀者信息管理模塊,圖書信息管理模塊,借閱信息管理模塊,系統信息管理模塊等組成。其中又各自分成讀者注冊,證件修改,用戶注銷,圖書查詢,操作記錄等子模塊。在設計本系統過程中,我們第一步由自頂而下的需求分析概括設計出系統總模塊的數據流圖,再設計個子模塊的相應數據流圖,列出數據流信息及數據字典;第二步概念設計在需求分析根底上用E-R圖表示出數據及相互間聯系,采用先作子圖,再合并成初步E-R圖,進行修改和重構后得到根本E-R圖;第三步邏輯設計,在SQLServer的設計環境下把圖書館管理系統E-R圖轉化為成邏輯數據模型表示的邏輯模式,同時實現數據模型的優化和數據模式的標準化;第四步進行物理設計設計數據的內模式,確定數據的存儲結構,存取路徑,存儲空間分配等等,具體形式為表,視圖,索引的建立。關鍵字:數據庫,SQL語言,MSSQLServer,圖書管理1需求分析用戶的需求具體表達在各種信息的提供、保存、更新和查詢,這就要求數據庫結構能充分滿足各種信息的輸入和輸出。收集根本數據,數據結構以及數據處理的流程,為后面的具體設計打下根底。在仔細分析調查有關圖書館管理信息需求的根底上,我們主要考慮以下幾個方面的需求:1)用戶需求:圖書用戶要求計算機系統和SQLServer所工作的范圍;2)應用資源:數據庫應用的平臺包括物理平臺和圖書等;3)應用質量和可靠性要求:包括操作人員素質和系統的糾錯能力等1.1工程名稱:圖書館信息管理系統1.2工程背景和內容概要對圖書館管理信息系統進行詳細地分析后,我們將系統分為以下幾個模塊:借閱管理模塊、借書證信息管理模塊、圖書信息管理模塊、系統管理模塊。其主要功能如下:借閱管理模塊主要功能如下:1).可以為讀者辦理,修改,注銷借書證,輸入讀者借書證根本信息等,定制讀者的借閱權限。2).可以通過借書證查詢圖書信息、借出圖書信息,借閱圖書。3).通過借書證還書,管理員可以通過對借閱信息的管理對到期還未還的書,通過查詢讀者的借書證信息查詢讀者聯系方式發出催還通知。借書證信息管理模塊主要功能如下:1).讀者根本信息的輸入,如:讀者姓名、性別、單位等。2).讀者信息的修改、注銷等功能。3).添加新的讀者及其信息等。圖書信息管理模塊主要功能如下:1).定制書籍的各種信息管理,如:書名、作者、出版信息等。2).書籍信息的修改,新圖書的入庫管理和圖書的注銷等。系統管理模塊主要功能如下:1).用戶登錄。2).修改密碼。3).添加用戶。系統備份和數據傳輸模塊主要功能如下:1).備份數據庫數據2).恢復數據庫數據3).網絡數據傳輸1.3數據流圖數據流總體圖示圖1-1數據流總體圖辦理借書證圖1-2輸借書證流圖借書證修改圖1-3借書證修改流圖借書證注銷圖1-4借書證注銷流圖借書系統不能借書的原因不能借書的原因圖1-5借書系統流圖檢索系統圖1-6檢索系統流圖還書系統圖1-7還書系統流圖圖書檔案管理系統圖1-8檔案管理流圖1.4數據字典參數名類型長度取值范圍別名意義圖書書名字符型11SM圖書編號字符型11B1050600000-B1050610000SH作者字符型10YZ出版社字符型20CBS單價數值型8DJ借出日期日期型yy-mm-ddJS還書日期日期型yy-mm-ddHS借書證號字符型100501000000-0501100000JSZ姓名字符型20NAME是否歸還字符型20YN性別字符型2SEX單位字符型20DW發證日期日期型yy-mm-ddFZ已借書冊數字符型2YNC是否允許借書字符型2YNS是或否類別字符型20LB進冊數數值型10JC庫存量數值型10CZ操作員編號數值型10CB操作員姓名字符型10CNAME操作員密碼字符型15MM表1數據字典2概念結構設計這一階段我們將客戶的應用需求抽象為信息世界的結構,即對系統的人、物、事和概念進行人為處理,抽取人們所關心的共同特性,同時把這些特性用概念精確的描述。我們首先根據需求分析的結果〔數據流圖、數據字典等〕對現實世界的數據進行抽象,設計各個局部E-R圖,然后合并成初步E-R圖,再進行修改與重構。2.1局部E-R圖圖書信息管理系統主要分為以下幾個局部E-R圖:1).借書證處理系統ER圖:管理員管理員辦證改證銷證讀者檔案借書證身份驗證身份驗證身份驗證1PPNMNMP1P圖2-1借書證處理系統ER圖圖中各實體屬性如下:讀者檔案:學號,讀者姓名,性別,出生日期,借書證號,職業,單位,通訊地址,郵政編碼,聯系借書證:借書證號,姓名,性別,辦證日期,借閱范圍,最大借書量,照片,身份證號管理員:管理員編號,管理員姓名,登陸密碼2).借書系統ER圖:讀者讀者借書證庫存表借出信息驗證查詢借書檢查庫存索書條111N1NN圖2-2借書系統ER圖圖中各實體屬性如下:讀者:身份證號,讀者姓名,借書證號借書證:借書證號,姓名,性別,辦證日期(借閱范圍,最大借書量,照片,身份證號)庫存信息:書號,圖書編號借出信息:圖書編號,借書證號,借書日期,歸還日期3).索書系統ER圖:讀者讀者圖書檔案索書要求索書MN索書條圖2-3索書系統ER圖圖中各實體屬性如下:讀者:讀者姓名,借書證號圖書檔案:圖書編號,書號,書名,作者,出版單位,出版日期,單價,藏書冊書,類別,入庫日期4).還書系統ER圖:驗證驗證還書催還完整檢查讀者借書證庫存表借出信息管理員是否歸還1N1MMN1M1P圖2-4還書系統ER圖圖中各實體屬性如下:讀者:學號,讀者姓名,借書證號借書證:借書證號,姓名,性別,辦證日期庫存信息:書號,圖書編號借出信息:圖書編號,借書證號,借書日期,歸還日期管理員:操作員編號,管理員姓名,登陸密碼5).圖書檔案管理系統ER圖:管理員管理員修改輸入注銷圖書檔案庫存身份驗證身份驗證身份驗證1N1NN1NNNN入庫清單圖2-5檔案管理系統ER圖圖中各實體屬性如下:管理員:操作員編號,管理員姓名,登陸密碼庫存信息:書號,圖書編號圖書檔案:圖書編號,書號,書名,作者,出版單位,出版日期,單價,類別,入庫日期入庫清單:入庫日期,圖書編號,管理員編號,書名6).整體E-R圖讀者讀者圖書檔案借出書庫庫存表管理員借書證圖書管理證件處理催還借書還書查詢已借索書PPM1MN11MNPPMNNPMNN1N圖2-6整體ER圖圖中各實體屬性如下:讀者檔案:學號,讀者姓名,性別,借書證號,單位借書證:借書證號,姓名,性別,辦證日期管理員:操作員編號,管理員姓名,登陸密碼庫存信息:書號,圖書編號借出信息:圖書編號,借書證號,借書日期,歸還日期圖書檔案:書號,書名,作者,出版單位,出版日期,單價,類別,藏書冊書,圖書編號入庫日期2.2實體描述說明:1、由于讀者的信息可以在借書證辦理檔案中查到所以合并為借書證辦理檔案2.將借出書庫和入庫清單分別合并到了借書登記表和圖書信息表中實體名稱借書證數據庫表借書證信息表實體說明讀者和借書證信息實體屬性列表借書證號,姓名,性別,辦證日期,最大借書量,學號實體名稱管理員數據庫表tz_passwd實體說明管理員的信息實體屬性列表管理員編號,管理員姓名,登陸密碼實體名稱讀者數據庫表借書登記表實體說明圖書館未被借出的圖書信息實體屬性列表書號,圖書編號實體名稱讀者數據庫表還書登記表實體說明圖書館未被借出的圖書信息實體屬性列表書號,圖書編號實體名稱圖書檔案數據庫表圖書信息表實體說明館藏圖書信息實體屬性列表書號,書名,作者,出版單位,出版日期,版次,單價,類別,圖書編號,入庫日期表2實體描述2.3關系描述〔已包含在E-R圖中〕2.4實體--關系調整〔實體描述表中已消除冗余實體和關系〕2.5數據項定義1).圖書庫的數據項定義:名稱別名類型長度其他圖書書名SM字符型20普通索引書號SH數值型20主索引譯者YZ字符型10出版社CBS字符型20單價DJ數值型8出版時間CBSJ日期型8表3圖書庫數據項定義2).借、還書庫的數據項定義:名稱別名類型長度其他姓名XSXM字符型10普通索引借書證號JSZH數值型8主索引圖書書名SM字符型20圖書編號SH字符型20借書日期JSRQ日期型8還書日期HSRQ日期型8表4借、還書庫數據項定義3).借書證庫的數據項定義:名稱別名類型長度其他姓名JSXM字符型10普通索引借書證號JSGH字符型6主索引性別XB字符型4單位DW字符型8表5借書證庫數據項定義4).操作員庫的數據項定義:名稱別名類型長度其他操作員編號CZYYHH字符型10操作員用戶名CZYYHM字符型10口令KL字符型10表6操作員庫數據項定義2.6數據表〔庫〕描述圖書數據庫=圖書書名+圖書編號+著者+出版社+單價+書號+出版時間借書庫=姓名+借書證號++教師姓名+圖書名稱+借書日期+還書日期教師數據庫=姓名+借書證號+單位操作員庫=操作員用戶名+口令2.7系統功能模塊圖軟件功能結構圖:工商學院圖書信息管理系統系統管理根本情況錄入借、還書管理查詢、統計初始化數據備份操作員管理一般用戶登陸新圖書登記新期刊登記借書登記還書登記圖書庫藏查詢借書證庫查詢圖書查詢借書查詢還書查詢圖2-7軟件功能結構2.8系統流程圖:圖書管理系統讀者查詢系統圖書(期刊)庫查詢圖2-8系統流程圖3邏輯結構設計為了能夠用計算機和SQLServer實現用戶需求,可將概念結構轉化為相應的數據模型,即是設計邏輯結構。即由E-R圖建立了適當的表,并按不同的范式的定義,對表進行標準化。對標準化的表,更據用戶需求建立數據庫結構。3.1確定數據依賴關系名主要函數依賴管理員BCNF管理員編號—→(管理員姓名,登陸密碼)庫存信息BCNF圖書編號—→書名等借出信息BCNF(圖書編號)—→(借書日期,借書證號,歸還日期)借書證2NF借書證號—→(借書證號,姓名,性別,單位,發證日期,已借書冊書,是否容許借書)以后擴展:身份證號—→(姓名,性別,照片)圖書檔案2NF圖書編號—→(書號,書名,作者,出版單位,出版日期,版次,單價,內容提要,分類號,索書號,所在書庫,入庫日期)入庫清單BCNF圖書編號—→〔管理員編號,書名,入庫日期〕還書信息BCNF借書證號—→〔姓名,圖書編號,書名,借出日期,還書日期〕3.2數據依賴的優化與調整關系模式的優化(1)借書證信息:借書證(借書證號,姓名,性別,單位,發證日期,已借書冊書,是否容許借書)滿足BCNF范式(2)管理員信息:管理員信息(管理員編號,管理員姓名,登陸密碼)滿足BCNF范式(3)庫存信息:庫存信息(圖書編號,書號)滿足BCNF范式(4)借書信息:借書信息(圖書編號,借書證號,姓名,書名,借書日期,是否歸還)滿足BCNF范式(5)還書信息:還書信息〔姓名,圖書編號,書名,借出日期,還書日期〕滿足BCNF范式(6)圖書信息:圖書檔案(圖書編號,書名,作者,圖書類別,單價,出版社,進冊書,庫存量)均滿足BCNF范式(7)入庫清單:入庫清單〔圖書編號,管理員編號,書名,入庫日期〕滿足BCNF范式關系模式的調整雖然在關系模式的優化中將各種關系滿足了BCNF范式的要求,但是對某些數據庫的操作卻并沒有簡化,相反導致了數據庫查詢等數據庫操作的效率低下。于是對‘借書證信息’,和‘圖書信息’作出了以下調整。(1)借書證信息:借書證〔借書證號,姓名,性別,辦證日期,單位,已借書冊數,借書許可,〕〔3NF〕(2)圖書信息:圖書檔案〔圖書編號,書名,作者,出版單位,單價,圖書類別,進冊數,入庫量〕(2NF)4代碼設計圖書管理系統局部源代碼[圖書外借情況查詢代碼]tempstr=allt(thisform.container1.text1.value)tempstr="%"+tempstr+"%"ifthisform.container1bo1.text="借書證號"select*from借書登記表where借書登記表.借書證號liketempstrintocursortempcursorthisform.grid1.recordsource=tempcursorthisform.refreshendififthisform.container1bo1.text="姓名"select*from借書登記表where借書登記表.姓名liketempstrintocursortempcursorthisform.grid1.recordsource=tempcursorthisform.refreshendififthisform.container1bo1.text="圖書編號"select*from借書登記表where借書登記表.圖書編號liketempstrintocursortempcursorthisform.grid1.recordsource=tempcursorthisform.refreshendififthisform.container1bo1.text="書名"select*from借書登記表where借書登記表.書名liketempstrintocursortempcursorthisform.grid1.recordsource=tempcursorthisform.refreshendififthisform.container1bo1.text="是否歸還"select*from借書登記表where借書登記表.是否歸還liketempstrintocursortempcursorthisform.grid1.recordsource=tempcursorthisform.refreshendifthisform.container1.text1.value=""[圖書外借和歸還情況查詢代碼]tempstr=allt(thisform.container1.text1.value)tempstr="%"+tempstr+"%"ifthisform.container1bo1.text="借書證號"select*from還書登記表where還書登記表.借書證號liketempstrintocursortempcursorthisform.grid1.recordsource=tempcursorthisform.refreshendififthisform.container1bo1.text="姓名"select*from還書登記表where還書登記表.姓名liketempstrintocursortempcursorthisform.grid1.recordsource=tempcursorthisform.refreshendififthisform.container1bo1.text="圖書編號"select*from還書登記表where還書登記表.圖書編號liketempstrintocursortempcursorthisform.grid1.recordsource=tempcursorthisform.refreshendififthisform.container1bo1.text="書名"select*from還書登記表where還書登記表.書名liketempstrintocursortempcursorthisform.grid1.recordsource=tempcursorthisform.refreshendifthisform.container1.text1.value=""[存儲過程代碼]procedurerideletelocalllretvalllretval=.t.if(isrlocked()and!deleted())or!rlock()llretval=.f.elseif!deleted()deleteifcursorgetprop('buffering')>1 =tableupdate()endifllretval=pnerror=0endifnotalreadydeletedendifunlockrecord(recno())returnllretvalprocedureriupdatelparameterstcfieldname,tcnewvalue,tccascadeparentlocalllretvalllretval=.t.ifisrlocked()or!rlock()llretval=.f.elseifeval(tcfieldname)<>tcnewvalueprivatepccascadeparentpccascadeparent=upper(iif(type("tccascadeparent")<>"c","",tccascadeparent))replace(tcfieldname)withtcnewvalueifcursorgetprop('buffering')>1 =tableupdate()endifllretval=pnerror=0endifvaluesdon'talreadymatchendifit'slockedalready,oriwasabletolockitunlockrecord(recno())returnllretvalprocedurerierrorparameterstnerrno,tcmessage,tccode,tcprogramlocallnerrorrows,lnxxlnerrorrows=alen(gaerrors,1)iftype('gaerrors[lnerrorrows,1]')<>"l"dimensiongaerrors[lnerrorrows+1,alen(gaerrors,2)]lnerrorrows=lnerrorrows+1endifgaerrors[lnerrorrows,1]=tnerrnogaerrors[lnerrorrows,2]=tcmessagegaerrors[lnerrorrows,3]=tccodegaerrors[lnerrorrows,4]=""lnxx=1dowhile!empty(program(lnxx))gaerrors[lnerrorrows,4]=gaerrors[lnerrorrows,4]+","+;program(lnxx)lnxx=lnxx+1enddogaerrors[lnerrorrows,5]=pcparentdbfgaerrors[lnerrorrows,6]=pnparentrecgaerrors[lnerrorrows,7]=pcparentidgaerrors[lnerrorrows,8]=pcparentexprgaerrors[lnerrorrows,9]=pcchilddbfgaerrors[lnerrorrows,10]=pnchildrecgaerrors[lnerrorrows,11]=pcchildidgaerrors[lnerrorrows,12]=pcchildexprreturntnerrnoprocedureriopenparameterstctable,tcorderlocallccurwkarea,lcnewwkarea,lninusespotlninusespot=atc(tctable+"*",pcricursors)iflninusespot=0lccurwkarea=select()select0lcnewwkarea=select()ifnotempty(tcorder)use(tctable)againorder(tcorder);alias("__ri"+ltrim(str(select())))shareelseuse(tctable)againalias("__ri"+ltrim(str(select())))shareendififpnerror=0pcricursors=pcricursors+upper(tctable)+"?"+str(select(),5)elselcnewwkarea=0endifsomethingbadhappenedwhileattemptingtoopenthefileelselcnewwkarea=val(substr(pcricursors,lninusespot+len(tctable)+1,5))pcricursors=strtran(pcricursors,upper(tctable)+"*"+str(lcnewwkarea,5),;upper(tctable)+"?"+str(lcnewwkarea,5))ifnotempty(tcorder)setorderto(tcorder)in(lcnewwkarea)endifsentanorderifpnerror<>0lcnewwkarea=0endifsomethingbadhappenedwhilesettingorderendifreturn(lcnewwkarea)procedureriendparameterstlsuccesslocallnxx,lnspot,lcworkareaiftlsuccessendtransactionelsesetdeletedoffrollbacksetdeletedonendififempty(pcriolderror)onerrorelseonerror&pcriolderror.endifforlnxx=1tooccurs("*",pcricursors)lnspot=atc("*",pcricursors,lnxx)+1usein(val(substr(pcricursors,lnspot,5)))endforifpcoldcompat="on" setcompatibleonendififpcolddele="off"setdeletedoffendififpcoldexact="on"setexactonendififpcoldtalk="on"settalkonendifdocasecaseempty(pcolddbc)setdatatocasepcolddbc<>dbc()setdatato(pcolddbc)endcasereturn.cedurerireuse*rireuse.prgparameterstctablename,tcwkareapcricursors=strtran(pcricursors,upper(tctablename)+"?"+str(tcwkarea,5),;upper(tctablename)+"*"+str(tcwkarea,5))return.t.**********************************************************************************"參照完整性刪除觸發器"借書證信息表procedure__ri_delete_借書證信息表localllretvalllretval=.t.privatepcparentdbf,pnparentrec,pcchilddbf,pnchildrec,pcparentid,pcchildidprivatepcparentexpr,pcchildexprstore""topcparentdbf,pcchilddbf,pcparentid,pcchildid,pcparentexpr,pcchildexprstore0topnparentrec,pnchildrecif_triggerlevel=1begintransactionprivatepcricursors,pcriwkareas,pcriolderror,pnerror,;pcolddele,pcoldexact,pcoldtalk,pcoldcompat,pcolddbcpcoldtalk=set("talk")settalkoffpcolddele=set("deleted")pcoldexact=set("exact")pcoldcompat=set("compatible")setcompatibleoffsetdeletedonsetexactoffpcricursors=""pcriwkareas=""pcriolderror=on("error")pnerror=0onerrorpnerror=rierror(error(),message(),message(1),program())iftype('gaerrors(1)')<>"u"releasegaerrorsendifpublicgaerrors(1,12)pcolddbc=dbc()setdatato("tsglxt")endiffirsttriggerlocallcparentid&&parent'svaluetobesoughtinchildlocallcchildwkarea&&childworkareahandlereturnedbyriopenlocallcparentwkarealocallldelheaderarealcstartarea=select()llretval=.t.lcparentwkarea=select()select(lcparentwkarea)pcparentdbf=dbf()pnparentrec=recno()store借書證號tolcparentid,pcparentidpcparentexpr="借書證號"lcchildwkarea=riopen("還書登記表","借書證號")iflcchildwkarea<=0if_triggerlevel=1doriendwith.f.endifattheendofthehighesttriggerlevelreturn.f.endifnotabletoopenthechildworkareapcchilddbf=dbf(lcchildwkarea)llretval=!seek(lcparentid,lcchildwkarea)select(lcchildwkarea)pnchildrec=recno()pcchildid=借書證號pcchildexpr="借書證號"if!llretvaldorierrorwith-1,"違反刪除限制規那么。","",""endif=rireuse("還書登記表",lcchildwkarea)ifnotllretvalif_triggerlevel=1doriendwithllretvalendifattheendofthehighesttriggerlevelselect(lcstartarea)returnllretvalendifif_triggerlevel=1doriendwithllretvalendifattheendofthehighesttriggerlevelselect(lcstartarea)returnllretval**"結束參照完整性刪除觸發器"借書證信息表*********************************************************************procedure__ri_update_借書證信息表**"參照完整性更新觸發器"借書證信息表localllretvalllretval=.t.privatepcparentdbf,pnparentrec,pcchilddbf,pnchildrec,pcparentid,pcchildidprivatepcparentexpr,pcchildexprstore""topcparentdbf,pcchilddbf,pcparentid,pcchildid,pcparentexpr,pcchildexprstore0topnparentrec,pnchildrecif_triggerlevel=1begintransactionprivatepcricursors,pcriwkareas,pcriolderror,pnerror,;pcolddele,pcoldexact,pcoldtalk,pcoldcompat,pcolddbcpcoldtalk=set("talk")settalkoffpcolddele=set("deleted")pcoldexact=set("exact")pcoldcompat=set("compatible")setcompatibleoffsetdeletedonsetexactoffpcricursors=""pcriwkareas=""pcriolderror=on("error")pnerror=0onerrorpnerror=rierror(error(),message(),message(1),program())iftype('gaerrors(1)')<>"u"releasegaerrorsendifpublicgaerrors(1,12)pcolddbc=dbc()setdatato("tsglxt")endiffirsttriggerlocallcparentid&&parent'svaluetobesoughtinchildlocallcoldparentid&&previousparentidvaluelocallcchildwkarea&&childworkareahandlereturnedbyriopenlocallcchildid&&child'svaluetobesoughtinparentlocallcoldchildid&&oldchildidvaluelocallcparentwkarea&&parentworkareahandlereturnedbyriopenlocallcstartarealcstartarea=select()llretval=.t.lcparentwkarea=select()select(lcparentwkarea)pcparentdbf=dbf()pnparentrec=recno()lcoldparentid=oldval("借書證號")pcparentid=lcoldparentidpcparentexpr="借書證號"lcparentid=借書證號iflcparentid<>lcoldparentidlcchildwkarea=riopen("還書登記表")iflcchildwkarea<=0if_triggerlevel=1doriendwith.f.endifattheendofthehighesttriggerlevelselect(lcstartarea)return.f.endifnotabletoopenthechildworkareapcchilddbf=dbf(lcchildwkarea)select(lcchildwkarea)scanfor借書證號=lcoldparentidpnchildrec=recno()pcchildid=借書證號pcchildexpr="借書證號"ifnotllretvalexitendif&¬llretvalllretval=riupdate("借書證號",lcparentid,"借書證信息表")endscangetallofthe還書登記表records=rireuse("還書登記表",lcchildwkarea)ifnotllretvalif_triggerlevel=1doriendwithllretvalendifattheendofthehighesttriggerlevelselect(lcstartarea)returnllretvalendifendifthisparentidchangedif_triggerlevel=1doriendwithllretvalendifattheendofthehighesttriggerlevelselect(lcstartarea)returnllretval**"結束參照完整性更新觸發器"借書證信息表********************************************************************************5數據庫系統性能評價在需求分析局部,我認真閱讀了圖書管理系統的功能簡述,在此根底上把整個系統按處理功能分解成假設干模塊,進行數據分解,畫出了總系統和各模塊的數據流圖、數據項表、數據結構表、數據流表等。得到的需求分析的主要結果,根本反映了用戶的需求。在概念結構設計時,采用自底向上的設計方法。將數據流程圖中的子圖抽象為E-R圖,然后再合并各個分E-R圖。設計出的整體概念結構內部具有一致性,不但能滿足需求分析階段確定的所有要求,而且能準確反映原來的每個子視圖的結構。并且給出了各個實體的描述,對實體和關系進行了調整,消除了冗余實體和冗余關系。在邏輯結構設計時,選擇SQLServer所支持的數據模型,適于描述和表達概念結構的。我們遵循一定原那么進行實體、屬性和聯系的轉換。優化了關系數據模型,根據具體的應用確定范式和關系模式的分解與合并。確定了外模式和數據視圖。在物理結構設計時,設計的存儲結構和存儲方法考慮到了用戶的應用環境情況,為了縮短響應時間優化數據庫的訪問,建立了經常查詢的屬性的索引。并且對數據庫表進行了存儲空間分配和劃分了用戶角色及每個角色的權限,系統平安性提高。最后在數據庫實施設計階段,在具體的DBMS下創立庫,表,視圖,建索引,授權及完整性約束。通過不斷修改完善,我們所設計的圖書管理數據庫系統,符合
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 浙江特殊教育職業學院《防火防爆工程學》2023-2024學年第一學期期末試卷
- 四川希望汽車職業學院《食品冷凍工藝學》2023-2024學年第二學期期末試卷
- 山西省太原市小店區第一中學2025屆高三第二次校模擬考試生物試題含解析
- 湛江市年模擬數學試題(三)
- 2025茶葉采購銷售合同范本
- 2025年求RP農行合同制柜員筆試
- 2025房屋租賃合同范本示例
- 2025年解除合同申請書
- 《2025企業信用借款合同》
- 2025物流配送車輛承包合同
- 2024年新款滅火器采購協議
- 陜西省渭南市澄城縣2024-2025學年七年級上學期11月期中考試數學試題(含答案)
- 律師事務所整體轉讓協議書范文
- 2024初級會計職稱考試104題(附答案)
- 2024年8月CCAA注冊審核員OHSMS職業健康安全管理體系基礎知識考試題目含解析
- 自然資源調查監測勞動和技能競賽
- 中小學班主任工作指南
- 北師大版數學五年級下冊《確定位置》課件教學課件
- 風電場全過程咨詢項目管理規劃方案
- 遼寧葫蘆島協作校2025屆高三第二次聯考生物試卷含解析
- 貴州省旅游產業發展集團有限公司招聘筆試題庫2024
評論
0/150
提交評論