数据库房屋销售管理系统_第1页
数据库房屋销售管理系统_第2页
数据库房屋销售管理系统_第3页
数据库房屋销售管理系统_第4页
数据库房屋销售管理系统_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库课程设计房屋销售管理系统姓 名:胡玖龙学 号:201320070142学 院:信息工程学院专 业:计算机科学与技术班 级:1320701指导教师:李荣2015年 1月14日一、课程设计的目的和意义数据库原理及应用课程设计是实践性教学环节之一,是数据库原理及应用课程的辅助教学课程。通过课程设计,使学生掌握数据库的基本概念,结合实际的操作和设计,巩固课堂教学内容,使学生掌握数据库系统的基本概念、原理和技术,将理论与实际相结合,应用现有的数据建模工具和数据库管理系统软件, 规范、 科学地完成一个小型数据库的设计与实现,把理论课与实验课所学内容做一综合, 并在此基础上强化学生的实践意识、 提高其

2、实际动手能力和创新能力。要求:通过设计一完整的数据库,使学生掌握数据库设计各阶段的输入、输出、设计环境、目标和方法。熟练掌握两个主要环节概念结构设计与逻辑结构设计;熟练的使用 SQL 语言实现数据库的建立、应用和维护。二、设计正文1 .需求分析1.1 基本功能需求客户购买或预定房屋,房屋销售人员根据用户的需求为用户办理相关手续。购销管理包含以下几方面的信息。 客户基本信息客户在购买或预定房屋的时候,每位用户都有唯一的编号,客户的基本信息包括姓名、性别、年龄、联系方式、身份证号。 员工基本信息每位员工在入职的时候有唯一的员工号,根据分工的不同,还有工作部门及职位这个属性。当然还有姓名、性别、联系

3、方式、年龄、身份证号这些基本属性。 房屋基本信息每个房屋有唯一的房屋编号,基本信息包含房屋的面积、户型、小区、栋、号、价格和状态,状态分为“待售” 、 “已预订”和“已售出” 。 预定房屋信息客户可以进行房屋的预定,预定包括预定流水号,客户编号,员工号,房屋编号,预付金额,未付金额,预定时间。 购买的基本信息客户可以购买房屋,购买包括购买流水号,客户编号,员工号,房屋编号,付款金额,购买时间。付款金额一般等于房屋价格。1.2 用户对系统的要求1.2.1 房屋销售管理人员 信息要求房屋销售管理人员能查询上面提到的客户、销售人员、房屋的所有相关信息,包括预定房屋的基本信息,购买房屋的基本信息。以利

4、于对整个销售楼盘的全面管理。 处理要求当客户的信息发生变化时,房屋销售管理人员能对其进行修改。比如,客户更换手机号,或其他变更,能修改客户的信息。当房屋的信息放生变化时,房屋销售管理人员能对其进行修改。比如,房屋降价,房屋销售管理人员能对价格进行修改。当销售人员的信息放生变化时,如升职,房屋销售管理人员能对其进行修改。 安全性与完整性要求安全性要求1 .系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码, 保证用户身份不被盗用;2 .系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;3 .系统应对不同用户设置不同的权限,区分不同的用户, 如区分

5、房屋销售人员和房屋销售管理人员。完整性要求1 .各种信息记录的完整性,信息记录内容不能为空;2 .各种数据间相互的联系的正确性;3 .相同的数据在不同记录中的一致性。1.2.2 房屋销售人员 信息要求本楼盘的房屋销售人员能所有楼盘的信息,能查询“待售”状态的房屋信息,能查询客户的基本信息、 修改客户的信息。能查询自己的销售记录。能够进行预定、购买操作。 处理要求当客户的信息发生变化时,房屋销售人员能对其进行修改。客户购买 / 预定房屋时,销售人员能添加预定 / 购买记录。1.2.3 系统数据处理 状态更改当客户预定房屋时, 销售人员添加预定记录后, 系统能自动将预定房屋的状态从 “待售” 修改

6、为 “已预订” 。当客户购买房屋时,销售人员添加购买记录后,系统能自动将购买房屋的状态从“待售”或“已预订”修改为“已售出” 。 数据计算当客户预定房屋时,销售人员添加记录后,系统能自动根据预付金额和房屋价格计算出未付金额。2. E-R 图及关系模式:2.1 E-R 图:根据需求分析,画出系统E-R图:2.2 关系模式:将E-R图转换为关系模式,有下划线的为主键或外键:客户(客户编号,姓名,性别,身份证号,联系电话)员工(员工号,姓名,性别,职位,身份证号,联系电话)房屋(房屋编号,户型,面积,价格,栋,单元,号,房屋状态)预定(流水号,客户编号,员工号,房屋编号,预付金额,预定时间) 购买(

7、流水号,客户编号,员工号,房屋编号,购买金额,购买时间)3具体实现3.1 建立数据库create database房屋销售管理on(name=house_data,filename='D:house.mdf',size=10,maxsize=50,filegrowth=5) log on ( name=house_log,filename='D:house.ldf',size=5,maxsize=25, filegrowth=5 )建立一个名为房屋销售管理的数据库3.2 创建各实体表及关系表客户 Customer属性属性名长度约束客户编号CNochar20主键姓

8、名CNamechar10非空性别CSexchar4'男'或'女'年龄CAgeintr 廿零联系方式CTelchar20非空身份证号CIdchar1818位数字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

9、 (CAge>0),CTel char(20) not null,CId char(18) constraint LEN_CID check(len(CId)=18)员工Staff:属性属性名整长度约束员工号SNochar20主键姓名SNamechar10非空性别SSexchar4'男'或'女'年龄SAgeintK零部门SDepchar20非空职位SPostchar20非空联系方式STelchar20非空身份证号SIdchar1818位数字create table Staff( SNo char(20) constraint S_prim primary

10、key,SName char(10) not null,SSex char(4) constraint Sex not null check(SSex='W' 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:属性属性名长度约束房

11、屋编号HNochar20主键小区HAchar20非空栋HBchar10非空号HCchar10非空户型HTypechar20非空面积HSizeintK零房屋状态HStatechar20待售或已预 订或已售出价格HPricefloatK零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 n

12、ull check(HSize>0),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外

13、键预付金额RMoneyfloat大于零未付金额RRestfloatr大于或等于零:预定日期RDatechar10非空其中未付金额由存储过程根据预付金额和房屋价格自动计算填入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(2

14、0) constraint R_H_prim foreign 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外键购买金额BMoneyfl

15、oat非空购买日期BDatachar10非空create 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

16、 constraint B_Money not null check(BMoney> = 0) default 0, Bdate char(10) not null3.3 创建视图:所有客户信息视图(客户编号,名字,性别,年龄,联系方式,身份证号)create view CustomerView(CNo,CName,CSex,CAge ,CTel,CId)asselect CNo,CName,CSex,Cage,CTel,CIdFROM Customer所有员工信息视图(员工号,名字,性别,年龄,部门,职位,联系方式,身份证号)create view StaffView(SNo,SNam

17、e,SSex,SAge,SDep,SPost,STel,SId)asselect SNo,SName,SSex,SAge,SDep,SPost,STel,SIdfrom StaffStaff_ |*列, SNo SName 55ex 鼬要 SDep SPost STd £ld待售房屋视图(房屋编号,小区,栋,号,户型,面积,价格 )create view ForSaleHouse (HNo,HA,HB,HC,HType,HSize,HPrice) asselect HNo,HA,HB,HC,HType,HSize,HPricefrom Housewhere HState='待

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,RM

19、oney,RRest,Rdatefrom Reserve,Customer,Staff,Housewhere Reserve.CNo=Customer.CNo and Reserve.SNo=Staff.SNo and Reserve.HNo=House.HNo国| Reserve国 Customer"颜有列 RNdCNo粉HNomn sta't匚F饰有亦"aioI。SManeS5ex口£叱Ilf lame匚包养施 Ho-u »一工饰有列DFNd。HA购买房屋信息视图(购买流水号,客户编号,客户名字,客户联系方式,员工号,员工名字,员工联系方 式

20、,房屋编号,小区,栋,号,户型,面积,价格,购买金额,购买时间)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,HSize,HPrice,BMoney,Bdate from Buy,Customer,Staff,Housewhere Buy.CNo=Customer.CNo and Buy.SNo

21、=Staff.SNo and Buy.HNo=House.HNoHD Customer卜惭有副CNdCNane_ CSex画 House_JCAg&惭有列)mo5 HA丁 HB HC3.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=HNo)=' 待售') beginin

22、sert 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功能:根据HNo 判断房屋状态是不是待售状态,若是,则在预定

23、表中插入信息;否则,则提示“该房屋已预定或已售出” ,并放弃插入操作。购买房屋: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,BDate) update House

24、set HState=' 已售出'from Housewhere House.HNo=HNodelete from Reservewhere Reserve.HNo=HNoendelsebeginprint'该房屋已售出end功能:根据HNo 判断房屋状态是不是已售出状态,若为否,则在购买表中插入信息,并在预定表中删除对应信息;否则,则提示“该房屋已售出” ,并放弃插入操作。插入客户信息:create procedure InsertCustomer( CNo char(20),CName char(10),CSex char(4),CAge int, CTel cha

25、r(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(SNo,SName,SSex,SAge,SDep,SPos

26、t,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 float asinsert into House values(HNo,HA,HB,HC,HType,HSize,HState,HPrice)功能:在房屋表中插入新的房屋信息。3.5触发器:触发器 1:create trigger NewReserveHouse on Re

27、serve instead of insertas if not exists( select * from inserted where CNo in (select CNo from Customer) )print '客户表中没有该客户信息,拒绝插入! 'rollback transaction功能:保证在预定表中插入新记录时,客户信息必须已经存在于客户表中。触发器 2:create trigger NewBuyHouse on Buy instead of insertasif not exists( select * from inserted where CNo i

28、n (select CNo from Customer) )print '客户表中没有该客户信息,拒绝插入! 'rollback transaction功能:保证在购买表中插入新记录时,客户信息必须已经存在于客户表中。触发器 3:create trigger DelR on Reserveafter deleteasif (select HState from House where House.HNo in (select HNo from deleted) )=' 已预定 ') begindelete from Customerwhere Customer.

29、CNo in (select CNo from deleted)update House set HState='待售'where House.HNo in (select HNo from deleted) end功能:删除预定表中某一个预定记录时,如果是因为客服付清未付款,购买了房屋,则只进行原操作;如果是因为客户取消预定,则同时删除客户表中此客户,并将此房屋状态重新改为待售 。触发器 4: create trigger DelB on Buyafter deleteasbegindelete from Customerwhere Customer.CNo in (sele

30、ct CNo from deleted)update House set HState='待售'where House.HNo in (select HNo from deleted) end功能:删除购买表中某一个购买记录时,同时删除客户表中此客户,并将此房屋状态重新改为待售'三.实例演示:添加数据:用InsertCustomer存储过程在 Customer表填入数据:0;2_与之二二匚一小二二工上二匚3。工.李英,女,35,12345S"S912345«7e9execute I三巴-t二二m二亡兀=C3?32 .王大山,

31、里 42,1392222322.12345678911113.1111 execute ”5己:T 二二3T5三V 匚。口"弓长用K 弓 41123456709222222222 execute Insert Cus cm r.陈伟重,里,57123123123123123131execute 工Cm五£一三 C”,许红霞,女,2露 139555s553, 123123123123154541 csecJte £-笈_瑟依J羔忌底J. C?''6 王一叱,女坐下 13966666S66 12512

32、351651516 execute IertCusroiner COOO', 6112345645fil561fi5156 execjte 工二m三二t二二m二u兀三二之1二口土,田嵯,更 46 1393039&005 123123123156156165-salect 丁 Etciti Custoir:ei二鳍果B消息CNoCName CSexCAgeCTdCid1r而而ri蝮35nsnnnrl2345Gft91234S67B92C0002王大山421392Z222Z22123450789111111 HI1C9DO3环帆4113935333J331

33、23456992222222224CWG4陈恃军57135444444441231231231231231315C0005许红香291资55555555123123123123154641gCMOG王一凡4712SG6 胱郎 &E1221d2346Gl 的 1 期论7C&D07徐更生61123456456156165156&CNDS田幅4G1258W0B1231251231&615G1G5用InsertStaf存储过程在Staf表填入数据:|_ execjce 已我它占二二仁 execute execuue exec-ite-selectInBertStaff

34、二二w七二TStat工 后田怒总爆总 InaertStaff InsertStaffEroin 5tdffsacaif王蕾,女台销售职员,123457£9937654321 三。二二一-南桃产后.£3 +肖告 £耳弓 _5-2:42222 _2 : _2:_:2_2 54" d3,手丽丽,皆"7 钳穹 周员 131253333 56156il3Z13?123123 8noe11张版氮 39.铠售47454B484854812321 30:招,宋甥女,凡宣传.破员.1371234S555 431

35、51£1S61651515£E9结果I Jj消息SNo SNarnegJII BIHM Kill iiaui1 j迎1王蕾2 j丽3“翻宦3 SCHXn李丽丽日S0D04弓长栩5S0G05关高EXSS女支女男女SDepSPostSTdSH稍居职员13RE311111E3456演邹而M3Z1宿售职员1371234222212112313212345E7B9精售职员1371234333564564132132123123请售部长11712344444G4MB484g54FI2321宣传职员137123455554315161561G5156156用InsertHouse存储过程

36、在InsertHouse表填入数据:eKecjne ezecut.& ftKecuteexecute exec jl.&H3002H0004rS0005r泮gg.不方, 月。0叫河滨/ H0005f河沟,三室两厅待当我口"0 三室两总二也存售20000 两室一疔,肛待售,2S0GQ0 两室一方, 90,荐售户口"支 两室一疔送d特性(4"加 两室一厅. BQ.待售*48g 三室两疔/【30.待售淖口口0口。 三室两厅. 30.待售.£20000)se_ect r frcir.三=二=1二结果属靖围HNoHAHBHCHTypeHSizeHS

37、tateHprice:H00011竹叶小区2201二室两厅120待隹660000H(X»2竹叶小区3402二潮厅120待售破即0CH00Q3兰花小区4则两室一厅90待售2B0DMHQQW兰花小区1201两直一厅90待匡3UXXKHMM东方小区2201两室一序前待售3优机H0006东方小区 河港小区 河三小区2202两室一厅叩待售24QDOOH现拈73301二 )7130得匡:凡1待售82W00FUKMJB5的1一空两厅13012356B预定和购买房屋:用ReserveHouse存储过程添加预定房屋信息:(输入参数中没有未付金额RRest,RRest由存储过程自动计算填入)预定H000

38、2和H0005号房屋日 executeR0301, 口3”,53002. H30D2r 30000r ,2015.1.13*execute He3eiveHc-JBe 住Q3。工,匚 04, 37口口L,976, EWCiClCi, 2。工W - 3 .二41 select ' froni ReserveL selecc - frcm Kiu.se二1结果_J消息RNoCNaSMc HNo RMorey RRest Rdaie1-Illi »H 111*4411 l»4 IIIFNXMHCOM3 SD002 HDD02 30000 5WOOO 2015.1.13ZR

39、OMECOM4 S(XH)1 H0OT5 22000213000 2015114RNoHAHAHCHTypeHSzeH StateUp rice1i HOMI i ;竹叶小区2201二室闲厅120待修S5MW2H0M2竹叶小区a402三室两厅120已相定G200003H0003兰花小区4时两室一厅90待售2&MW4H0004兰化小区1201两室一厅9D待售5H比旺东方小区2201两室一厅即已相定24WDO&H0D06东方小区2202两室一厅即待售24WD0H0M7河浦小区3301二室两厅130待售80D0D0&HQM8河滨小区5601三室两厅130待售320000&am

40、p;HOD(I9河庭小区5601二宣闲厅130待售3&QD0Q用BuyHouse存储过程添加购买房屋信息:购买H0007和H0009号房屋日邑 38® 副蜴寐眠 50001, C0006.50003.HOD07,Hexecute mB0003, C0007, 5000430009. r2015 .1.111 select * frem Suy from Boun'S. ,. .一.一.一一.“一但给果IS-消息CNo SNoHNo口 MoneyBdate1=B0001 |CGDuG SWC3HU固J &见(盟"15- 12"tan iian

41、 iiMiiiiaBOTOJCDOT7 S00D4N00D9 &EOOTO20151.11-HNa-HAHBHCHTypeH5izeH StateHpnce1HDOOfLmaai.kui luajua竹叶小区 竹叶小区2201三室两厅120待售£G(»DO2H1KK>23402二宣两厅1ZD已预定62KHX3H0003兰花小国如研室一厅90待售maoMO4H0004兰花小区1201葫室一厅90待售300000与HMOS东肓小区2201两室厅80已预迪240MoSHOOK东方小区 河受小区 河浜小区2202丽宝一厅 三室两厅 三室两厅即待售前OWO7H000733C1130已匡出aH00Q3&即做待售B2DOOC3H0009河近小区56m-室两厅130已售出苴肃:七,用ReserveView视图和BuyView视图查看所有预定和购买房屋信息:删除购买信息后自动将房屋状态重新修改为“待售”删除编号为B0002的购买记录,触发器自动将编号为H0009的房屋状态变更为“待售”。删除预定记录同此。5 esccrt - zxoto R*aetVlev "三工口集5uyViu调RMoCManemSho5P g meFTelHhcheTTehSueHPweRMcr 目RFta

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论