數(shù)據(jù)庫實(shí)例零件銷售中心管理系統(tǒng)概述_第1頁
數(shù)據(jù)庫實(shí)例零件銷售中心管理系統(tǒng)概述_第2頁
數(shù)據(jù)庫實(shí)例零件銷售中心管理系統(tǒng)概述_第3頁
數(shù)據(jù)庫實(shí)例零件銷售中心管理系統(tǒng)概述_第4頁
數(shù)據(jù)庫實(shí)例零件銷售中心管理系統(tǒng)概述_第5頁
已閱讀5頁,還剩68頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)課程設(shè)計(jì)導(dǎo)書程設(shè)計(jì)教學(xué)實(shí)驗(yàn)指導(dǎo)Server本課程的教學(xué)實(shí)驗(yàn)分為兩部分:第一部分是按照實(shí)驗(yàn)指導(dǎo)書所要求的實(shí)驗(yàn)在計(jì)算機(jī)上完成;第二部分是作完上述實(shí)驗(yàn)后按照本課程設(shè)計(jì)教學(xué)實(shí)驗(yàn)指導(dǎo)書做的一個綜合性實(shí)驗(yàn)。通過教學(xué)實(shí)驗(yàn)可使讀者較系統(tǒng)、全面地掌握相關(guān)的教學(xué)內(nèi)容和必要的上機(jī)操作。下面給出三個實(shí)驗(yàn)課題,其中第一個課題還附有參考答案。希望讀者在理解題意的基礎(chǔ)上發(fā)揮自己的創(chuàng)新精神,有創(chuàng)意地完成教學(xué)實(shí)驗(yàn)。如果覺得有參考答案可能會束縛自己的思維,也可選作第二或第三個若有時間,有興趣,可考慮另外兩個課題,也會有所收益.通過完成從用戶需求分析、數(shù)據(jù)庫設(shè)計(jì)到上機(jī)編程、調(diào)試和應(yīng)用等全過程,進(jìn)一步了解和掌握本書中所講解的內(nèi)容。零件交易中心管理系統(tǒng)主要提供顧客和供應(yīng)商之間供應(yīng)商信息、顧客信息以及零件信息。簡介;顧客信息包括顧客號,顧客名、地址、電話;零件信息包括零件號、零件名、重量、顏色、簡介等。此系統(tǒng)可以讓供應(yīng)商增加、刪除和修改所提供的零件產(chǎn)品,還可以讓顧客增加、刪除和修改所需求的零件。交易員可以利用顧客提出的需求信息和供應(yīng)商提出的供應(yīng)信息來提出交易的建議,由供應(yīng)商和顧客進(jìn)行確認(rèn)后即完成這筆交易。完成該系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì):SQl數(shù)據(jù)庫的設(shè)計(jì),并在SQLServer上調(diào)試通過.通過完成從用戶需求分析、數(shù)據(jù)庫設(shè)計(jì)到上機(jī)編程、調(diào)試和應(yīng)用等全過程,進(jìn)一步了解和掌握本書中民航訂票系統(tǒng)主要分為機(jī)場、航空公司和客戶三方的服務(wù)。航空公司提供航線和飛機(jī)的資料,機(jī)場則對在本機(jī)場起飛和降落的航班和機(jī)票進(jìn)行管理,而客以及網(wǎng)上訂票等功能。客戶又可以分為兩類,一類是普通客戶,對于普通客戶只有普通的查詢功能和訂票功能,沒有相應(yīng)的機(jī)票優(yōu)惠,另一種是經(jīng)常旅客,需要辦理注冊手續(xù),但增加了里程積分功能和積分優(yōu)惠要發(fā)送相應(yīng)的信息。完成該系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì);SQL現(xiàn)數(shù)據(jù)庫的設(shè)計(jì),并在SQlServcr上調(diào)試通過。通過完成從用戶需求分析、數(shù)據(jù)庫設(shè)計(jì)到上機(jī)編程、調(diào)試和應(yīng)用等全過程,進(jìn)一步了解和掌握本書中所講解的內(nèi)容.一個簡單的圖書管理系統(tǒng)包括圖書館內(nèi)書籍的信息、學(xué)校在校學(xué)生的信息以及學(xué)生的借閱信息。此系統(tǒng)功能分為面向?qū)W生和面向管理員兩部分,其中學(xué)生可以進(jìn)行借閱、續(xù)借、歸還和查詢書籍等操作,管理員可以完成書籍和學(xué)生的增加,刪除和修改以及對學(xué)生,借閱、續(xù)借、歸還的確認(rèn).完成該系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì);用SQL實(shí)現(xiàn)數(shù)據(jù)庫的設(shè)計(jì),并在SQSQLServer上調(diào)試通過.通過完成從用戶需求分析、數(shù)據(jù)庫設(shè)計(jì)到上機(jī)編程、調(diào)試和應(yīng)用等全過程,進(jìn)一步了解和掌握本書中所講解的內(nèi)容。零件交易中心管理系統(tǒng)主要提供顧客和供應(yīng)商之間完成零件交易的功能,其中包括供應(yīng)商信息、顧客信息以及零件信息。此系統(tǒng)可以讓供應(yīng)商增加、刪除和修改所提供的零件產(chǎn)品,還可以讓顧客增加、刪除和修改所需求的零件。交易員可以利用顧客提出的需求信息和供應(yīng)商提出的供應(yīng)信息來提出交易的建議,由供應(yīng)商和顧客進(jìn)行確認(rèn)后即完成這筆交易。1需求分析:(實(shí)際詳細(xì)調(diào)查)概念(模型)設(shè)計(jì)(實(shí)際到概念)邏輯設(shè)計(jì)(邏輯推導(dǎo))物理設(shè)計(jì)(理論到實(shí)現(xiàn))SQL編程、調(diào)試(測試驗(yàn)證)(實(shí)踐反復(fù)檢驗(yàn))3應(yīng)用程序編程、調(diào)試、測試(用人機(jī)交互前臺開發(fā)工具VB.NET開發(fā)windows和Web應(yīng)用程序) (詳細(xì)地調(diào)查分析系統(tǒng)對象、功能、性能等需求)應(yīng)項(xiàng)修改供應(yīng)項(xiàng)修改個人信息應(yīng)項(xiàng)顧客求項(xiàng)修改需求項(xiàng)求項(xiàng)修改個人信息應(yīng)項(xiàng)修改供應(yīng)項(xiàng)修改個人信息應(yīng)項(xiàng)顧客求項(xiàng)修改需求項(xiàng)求項(xiàng)修改個人信息供應(yīng)商的操作流程圖如圖A1所示。供應(yīng)項(xiàng)顧客的地位和供應(yīng)商幾乎是對稱的,所以功能分類上也很相似.顧客的操作流程圖如圖A2示所。協(xié)議書草案以及顧客簽字字供應(yīng)商顧客提出交易員提出協(xié)議書草案以及顧客簽字字供應(yīng)商顧客提出交易員提出交易員的工作就是提出交易和完成交易。這里需要仔細(xì)考慮的問題是:一個交易如何產(chǎn)生,并如何達(dá)A3來說明這個問題.我們在處理交易的時候可能面臨如下問題:(1)一個交易只能在交易雙方都同意的情況下才可以進(jìn)行,所以數(shù)據(jù)庫中的供求信息只能作為達(dá)成某個交易的基礎(chǔ);(2)交易的雙方可能不同時使用這個系統(tǒng),因此需要系統(tǒng)提供一個雙方交換信息的方式;(3)系統(tǒng)需要提供一種方便系統(tǒng)(交易員)向用戶提出建情況下達(dá)成交易。交易員價格地址M:價格地址M: (從實(shí)踐概括抽象出理論模型E/R)數(shù)據(jù)庫需要表述的信息有以下幾種:系(供應(yīng))名商號價格M:N地址價格M:N地址(求購)價格商地址名號地址價格商地址名號地址可以用E\R模型表述該模型的設(shè)計(jì),E\R圖如圖V7所示。價格價格價格價格ER系模型’的整理轉(zhuǎn)換)通過E\K模型到關(guān)系模型的轉(zhuǎn)化,可以得到如下關(guān)系模式:關(guān)系:關(guān)系關(guān)系關(guān)系(?)求購聯(lián)系轉(zhuǎn)換為關(guān)系每個關(guān)系模式的主鍵碼都用下劃線標(biāo)出。同時,對于從聯(lián)系導(dǎo)出的關(guān)系Supply(供應(yīng)),的實(shí)體集的主健碼作為自己的鍵碼,必須符合外鍵碼之間,不存在直接的約束,所以可以存在沒有供應(yīng)商供應(yīng)同時也沒有顧客求購的零件。 (從理論‘關(guān)系模型’到實(shí)現(xiàn)\實(shí)施‘?dāng)?shù)據(jù)庫建立’) (物理文件的安排和建立索引)D實(shí)現(xiàn)該設(shè)計(jì)的環(huán)境為Windows2000PerfessinalMSSQLServer0.0EPartIDsmallintIDENTITY(1,1)PRIMARYKEYCLUSTERED,archarNamevarchar20)NOTNULL,WeightintDEFAULT,trotextABLEProviderIDsmallintIDENTITY(1,1)KEYCLUSTEREDNamevarchar20)NOTNULL,passwordvarchar(8)NOTNULL,Addressvarchar(30),artrotextBLECustomerIDSmallintIDENTITY(1,1)KEYCLUSTEREDNamevarcharNOTNULL,Addressvarchar0),TeLVarchar20))SupplyDSmallintoviderIDsmallintintCONSTRAINTPK_SUPPLYRIMARYKEYCLUSTEREDPartIDProviderIDFK_SUPPLY_PARTIDFOREIGNKEY(PartID)FERENCESPartIDFK_SUPPLY_PROVIDERIDFOREIGNKEYProviderIDREFERENCESProviderID)OfferToBuyIDsmallintPartIDSmallint,Priceint,tityintPK_OFFERTOBUYPRIMARYKEYCustomerIDPartIDFERTOBUYCUSTOMERIDustomerIDNFERENCESCustomerIDKOFFERTOBUYFOREIGNKEYPartIDRENCESPartIDBusinessstomerIDsmallintoviderIDsmallintPartIDSmallint,Priceint,tityintCONSTRAINTPK_BUSINEssPRIMARYKEYDCuscomerIDProviderIDPartIDSINESSCUSTOMERIDustomerIDFERENCESCustomerIDSINESSPROVIDERlDroviderIDFERENCESProviderIDNNFKBUSINESSPARTIDFOREIGNKEY(PartID)EFERENCESPartIDINSERTINTOProvider(Name,password,根據(jù)這個ID采查詢和修改供應(yīng)商的數(shù)據(jù)。erDELETEProviderWHERE(ID=#ID);teUPdateProviderntroWHERE(ID=#ID);supplyitem#Quantily);etesupplyitemESupPlyEREPartlDPartIDProvideID=#ProviderlD);atesupplyitemUPDATESupplySETPrice#PriceantityEREPartlDPartIDoviderIDProviderID很明顯,系統(tǒng)并沒有提供面向供應(yīng)商修改零件信息的接口,所以供應(yīng)商提供的零件必須已經(jīng)在零件表中存在;可以這祥假設(shè),交易所的管理員負(fù)責(zé)更新零件信息,而供應(yīng)商可以向交易所申請?jiān)黾幽撤N零件的信息.事實(shí)上顧客也可以提出這樣的要求。據(jù)這個ID來查詢和修改顧客的數(shù)據(jù).erETECustomerWHERE<ID=#ID);teUPDATECustomerSet(Name=#Name,WHERE(1D=#ID);OfferToBuyitemINSERTINTOOfferToBuy(PartID,CustomeriD,eteOfferToBuyitermOfferToBuyWHEREPartlDPartlDANDustomerlDCustomerIDmUPDATEOfferToBuyntityEREPartlDPartIDustomerID針對需求分析中提出的問題,我們提出了“協(xié)議書”的解決方案,方案的說明如下:(1)每個交易在達(dá)成以前都作為協(xié)議書保存在數(shù)據(jù)庫中,協(xié)議書具有和交易一樣的完備信息,可以在條件成熟的情況下轉(zhuǎn)為一個達(dá)成的交易;(2)協(xié)議書只有在供應(yīng)商和顧客都簽字的情況下才就生效,表明一個交易的達(dá)成,數(shù)據(jù)庫中的數(shù)據(jù)將同時予以修改;(3)協(xié)議書可以由供應(yīng)商、顧客或者交易員中的任意一個人提出申請。當(dāng)協(xié)議書在雙方?jīng)]有都簽字前,是,由交易員進(jìn)行處理;(4)協(xié)議書有可能在轉(zhuǎn)成交易的過程中失敗,因?yàn)樵诮灰走_(dá)成以前,數(shù)據(jù)庫中的數(shù)據(jù)有可能因?yàn)槠渌灰锥兓?,一個協(xié)議書可能失效,這是允許的。根據(jù)以上分析,對數(shù)據(jù)庫的模型作一些修改,增加協(xié)議書表,其關(guān)系模式如下:對應(yīng)的SQL描述為:BLEreementCustomermsmallint,PartlDsmallint,Priceint,Quantityint,CustomerSignint,erSignPK_AGREEMENTPRIMARYKEYFK_AGREEMENT_CUSTOMERIDFOREIGNustomerIDREFERENCESCustomer(ID),CONSTRAINTFK_AGREEMENT_PROVlDERIDFOREIGNEYProviderIDREFERENCESProvider(ID),F(xiàn)KAGREEMENTPARTIDFOREIGNKEY(PartID)RENCESPartID與上述其他操作相比,對交易的操作對數(shù)據(jù)完整性要求比較高,其中需要注意的地方是;顧客)的數(shù)據(jù)因兩個交易而同時修改;nt持這些修改的原子性;很顯然,這些要求正是對于一個事務(wù)(transaction)的要求,所以可以用一個事務(wù)來完成簽發(fā)一個協(xié)議的操作。事務(wù)的描述如下:GREEMENTxproviderIDint,xcustomeridint,xpartlDintEVARCHARTransNamePassAgreementsNameTIONsNameDEClARExpriceINT,qUANTITYintquantityquantityFROMAgreementEprIVIderID=xproviderIDANDerIDxcustomerIDANDPanIDxpartIDRTINTOUPDATESupplySETantityxquantityEProviderIDxprividerIDANDpartIDxpartIDIF(SELECTquantityFROMEProideridxproviderANDpartID=xPartID)<0LBACKTlONxTranSNameDELETEFROMSupplyEREquantityUPDATEOfferToBuySETanttityxquantityEDxcustomeridANDpartlDxpartIDIF(SELECTquandtityFROMEerIDxCustomerIDANDpartIDxpartlDLBACKsNameEyWHEREquantitysName為了使用方便,這里定義了一個存貯過程;功能是greementtBusinessOfferTOBUY項(xiàng),更加重要的是,這里考慮到了非法的Agreement的情況,在一段時間后,由于供應(yīng)商或把這個事務(wù)廢除,所以,這里檢查了Supply表和OfferToBuy表中的數(shù)據(jù),確保數(shù)據(jù)仍然正確。另外交易員,或者說交易所必須承擔(dān)的一項(xiàng)任務(wù)沒有給予他們修改零件列表的權(quán)利,所以他們必須根據(jù)數(shù)據(jù)庫中已有的項(xiàng)更新自己的供求信息。由于這個數(shù)據(jù)庫實(shí)際上更加偏重于模型化,而不是一個實(shí)際環(huán)境中的數(shù)據(jù)庫,所以在實(shí)現(xiàn)應(yīng)用模型的時候我們還需要對這個數(shù)據(jù)庫的模型作一些修改。Transact-SQL的語法,因此以上的數(shù)據(jù)庫操作都是在SQLSERVER2000上測試通過的。(1.實(shí)驗(yàn)方案設(shè)計(jì)2.測試,查找錯誤校正錯誤,檢查是) (1)輸入數(shù)據(jù)設(shè)計(jì):1)插入零件信息;----1ected2)插入供應(yīng)商信息:hing---1ected3)插入顧客信息:ustomerwherename---1ted4)插入供應(yīng)商供應(yīng)信息:5)插入顧客需求信息:6)插入?yún)f(xié)議信息:insertintoAgreement(CustomerID,ProviderID, (2)執(zhí)行交易操作設(shè)計(jì):1)執(zhí)行交易存儲過程PASS_AGREEMENT,參(后面的三個參數(shù)分別對應(yīng)前面選擇出的供應(yīng)商2)結(jié)果:顯示交易后供應(yīng)信息和需求信息:erlD----ectedselectQuantityfromOfferToBuywherePartlD=landCustomerID;-----ected3)分析結(jié)果:首先,保存在Supply表中1D為1的零件供應(yīng)量為100(參見Supply表的Insert語句),保存在交易成功。4)再次執(zhí)行交易操作:eletefromBusinessMicrosoftSQLServerScripting*//*Server:7523TEACHER*//*Database:商品交易系統(tǒng)*//*CreationDate02-10-一八9:46:43*/TETABLEdbocustomer[id][smallint]IDENTITY(1,1)NOTNULL,LLLALTERTABLE[dbo].[customer]HNOCHECKADDCONSTRAINT[PK_customer]PRIMARYEYCLUSTERED(ONPRIMARYTETABLEdbopart[id][smallint]IDENTITY(1,1)NOTNULL,LLghtintNULLALTERTABLE[dbo].[part]WITHNOCHECKADDCONSTRAINT[PK_part]RIMARYKEYCLUSTERED(ONPRIMARYTETABLEdboprovider[id][smallint]IDENTITY(1,1)NOTNULL,LLTNULLLALTERTABLEHNOCHECKADDrMARYKEY(ONPRIMARYETABLEdbosupplyNULLLTETABLEdbobussinessstomerIDsmallintNOTNULLNULLLCREATETABLE[dbo].[offertobuy](NULLicesmallintNULLLALTERTABLE[dbo].[bussiness]HNOCHECKADDCONSTRAINT[PK_bussiness]RIMARYKEYCLUSTERED(ONPRIMARYALTERTABLE[dbo].[offertobuy]WITHNOCHECKADDCONSTRAINT[PK_offertobuy]RIMARYKEYCLUSTERED(ONPRIMARYALTERTABLE[dbo].[supply]HNOCHECKADDCONSTRAINT

溫馨提示

  • 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

提交評論