數(shù)據(jù)庫房屋銷售管理系統(tǒng)_第1頁
數(shù)據(jù)庫房屋銷售管理系統(tǒng)_第2頁
數(shù)據(jù)庫房屋銷售管理系統(tǒng)_第3頁
數(shù)據(jù)庫房屋銷售管理系統(tǒng)_第4頁
數(shù)據(jù)庫房屋銷售管理系統(tǒng)_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、【精品文檔】如有侵權(quán),請聯(lián)系網(wǎng)站刪除,僅供學習與交流數(shù)據(jù)庫房屋銷售管理系統(tǒng).精品文檔.數(shù)據(jù)庫課程設計房屋銷售管理系統(tǒng)姓 名:胡玖龍學 號:201320070142學 院:信息工程學院專 業(yè):計算機科學與技術班 級:1320701 指導教師:李榮 2015年 1 月 14 日一、課程設計的目的和意義數(shù)據(jù)庫原理及應用課程設計是實踐性教學環(huán)節(jié)之一,是數(shù)據(jù)庫原理及應用課程的輔助教學課程。通過課程設計,使學生掌握數(shù)據(jù)庫的基本概念,結(jié)合實際的操作和設計,鞏固課堂教學內(nèi)容,使學生掌握數(shù)據(jù)庫系統(tǒng)的基本概念、原理和技術,將理論與實際相結(jié)合,應用現(xiàn)有的數(shù)據(jù)建模工具和數(shù)據(jù)庫管理系統(tǒng)軟件,規(guī)范、科學地完成一個小型數(shù)據(jù)

2、庫的設計與實現(xiàn),把理論課與實驗課所學內(nèi)容做一綜合,并在此基礎上強化學生的實踐意識、提高其實際動手能力和創(chuàng)新能力。要求:通過設計一完整的數(shù)據(jù)庫,使學生掌握數(shù)據(jù)庫設計各階段的輸入、輸出、設計環(huán)境、目標和方法。熟練掌握兩個主要環(huán)節(jié)概念結(jié)構(gòu)設計與邏輯結(jié)構(gòu)設計;熟練的使用SQL語言實現(xiàn)數(shù)據(jù)庫的建立、應用和維護。二、設計正文1.需求分析1.1基本功能需求客戶購買或預定房屋,房屋銷售人員根據(jù)用戶的需求為用戶辦理相關手續(xù)。購銷管理包含以下幾方面的信息。 客戶基本信息客戶在購買或預定房屋的時候,每位用戶都有唯一的編號,客戶的基本信息包括姓名、性別、年齡、聯(lián)系方式、身份證號。 員工基本信息每位員工在入職的時候有唯

3、一的員工號,根據(jù)分工的不同,還有工作部門及職位這個屬性。當然還有姓名、性別、聯(lián)系方式、年齡、身份證號這些基本屬性。 房屋基本信息每個房屋有唯一的房屋編號,基本信息包含房屋的面積、戶型、小區(qū)、棟、號、價格和狀態(tài),狀態(tài)分為“待售”、“已預訂”和“已售出”。 預定房屋信息客戶可以進行房屋的預定,預定包括預定流水號,客戶編號,員工號,房屋編號,預付金額,未付金額,預定時間。 購買的基本信息客戶可以購買房屋,購買包括購買流水號,客戶編號,員工號,房屋編號,付款金額,購買時間。付款金額一般等于房屋價格。1.2用戶對系統(tǒng)的要求1.2.1房屋銷售管理人員 信息要求房屋銷售管理人員能查詢上面提到的客戶、銷售人員

4、、房屋的所有相關信息,包括預定房屋的基本信息,購買房屋的基本信息。以利于對整個銷售樓盤的全面管理。 處理要求當客戶的信息發(fā)生變化時,房屋銷售管理人員能對其進行修改。比如,客戶更換手機號,或其他變更,能修改客戶的信息。當房屋的信息放生變化時,房屋銷售管理人員能對其進行修改。比如,房屋降價,房屋銷售管理人員能對價格進行修改。當銷售人員的信息放生變化時,如升職,房屋銷售管理人員能對其進行修改。 安全性與完整性要求安全性要求1.系統(tǒng)應設置訪問用戶的標識以鑒別是否是合法用戶,并要求合法用戶設置其密碼,保證用戶身份不被盜用;2.系統(tǒng)應對不同的數(shù)據(jù)設置不同的訪問級別,限制訪問用戶可查詢和處理數(shù)據(jù)的類別和內(nèi)容

5、;3.系統(tǒng)應對不同用戶設置不同的權(quán)限,區(qū)分不同的用戶,如區(qū)分房屋銷售人員和房屋銷售管理人員。完整性要求1.各種信息記錄的完整性,信息記錄內(nèi)容不能為空;2.各種數(shù)據(jù)間相互的聯(lián)系的正確性;3.相同的數(shù)據(jù)在不同記錄中的一致性。1.2.2房屋銷售人員 信息要求本樓盤的房屋銷售人員能所有樓盤的信息,能查詢“待售”狀態(tài)的房屋信息,能查詢客戶的基本信息、修改客戶的信息。能查詢自己的銷售記錄。能夠進行預定、購買操作。 處理要求當客戶的信息發(fā)生變化時,房屋銷售人員能對其進行修改??蛻糍徺I/預定房屋時,銷售人員能添加預定/購買記錄。1.2.3系統(tǒng)數(shù)據(jù)處理 狀態(tài)更改當客戶預定房屋時,銷售人員添加預定記錄后,系統(tǒng)能自

6、動將預定房屋的狀態(tài)從“待售”修改為“已預訂”。當客戶購買房屋時,銷售人員添加購買記錄后,系統(tǒng)能自動將購買房屋的狀態(tài)從“待售”或“已預訂”修改為“已售出”。 數(shù)據(jù)計算當客戶預定房屋時,銷售人員添加記錄后,系統(tǒng)能自動根據(jù)預付金額和房屋價格計算出未付金額。2. E-R圖及關系模式:2.1 E-R圖:根據(jù)需求分析,畫出系統(tǒng)E-R圖:2.2關系模式:將E-R圖轉(zhuǎn)換為關系模式,有下劃線的為主鍵或外鍵:客戶(客戶編號,姓名,性別,身份證號,聯(lián)系電話)員工(員工號,姓名,性別,職位,身份證號,聯(lián)系電話)房屋(房屋編號,戶型,面積,價格,棟,單元,號,房屋狀態(tài))預定(流水號,客戶編號,員工號,房屋編號,預付金額

7、,預定時間)購買(流水號,客戶編號,員工號,房屋編號,購買金額,購買時間)3.具體實現(xiàn)3.1建立數(shù)據(jù)庫create database 房屋銷售管理on( name=house_data,filename='D:house.mdf',size=10,maxsize=50,filegrowth=5log on(name=house_log,filename='D:house.ldf',size=5,maxsize=25,filegrowth=5建立一個名為 房屋銷售管理 的數(shù)據(jù)庫3.2創(chuàng)建各實體表及關系表客戶Customer:屬性屬性名類型長度約束客戶編號CNoch

8、ar20主鍵姓名CNamechar10非空性別CSexchar4男或女年齡CAgeint大于零聯(lián)系方式CTelchar20非空身份證號CIdchar1818位數(shù)字create table Customer(CNo char(20) constraint C_prim primary key,CName char(10) not null,CSex char(4) constraint Sex not null check(CSex='男' or CSex='女'),CAge int constraint C_Age not null check (CAge>

9、;0),CTel char(20) not null,CId char(18) constraint LEN_CID check(len(CId)=18)員工Staff:屬性屬性名類型長度約束員工號SNochar20主鍵姓名SNamechar10非空性別SSexchar4男或女年齡SAgeint大于零部門SDepchar20非空職位SPostchar20非空聯(lián)系方式STelchar20非空身份證號SIdchar1818位數(shù)字create table Staff(SNo char(20) constraint S_prim primary key,SName char(10) not null,

10、SSex char(4) constraint Sex not null check(SSex='男' or SSex='女'),SAge int constraint S_Age not null check (SAge>0),SDep char(20) not null,SPost char(20) not null,STel char(20) not null,SId char(18) constraint LEN_SID check(len(SId)=18)房屋House:屬性屬性名類型長度約束房屋編號HNochar20主鍵小區(qū)HAchar20非空

11、棟HBchar10非空號HCchar10非空戶型HTypechar20非空面積HSizeint大于零房屋狀態(tài)HStatechar20待售'或已預訂或已售出價格HPricefloat大于零create table House(HNo char(20) constraint H_prim primary key,HA char(20) not null,HB char(10) not null,HC char(10) not null,HType char(20) not null,HSize int constraint H_Size not null check(HSize>0)

12、,HState char(20) constraint H_State not null check(HState='待售' or HState='已預訂' or HState='已售出') default '待售',Hprice float constraint H_Price not null check(HPrice>0)預定Reserve:屬性屬性名類型長度約束預定流水號RNochar20主鍵客戶編號CNochar20非空姓名SNamechar10非空房屋編號HNochar20外鍵預付金額RMoneyfloat大于零

13、未付金額RRestfloat大于或等于零預定日期RDatechar10非空其中未付金額由存儲過程根據(jù)預付金額和房屋價格自動計算填入create table Reserve(RNo char(20) constraint R_prim primary key,CNo char(20) constraint R_C_prim foreign key references Customer(CNo),SNo char(20) constraint R_S_prim foreign key references Staff(SNo),HNo char(20) constraint R_H_prim f

14、oreign key references House(HNo),RMoney float constraint R_Money not null check(RMoney>0),RRest float constraint R_Rest not null check(RRest>=0) default 0,Rdate char(10) not null )購買Buy:屬性屬性名類型長度約束購買流水號BNochar20主鍵客戶編號CNochar20非空姓名SNamechar10非空房屋編號HNochar20外鍵購買金額BMoneyfloat非空購買日期BDatachar10非空cr

15、eate table Buy(BNo char(20) constraint B_prim primary key, CNo char(20) constraint B_C_prim foreign key references Customer(CNo),SNo char(20) constraint B_S_prim foreign key references Staff(SNo),HNo char(20) constraint B_H_prim foreign key references House(HNo),BMoney float constraint B_Money not n

16、ull check(BMoney>=0) default 0,Bdate char(10) not null3.3創(chuàng)建視圖:所有客戶信息視圖(客戶編號,名字,性別,年齡,聯(lián)系方式,身份證號)create view CustomerView(CNo,CName,CSex,CAge ,CTel,CId)asselect CNo,CName,CSex,Cage,CTel,CIdFROM Customer所有員工信息視圖(員工號,名字,性別,年齡,部門,職位,聯(lián)系方式,身份證號)create view StaffView(SNo,SName,SSex,SAge,SDep,SPost,STel,S

17、Id)asselect SNo,SName,SSex,SAge,SDep,SPost,STel,SIdfrom Staff待售房屋視圖(房屋編號,小區(qū),棟,號,戶型,面積,價格)create view ForSaleHouse (HNo,HA,HB,HC,HType,HSize,HPrice)asselect HNo,HA,HB,HC,HType,HSize,HPricefrom Housewhere HState='待售'預定房屋信息視圖(預定流水號,客戶編號,客戶名字,客戶聯(lián)系方式,員工號,員工名字,員工聯(lián)系方式,房屋編號,小區(qū),棟,號,戶型,面積,價格,預定金額,未付金額

18、,預定時間)create view ReserveView(RNo,CNo,CName,CTel,SNo,SName,STel,HNo,HA,HB,HC,HType,HSize,HPrice,RMoney,RRest,Rdate)asselect RNo,Reserve.CNo,CName,CTel,Reserve.SNo,SName,STel,Reserve.HNo,HA,HB,HC,HType,HSize,HPrice,RMoney,RRest,Rdatefrom Reserve,Customer,Staff,Housewhere Reserve.CNo=Customer.CNo and

19、Reserve.SNo=Staff.SNo and Reserve.HNo=House.HNo購買房屋信息視圖(購買流水號,客戶編號,客戶名字,客戶聯(lián)系方式,員工號,員工名字,員工聯(lián)系方式,房屋編號,小區(qū),棟,號,戶型,面積,價格,購買金額,購買時間)create view BuyView(BNo,CNo,CName,CTel,SNo,SName,STel,HNo,HA,HB,HC,HType,HSize,HPrice,BMoney, Bdate)asselect BNo,Buy.CNo,CName,CTel,Buy.SNo,SName,STel,Buy.HNo,HA,HB,HC,HType,

20、HSize,HPrice,BMoney,Bdatefrom Buy,Customer,Staff,Housewhere Buy.CNo=Customer.CNo and Buy.SNo=Staff.SNo and Buy.HNo=House.HNo3.4存儲過程:預定房屋:create procedure ReserveHouse(RNo char(20),CNo char(20),SNo char(20),HNo char(20),RMoney float,RDate char(10)asif (select House.HState from House where House.HNo=H

21、No)='待售')begininsert into Reserve(RNo,CNo,SNo,HNo,RMoney,Rdate) values(RNo,CNo,SNo,HNo,RMoney,RDate)update Houseset HState='已預定'from Housewhere House.HNo=HNoupdate Reserveset RRest=Hprice-RMoneyfrom House,Reservewhere RNo=RNo and House.HNo=HNoendelsebeginprint'該房屋已預定或已售出'end功

22、能:根據(jù)HNo判斷房屋狀態(tài)是不是待售狀態(tài),若是,則在預定表中插入信息;否則,則提示“該房屋已預定或已售出”,并放棄插入操作。購買房屋:create procedure BuyHouse(BNo char(20),CNo char(20),SNo char(20),HNo char(20),BDate char(10)asif (select House.HState from House where House.HNo=HNo)!='已售出')begininsert into Buy(BNo,CNo,SNo,HNo ,Bdate) values(BNo,CNo,SNo,HNo,

23、BDate)update Houseset HState='已售出'from Housewhere House.HNo=HNodelete from Reservewhere Reserve.HNo=HNoendelsebeginprint'該房屋已售出'end功能:根據(jù)HNo判斷房屋狀態(tài)是不是已售出狀態(tài),若為否,則在購買表中插入信息,并在預定表中刪除對應信息;否則,則提示“該房屋已售出”,并放棄插入操作。插入客戶信息:create procedure InsertCustomer(CNo char(20), CName char(10), CSex char(

24、4), CAge int, CTel char(20),CId char(18)='無'asinsert into Customer values(CNo,CName,CSex,CAge,CTel,CId)功能:在客戶表中插入新的客戶信息。插入員工信息:create procedure InsertStaff(SNo char(20), SName char(10), SSex char(4), SAge int, SDep char(20),SPost char(20),STel char(20),SId char(18)asinsert into Staff values(

25、SNo,SName,SSex,SAge,SDep,SPost,STel,SId)功能:在員工表中插入新的員工信息。插入房屋信息:create procedure InsertHouse(HNo char(20),HA char(20),HB char(10),HC char(10),HType char(20), HSize int,HState char(20),Hprice floatas insert into House values(HNo,HA,HB,HC,HType,HSize,HState,HPrice)功能:在房屋表中插入新的房屋信息。3.5觸發(fā)器:觸發(fā)器1:create t

26、rigger NewReserveHouse on Reserveinstead of insertasif not exists(select * from inserted where CNo in (select CNo from Customer) )print '客戶表中沒有該客戶信息,拒絕插入!'rollback transaction功能:保證在預定表中插入新記錄時,客戶信息必須已經(jīng)存在于客戶表中。觸發(fā)器2:create trigger NewBuyHouse on Buyinstead of insertasif not exists(select * from

27、 inserted where CNo in (select CNo from Customer) )print '客戶表中沒有該客戶信息,拒絕插入!'rollback transaction功能:保證在購買表中插入新記錄時,客戶信息必須已經(jīng)存在于客戶表中。觸發(fā)器3:create trigger DelR on Reserveafter deleteasif (select HState from House where House.HNo in (select HNo from deleted) )='已預定')begindelete from Customerwhere Customer.CNo in (select CNo from deleted)update Houseset HState='待售'where House.HNo in (select HNo from deleted)end功能:刪除預定表中某一個預定記錄時,如果是因為客服付清未付款,購買了房屋,則只進行原操作;如果是因為客戶取消預定,則同時刪除客戶表中此客戶,并將此房屋狀態(tài)重新改為待售。觸發(fā)器4:create trigger

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論