房屋中介公司需要对日常工作中涉及到的房屋、房主和租房顾客等各类数据进行有效地管理,以实现业务的自动化,提高运行效率的同时也能够降低人力成本。本设计主要针对房屋中介公司建立一个数据库应用系统。
1 需求分析
房屋中间管理系统主要的是:
- (1)房主能够发布房屋信息,并能够对房屋信息进行修改和删除;
- (2)租房顾客能够查询房屋信息,请求看房,并确定租房完成租房交易。
2 概念设计及数据建模
根据需求分析,进一步实现数据库的概念设计和数据建模。
2.1 实体集与联系
实体集包括:房主、房屋和租房顾客。其中房主的属性主要有房主编号、姓名、登录密码、性别、电话号码,家庭住址,还有个人信息的建立时间和更新时间。房屋的属性包括房屋编号、房屋地点、面积、户型、照片、价格、状态以及房屋信息的建立和更新时间。租房者的属性有租房者编号、姓名、登录密码、性别、电话号码、职业和个人信息的建立与更新时间。
根据分析,能够确定的实体型为:
- 房主(房主编号,用户名,密码,性别,电话号码,家庭住址,记录创建时间,记录更新时间);
- 房屋(房屋编号,房屋地点,面积,户型,照片,价格,出租状态,记录创建时间,记录更新时间)
- 租房者(租房者编号,姓名,密码,性别,电话号码,职业,记录创建时间,记录更新时间)
实体集之间的联系包括:
- 一个房主能够拥有多个房屋,一个房屋只能属于一个房主;房主能够对未出租的房租进行出租。
- 一个租房者能够租用多个房屋,一个房屋也能够租用给多个租房者。
- 一个房主能联系多个租房者看房;租房者也能联系多个房主看房。
2.2 建立信息模型
根据之前确定的实体集、联系和实体集之间联系的基数,构造ER模型。
3 逻辑设计及物理设计
3.1 关系模式
E-R图转换成关系模式如下(其中,主码用下划直线表示,外码用下划波浪线表示):
(1)房主关系
(房主编号,用户名,密码,性别,电话号码,家庭住址,记录创建时间,记录更新时间)
- 该关系中,每一个属性值都是不可分的数据项,所有此关系模式为1NF;
- 该关系中,主码是房主编号,不存在非主属性对主码的部分函数依赖,所以此关系模式为2NF;
- 该关系中,不存在非主属性对主码的传递函数依赖,所以此关系模式为3NF;
- 该关系中,每个属性不存在部分函数依赖也不存在传递函数依赖于候选码,所以此关系为BCNF。
(2)房屋关系
(房屋编号,房主编号,房屋地点,面积,户型,照片,价格,出租状态,记录创建时间,记录更新时间)
- 该关系中,每一个属性值都是不可分的数据项,所有此关系模式为1NF;
- 该关系中,主码是房屋编号,不存在非主属性对主码的部分函数依赖,所以此关系模式为2NF;
- 该关系中,不存在非主属性对主码的传递函数依赖,所以此关系模式为3NF;
- 该关系中,每个属性不存在部分函数依赖也不存在传递函数依赖于候选码,所以此关系为BCNF。
(3)租房者关系
(租房者编号,姓名,密码,性别,电话号码,职业,记录创建时间,记录更新时间)
- 该关系中,每一个属性值都是不可分的数据项,所有此关系模式为1NF;
- 该关系中,主码是租房者编号,不存在非主属性对主码的部分函数依赖,所以此关系模式为2NF;
- 该关系中,不存在非主属性对主码的传递函数依赖,所以此关系模式为3NF;
- 该关系中,每个属性不存在部分函数依赖也不存在传递函数依赖于候选码,所以此关系为BCNF。
(4)看房关系
(看房信息编号,房主编号,租房者编号,看房日期,地点,记录创建时间,记录更新时间)
- 该关系中,每一个属性值都是不可分的数据项,所有此关系模式为1NF;
- 该关系中,主码是看房信息编号,不存在非主属性对主码的部分函数依赖,所以此关系模式为2NF;
- 该关系中,不存在非主属性对主码的传递函数依赖,所以此关系模式为3NF;
- 该关系中,每个属性不存在部分函数依赖也不存在传递函数依赖于候选码,所以此关系为BCNF。
(5)租房关系
(租房信息编号,租房者编号,房屋编号,租房日期,记录创建时间,记录更新时间)
- 该关系中,每一个属性值都是不可分的数据项,所有此关系模式为1NF;
- 该关系中,主码是租房信息编号,不存在非主属性对主码的部分函数依赖,所以此关系模式为2NF;
- 该关系中,不存在非主属性对主码的传递函数依赖,所以此关系模式为3NF;
- 该关系中,每个属性不存在部分函数依赖也不存在传递函数依赖于候选码,所以此关系为BCNF。
(6)交易关系
(交易信息编号,房主编号,房屋编号,金额,记录创建时间,记录更新时间)
- 该关系中,