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

下载本文档

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

文档简介

数据库课程设计数据库课程设计 房屋销售管理系统房屋销售管理系统 姓姓 名 胡玖龙名 胡玖龙 学学 号 号 2 学学 院 信息工程学院院 信息工程学院 专专 业 计算机科学与技术业 计算机科学与技术 班班 级 级 指导教师 李荣指导教师 李荣 2015 年年 1 月月 14 日日 一 课程设计的目的和意义一 课程设计的目的和意义 数据库原理及应用课程设计 是实践性教学环节之一 是 数据库原理及应用 课程 的辅助教学课程 通过课程设计 使学生掌握数据库的基本概念 结合实际的操作和设计 巩固课堂教学内容 使学生掌握数据库系统的基本概念 原理和技术 将理论与实际相结合 应用现有的数据建模工具和数据库管理系统软件 规范 科学地完成一个小型数据库的设计 与实现 把理论课与实验课所学内容做一综合 并在此基础上强化学生的实践意识 提高其 实际动手能力和创新能力 要求 要求 通过设计一完整的数据库 使学生掌握数据库设计各阶段的输入 输出 设计环境 目 标和方法 熟练掌握两个主要环节 概念结构设计与逻辑结构设计 熟练的使用 SQL 语言 实现数据库的建立 应用和维护 二 设计正文二 设计正文 1 需求分析需求分析 1 1 基本功能需求基本功能需求 客户购买或预定房屋 房屋销售人员根据用户的需求为用户办理相关手续 购销管理包含以下几方面 的信息 客户基本信息客户基本信息 客户在购买或预定房屋的时候 每位用户都有唯一的编号 客户的基本信息包括姓名 性别 年龄 联系方式 身份证号 员工基本信息员工基本信息 每位员工在入职的时候有唯一的员工号 根据分工的不同 还有工作部门及职位这个属性 当然还有 姓名 性别 联系方式 年龄 身份证号这些基本属性 房屋基本信息房屋基本信息 每个房屋有唯一的房屋编号 基本信息包含房屋的面积 户型 小区 栋 号 价格和状态 状态分 为 待售 已预订 和 已售出 预定房屋信息预定房屋信息 客户可以进行房屋的预定 预定包括预定流水号 客户编号 员工号 房屋编号 预付金额 未付金 额 预定时间 购买的基本信息购买的基本信息 客户可以购买房屋 购买包括购买流水号 客户编号 员工号 房屋编号 付款金额 购买时间 付 款金额一般等于房屋价格 1 2 用户对系统的要求用户对系统的要求 1 2 1 房屋销售管理人员房屋销售管理人员 信息要求信息要求 房屋销售管理人员能查询上面提到的客户 销售人员 房屋的所有相关信息 包括预定房屋的基本信 息 购买房屋的基本信息 以利于对整个销售楼盘的全面管理 处理要求处理要求 当客户的信息发生变化时 房屋销售管理人员能对其进行修改 比如 客户更换手机号 或其他变更 能修改客户的信息 当房屋的信息放生变化时 房屋销售管理人员能对其进行修改 比如 房屋降价 房屋销售管理人员 能对价格进行修改 当销售人员的信息放生变化时 如升职 房屋销售管理人员能对其进行修改 安全性与完整性要求安全性与完整性要求 安全性要求 1 系统应设置访问用户的标识以鉴别是否是合法用户 并要求合法用户设置其密码 保证用户身 份不被盗用 2 系统应对不同的数据设置不同的访问级别 限制访问用户可查询和处理数据的类别和内容 3 系统应对不同用户设置不同的权限 区分不同的用户 如区分房屋销售人员和房屋销售管理人 员 完整性要求 1 各种信息记录的完整性 信息记录内容不能为空 2 各种数据间相互的联系的正确性 3 相同的数据在不同记录中的一致性 1 2 2 房屋销售人员房屋销售人员 信息要求信息要求 本楼盘的房屋销售人员能所有楼盘的信息 能查询 待售 状态的房屋信息 能查询客户的基本信息 修改客户的信息 能查询自己的销售记录 能够进行预定 购买操作 处理要求处理要求 当客户的信息发生变化时 房屋销售人员能对其进行修改 客户购买 预定房屋时 销售人员能添加预定 购买记录 1 2 3 系统数据处理系统数据处理 状态更改状态更改 当客户预定房屋时 销售人员添加预定记录后 系统能自动将预定房屋的状态从 待售 修改为 已预订 当客户购买房屋时 销售人员添加购买记录后 系统能自动将购买房屋的状态从 待售 或 已 预订 修改为 已售出 数据计算数据计算 当客户预定房屋时 销售人员添加记录后 系统能自动根据预付金额和房屋价格计算出未付金额 2 E R 图及关系模式 图及关系模式 2 1 E R 图 图 根据需求分析 画出系统 E R 图 2 2 关系模式 关系模式 将 E R 图转换为关系模式 有下划线的为主键或外键 客户 客户编号 姓名 性别 身份证号 联系电话 员工 员工号 姓名 性别 职位 身份证号 联系电话 房屋 房屋编号 户型 面积 价格 栋 单元 号 房屋状态 预定 流水号 客户编号 员工号 房屋编号 预付金额 预定时间 购买 流水号 客户编号 员工号 房屋编号 购买金额 购买时间 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主键 姓名CNamechar10非空 性别CSexchar4 男 或 女 年龄CAgeint 大于零 联系方式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 CAge 0 CTel char 20 not null CId char 18 constraint LEN CID check len CId 18 员工员工 Staff 属性属性属性名属性名类型类型长度长度约束约束 员工号 SNochar20 主键 姓名 SNamechar10 非空 性别 SSexchar4 男 或 女 年龄 SAgeint 大于零 部门 SDepchar20 非空 职位 SPostchar20 非空 联系方式 STelchar20 非空 身份证号 SIdchar18 18 位数字 create table Staff SNo char 20 constraint S prim primary key SName char 10 not null 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 主键 小区 HAchar20 非空 栋 HBchar10 非空 号 HCchar10 非空 户型 HTypechar20 非空 面积 HSizeint 大于零 房屋状态 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 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 大于零 未付金额 RRestfloat 大于或等于零 预定日期 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 20 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 外键 购买金额 BMoneyfloat 非空 购买日期 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 constraint B Money not null check BMoney 0 default 0 Bdate char 10 not null 3 3 创建视图 创建视图 所有客户信息视图 客户编号 名字 性别 年龄 联系方式 身份证号 create view CustomerView CNo CName CSex CAge CTel CId as select CNo CName CSex Cage CTel CId FROM Customer 所有员工信息视图 员工号 名字 性别 年龄 部门 职位 联系方式 身份证号 create view StaffView SNo SName SSex SAge SDep SPost STel SId as select SNo SName SSex SAge SDep SPost STel SId from Staff 待售房屋视图 房屋编号 小区 栋 号 户型 面积 价格 create view ForSaleHouse HNo HA HB HC HType HSize HPrice as select HNo HA HB HC HType HSize HPrice from House where HState 待售 预定房屋信息视图 预定流水号 客户编号 客户名字 客户联系方式 员工号 员工名字 员工联系方 式 房屋编号 小区 栋 号 户型 面积 价格 预定金额 未付金额 预定时间 create view ReserveView RNo CNo CName CTel SNo SName STel HNo HA HB HC HType HSize HPrice RMoney RRest Rdate as select RNo Reserve CNo CName CTel Reserve SNo SName STel Reserve HNo HA HB HC HType HSize HPrice RMoney RRest Rdate from Reserve Customer Staff House where Reserve CNo Customer CNo and Reserve SNo Staff SNo and Reserve HNo House HNo 购买房屋信息视图 购买流水号 客户编号 客户名字 客户联系方式 员工号 员工名字 员工联系方 式 房屋编号 小区 栋 号 户型 面积 价格 购买金额 购买时间 create view BuyView BNo CNo CName CTel SNo SName STel HNo HA HB HC HType HSize HPrice BMoney Bdate as select BNo Buy CNo CName CTel Buy SNo SName STel Buy HNo HA HB HC HType HSize HPrice BMo ney Bdate from Buy Customer Staff House where Buy CNo Customer CNo and Buy SNo Staff SNo and Buy HNo House HNo 3 4 存储过程 存储过程 预定房屋 create procedure ReserveHouse RNo char 20 CNo char 20 SNo char 20 HNo char 20 RMoney float RDate char 10 as if select House HState from House where House HNo HNo 待售 begin insert into Reserve RNo CNo SNo HNo RMoney Rdate values RNo CNo SNo HNo RMoney RDate update House set HState 已预定 from House where House HNo HNo update Reserve set RRest Hprice RMoney from House Reserve where RNo RNo and House HNo HNo end else begin print 该房屋已预定或已售出 end 功能 根据 HNo 判断房屋状态是不是 待售 状态 若是 则在预定表中插入信息 否则 则提示 该 房屋已预定或已售出 并放弃插入操作 购买房屋 create procedure BuyHouse BNo char 20 CNo char 20 SNo char 20 HNo char 20 BDate char 10 as if select House HState from House where House HNo HNo 已售出 begin insert into Buy BNo CNo SNo HNo Bdate values BNo CNo SNo HNo BDate update House set HState 已售出 from House where House HNo HNo delete from Reserve where Reserve HNo HNo end else begin print 该房屋已售出 end 功能 根据 HNo 判断房屋状态是不是 已售出 状态 若为否 则在购买表中插入信息 并在预定表中 删除对应信息 否则 则提示 该房屋已售出 并放弃插入操作 插入客户信息 插入客户信息 create procedure InsertCustomer CNo char 20 CName char 10 CSex char 4 CAge int CTel char 20 CId char 18 无 as insert 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 as insert into Staff values 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 float as insert into House values HNo HA HB HC HType HSize HState HPrice 功能 在房屋表中插入新的房屋信息 3 5 触发器 触发器 触发器触发器1 create trigger NewReserveHouse on Reserve instead of insert as if not exists select from inserted where CNo in select CNo from Customer print 客户表中没有该客户信息 拒绝插入 rollback transaction 功能 保证在预定表中插入新记录时 客户信息必须已经存在于客户表中 触发器触发器2 create trigger NewBuyHouse on Buy instead of insert as if not exists select from inserted where CNo in select CNo from Customer print 客户表中没有该客户信息 拒绝插入 rollback transaction 功能 保证在购买表中插入新记录时 客户信息必须已经存在于客户表中 触发器触发器 3 create trigger DelR on Reserve after delete as if select HState from House where House HNo in select HNo from deleted 已预定 begin delete from Customer where Customer CNo in select CNo from deleted update House set HState 待售 where House HNo in select HNo from deleted end 功能 删除预定表中某一个预定记录时 如果是因为客服付清未付款 购买了房屋 则只进行原操作 如 果是因为客户取消预定 则同时删除客户表中此客户 并将此房屋状态重新改为 待售 触发器触发器 4 create trigger DelB on Buy after delete as begin de

温馨提示

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

评论

0/150

提交评论