资讯 小学 初中 高中 语言 会计职称 学历提升 法考 计算机考试 医护考试 建工考试 教育百科
栏目分类:
子分类:
返回
空麓网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
空麓网 > 计算机考试 > 软件开发 > 后端开发 > Java

【数据库设计】mysql+jsp实现房屋租赁管理系统(数据库部分)

Java 更新时间: 发布时间: 计算机考试归档 最新发布

【数据库设计】mysql+jsp实现房屋租赁管理系统(数据库部分)

写在前面

  • 一、环境配置
  • 二、数据库设计
    • 1.系统说明书
      • (1)系统要求
      • (2)E-R图
      • (3)数据流图
      • (4)数据结构
      • (5)关系模式
    • 2.数据库实施
      • (1)房主用户表
      • (2)租赁者用户表
      • (3)房屋表
      • (4)看房记录表
      • (5)收费记录表
      • (6)留言表
      • (7)空闲房屋视图
      • (8)已看房屋视图
      • (9)已租房屋视图

本文写于数据库课程设计结课后,总结了完整的数据库设计流程以供参考学习。

一、环境配置

  1. mysql版本:8.0.29 下载链接
  2. IDEA版本:ideaIU 2022.1.1
  3. Tomcat版本:apache-tomcat-9.0.63

二、数据库设计

1.系统说明书

(1)系统要求

某房屋租赁公司欲建立一个房屋租赁服务系统,统一管理房主和租赁者信息,以便快速地提供租赁服务。该系统具有以下功能:

  • 登记房主信息。对于每名房主,系统需登记其姓名、住址和联系电话。
  • 登记房屋信息。所有在系统中登记的房屋都有一个唯一的识别号(对于新增加的房屋,系统会自动为其分配一个识别号)。除此之外,还需登记房屋的地址、房型(如平房、带阳台的楼房、独立式住宅等)、最多能容纳的房客数、租金及房屋状态(待租赁、已出租)。一名房主可以在系统中登记多个待租赁的房屋。
  • 登记租赁者信息。所有想通过该系统租赁房屋的租赁者,必须事先在系统中登记个人信息,包括:姓名、住址、电话号码、身份证编号、性别。
  • 租赁房屋。已经在系统中登记的租赁者,可以得到一分系统提供的待租赁房屋列表。一旦租赁者从中找到合适的房屋,就可以提出看房请求。系统会安排租赁者与房主见面。对于每次看房,系统会生成一条看房记录。
  • 收取手续费。每成功一次租赁服务,系统根据租赁价格按比例生成费用清单。
  • 变更房屋状态。当租赁者与房主达成租房或退房协议后,房主向系统提交变更房屋状态请求。
  • 用户论坛。租赁者在论坛上寻找合租对象、与房主进行交流。
  • 创建视图查询当前空闲的房屋的识别号、地址、房型、最多能容纳的房客数、租金、房主身份证号、房主姓名、房主联系电话。
  • 建立数据库相关表之间的参照完整性约束。

(2)E-R图

(3)数据流图


(4)数据结构

1、Owner_users(房主用户)数据结构:
House_owner=房主用户编号+用户名称+密码+真实姓名+住址+联系电话
2、Tenant_users(租赁者用户)数据结构:
Tenant_users=租赁者用户编号+用户名称+密码+真实姓名+住址+联系电话+性别
3、House(房屋)数据结构:
House=识别号+地址+房型+容量+租金+房屋状态+房主用户编号
4、Record(看房记录)数据结构:
Record=看房记录编号+租赁者用户编号+房屋识别号
5、Charge(收费记录)数据结构:
Charge=收费记录编号+金额+记录编号
6、Message(留言)数据结构:
Message=留言编号+留言内容+留言时间+房主用户编号+租赁者用户编号

(5)关系模式

根据E-R图向关系模型的转换原则,房屋租赁管理系统的E-R图可以转换为下列关系模式:

  • Owner_users(OID,userName,password,OName,OAddress,OTelephone),主码OID,无外码
  • Tenant_users(TID,userName,password,TName,TAddress,TTelephone,TSex),主码TID,无外码
  • House(HID,HAddress,layout,capacity,rent,con,OID),主码HID,外码OID
  • Record(RID,TID,HID),主码RID,外码TID,HID
  • Charge(CID,amount,RID),主码CID,外码RID
  • Message(MID,content,createDate,OID,TID),主码MID,外码OID,TID

2.数据库实施

(1)房主用户表

CREATE TABLE Owner_users (	OID INT AUTO_INCREMENT PRIMARY KEY,	userName CHAr ( 10 ) NOT NULL,    password BLOB NOT NULL,	OName VARCHAr ( 10 ) NOT NULL,	OAddress VARCHAr ( 30 ) NOT NULL,	OTelephone VARCHAr ( 20 ) NOT NULL);

(2)租赁者用户表

CREATE TABLE Tenant_users (	TID INT AUTO_INCREMENT PRIMARY KEY,	userName CHAr ( 10 ) NOT NULL,    password BLOB NOT NULL,	TName VARCHAr ( 10 ) NOT NULL,	TAddress VARCHAr ( 30 ) NOT NULL,	TTelephone VARCHAr ( 20 ) NOT NULL,	TSex ENUM('男','女') DEFAULT '男');

(3)房屋表

CREATE TABLE House (	HID INT AUTO_INCREMENT PRIMARY KEY,	HAddress CHAr ( 30 ) NOT NULL,	layout VARCHAr ( 10 ) NOT NULL,	capacity INT NOT NULL,	rent INT NOT NULL,	con TINYINT NOT NULL,	OID INT NOT NULL,	FOREIGN KEY ( OID ) REFERENCES Owner_users( OID ));

(4)看房记录表

CREATE TABLE Record (	RID INT AUTO_INCREMENT PRIMARY KEY,	TID INT NOT NULL,	HID INT NOT NULL,	FOREIGN KEY ( TID ) REFERENCES Tenant_users ( TID ),	FOREIGN KEY ( HID ) REFERENCES House ( HID ));

(5)收费记录表

CREATE TABLE Charge(	CID INT AUTO_INCREMENT PRIMARY KEY,	amount DOUBLE NOT NULL,	RID INT NOT NULL,	FOREIGN KEY ( RID ) REFERENCES Record ( RID ));

(6)留言表

CREATE TABLE Message(	MID INT AUTO_INCREMENT PRIMARY KEY,    content VARCHAr( 500 ) NOT NULL,    createDate TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL,    OID INT,    TID INT,	FOREIGN KEY ( OID ) REFERENCES Owner_users ( OID ),	FOREIGN KEY ( TID ) REFERENCES Tenant_users ( TID ));

(7)空闲房屋视图

CREATE VIEW Vacant_house(HID,HAddress,layout,capacity,rent,OID,OName,OTelephone)AS SELECt HID,HAddress,layout,capacity,rent,House.OID,OName,OTelephoneFROM House,Owner_usersWHERe House.OID = Owner_users.OID AND House.con = 0;

(8)已看房屋视图

CREATE VIEW Seen_house(RID,HID,HAddress,layout,capacity,rent,OID,OName,OTelephone,TID)AS SELECt RID,House.HID,HAddress,layout,capacity,rent,House.OID,OName,OTelephone,Tenant_users.TIDFROM House,Tenant_users,Record,Owner_usersWHERe House.HID = Record.HID AND Tenant_users.TID = Record.TID AND House.OID = Owner_users.OID;

(9)已租房屋视图

CREATE VIEW Rented_house(CID,TID,HID,HAddress,layout,capacity,rent,OID,OName,OTelephone,amount)ASSELECt CID,TID,House.HID,HAddress,layout,capacity,rent,House.OID,OName,OTelephone,amountFROM House,Charge,Owner_users,RecordWHERe Charge.RID = Record.RID AND Record.HID = House.HID AND Owner_users.OID = House.OID;
转载请注明:文章转载自 http://www.konglu.com/
本文地址:http://www.konglu.com/it/1098449.html
免责声明:

我们致力于保护作者版权,注重分享,被刊用文章【【数据库设计】mysql+jsp实现房屋租赁管理系统(数据库部分)】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2023 成都空麓科技有限公司

ICP备案号:蜀ICP备2023000828号-2