数据结构课设——房产管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件学院
课程设计报告书
课程名称数据库课程设计
设计题目房产管理系统
专业班级
学号
姓名
指导教师
2014年6月
目录
1 设计时间 (1)
2 设计目的 (1)
3 设计任务 (1)
4 设计内容 (1)
4.1需求分析 (1)
4.2系统设计 (2)
4.2.1 概念结构设计 (2)
4.2.2 逻辑结构设计 (5)
4.2.3 物理结构设计 (5)
4.3系统实施 (6)
4.3.1数据库实现 (6)
4.3.2 数据载入 (8)
4.4运行与测试 (13)
4.4.1运行与测试 (13)
4.4.2分析 (15)
5总结与展望 (16)
参考文献............................................................................. 错误!未定义书签。
1 设计时间
2014年6月
2 设计目的
数据库原理及应用课程设计是软件工程专业集中实践性环节之一。
其目的在于加深对数据库基础理论和基本知识的理解,掌握使用数据库进行软件设计的基本方法,提高运用数据库解决实际问题的能力,最终实现对于给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。
3 设计任务
房产管理系统应具有分房、调房、退房和咨询统计功能,同时应能对房产信息、住房信息、住户基本信息及住户家庭信息等进行管理,并建立住房和住户之间的对应关系。
对这些信息应能进行方便快捷的新增、修改和删除等操作,另外还能快速找到所需的信息
4 设计内容
房产管理系统。
系统主要功能
1.分房,调房,退房询,咨统计
2.用户可以查询房产信息,住房信息,住户信息,住户家庭信息
3.删除,修改,新增信息
4.1需求分析
随着现代信息技术的迅猛发展,数据库技术日益得到广泛的发展,特别是数据库与Internet的接轨,为数据库应用提供了丰富的资源和应用的便利,利用计算机支持企业高效率的完成企业的日常事务,是适应现代企业制度要求,推动房地产信息管理走向科学化、规范化的必要条件;而房屋信息管理是一项琐碎、复杂而又十分精细的工作,信息输入的工作量很大,一般不允许出错,如果实行手工操作,须制大量的表格,这就会工作人员大量的精力,计算机进行房屋信息输入工作,不仅能保证输入准确无误,还可以对各种信息进行统计,有着手工管理所无法比拟的优点。
4.2系统设计
4.2.1 概念结构设计
E-R图是分为两部分实体和属性,每个实体可以有多个属性,这些属性用来表示实体的性质。
不同实体之间可以用关系进行连接,表明各个实体之间的内在联系。
实体和实体之间的关系有一对一的关系(1:1),一对多的关系(1:N)和多对多的关系(N:M)。
1、用户
2、申请表用户
住房分数住
房
面
积
家
庭
人
口
职
称
房
号
部
门
户
主图4.2.1.1用户实体属性图
3、管理—分房—调房—退房
4、房产科—分配—住房申请表
退房申请
户
主
调
房
申
请
分
房
申
请图4.2.1.2申请表实体属性图
房产科
管理
调房
退房分房部门
房号家庭人口要求面积住房分数
职称
部门
要求面积家
庭
人
口
住
房
分
数
职
称
部
门
原
房
号
原
面
积
图4.2.1.3管理—分房—
调房—退房E-R图
5、总E-R 图
统计表
统计
房产科
分配
住房
住房分数
住房面积
户主 房号
职称 部门
家庭人口
图 4.2.1.4房产科—分配—住房E-R 图
用户
填写
申请表
筛选条件
1
1
M
房产科
分配
管理
管理 管理
住房
分房 退房 调房
图4.2.1.5总E-R 图
1
1
1
1
1
N
N
N
N
4.2.2 逻辑结构设计
房产管理系统的E-R图转换为关系模型如下。
将每一个实体转换成一个关系(关系就是给出关系名,属性就是实体属性,并标明该关系的主键用下划线来表示)
住房要求:户主,要求。
住房标准:住房面积,最低住房分数。
房产文件:房号,住房面积,分配标志,每平方米房租。
住房文件:户主,职称,部门,人口,分数,房号,住房面积。
分房要求:部门,职称,人口,分数,要求面积。
退房要求:部门,房号。
调房要求:户主,部门,职称,人口,住房分数,原住房面积,原房号,申请面积。
4.2.3 物理结构设计
表4-1住房标准
属性名类型长度备注
面积Int 住房面积
最低住房分数Int 最低住房分数
表4-2住房文件表
属性名类型长度备注
户主char 20 户主姓名
职称char 10 户主职称
部门char 20 工作部门
分数Int 住房分数
家庭人口Int 家庭人口
房号char 4 房间号码
住房面积int 现住面积
表4-3房产文件
属性名类型长度备注
房号char 4 房间号码
分配标志char 4 是否分配(是)
每平方米房租Int 每平方米房租
住房面积Int 住房面积
表4-4要求住房面积
属性名类型长度备注
部门Char 20 工作部门
职称Char 10 户主职称
人口int 家庭人口
分数int 住房分数
要求面积int 要求住房面积
表4-5调房要求
属性名类型长度备注
部门char 20 工作部门
职称char 10 户主职称
人口Int 家庭人口
分数Int 分房分数
面积Int 原住房面积
房号char 4 原房号
申请面积int 申请面积
表4-6退房要求
属性名类型长度备注
部门Char 20 工作部门
房号char 4 要退房号4.3系统实施
4.3.1数据库实现
1、创建住房文件标准表,并按住房面积大小递增排列
create table 住房标准文件
(
住房面积 char(20) primary key,
最低住房分数 char (20)
);
select *
from 住房标准文件
order by 住房面积 ASC;
2、创建房产表,并按房号递增排列
create table 房产文件
(
房号 char (20)primary key,
住房面积 char (20),
分配标志 char (20),
每平方米房租 char (20)
);
select *
from 房产文件
order by 房号 ASC;
3、创建住房文件,并按户主名拼音字母顺序排列create table 住房文件
(
户主 char (20),
部门 char (20),
职称 char (20),
家庭人口 char (20),
住房分数 char (20),
房号 char (20),
住房面积 char (20)
);
select *
from 住房文件
order by 户主 ASC;
4、创建分房表
create table 分房要求
(
部门 char (20)primary key,
职称 char (20),
家庭人口 char (20),
住房分数 char (20),
要求住房面积 char (20)
);
5、创建调房要求
create table 调房要求
(
部门 char (20) primary key,
职称 char (20),
家庭人口 char (20),
住房分数 char (20),
原住房面积 char (20),
原房号 char (20),
要求调房面积 char (20)
);
6、创建退房要求
create table 退房要求
(
部门 char(20),
房号 char (20)
);
4.3.2 数据载入
4.3.2.1住房文件:
insert
into 住房文件
values ('一号','软件','学生','3','90','001','100');
insert
into 住房文件
values ('二号','电控','学生','3','90','002','97'); insert
into 住房文件
values ('三号','电信','学生','3','95','003','98'); insert
into 住房文件
values ('四号','工商','学生','3','85','004','85'); insert
into 住房文件
values ('五号','矿院','学生','3','89','005','89');
图4.3.2.1住房文件
4.3.2.2住房标准文件:
insert
into 住房标准文件
values ('100','90');
insert
into 住房标准文件
values ('97','90');
insert
into 住房标准文件
values ('98','90');
insert
into 住房标准文件
values ('85','90');
insert
into 住房标准文件
values ('89','90');
图4.3.2.2住房标准文件
values ('002','97','B','51'); 4.3.2.3房产文件:insert
into 房产文件
values ('001','100','A','50');
insert
into 房产文件
insert
into 房产文件
values ('003','98','A','52');
insert
into 房产文件
values ('004','85', 'C','53');
insert
into 房产文件
values ('005','89', 'B','54');
图4.3.2.3房产文件
4.3.2.4分房要求:
insert
into 分房要求
values ('电控','学生','3','97', '100'); insert
into 分房要求
values ('电信','学生','3','98', '100') insert
into 分房要求
values ('工商','学生','3','85', '190'); insert
into 分房要求
values ('矿院','学生','3','89', '90'); insert
into 分房要求
values ('软件','学生','3','100', '120');
图4.3.2.4分房要求
4.3.2.5调房要求:
insert
into 调房要求
values ('电控','学生','3','90','97','002','100'); insert
into 调房要求
values ('电信','学生','3','95','98','003','100'); insert
into 调房要求
values ('工商','学生','3','85','85','004','90'); insert
into 调房要求
values ('矿院','学生','3','89','89','005','90'); insert
into 调房要求
values ('电控','学生','3','100','100','001','120');
图4.3.2.5调房要求
4.3.2.6退房要求:
insert
into 退房要求
values ('软件','001');
insert
into 退房要求
values ('电控','002');
insert
into 退房要求
values ('电信','003');
into 退房要求
values ('工商','004');
insert
into 退房要求
values ('矿院','005');
图4.3.2.6退房要求
4.4运行与测试
4.4.1运行与测试
1、用户申请表
insert
into 住房文件
values(’六号’,’软件’,’学生’,’3’,’90’,’006’,’85’);
运行结果如图:
2、分房申请
select *
from 分房要求
order by 住房分数DESC;
from 空房文件
where 房号=’007’;
insert
into 房租文件
values(’七号’,’007’,’800’);
运行结果如图:
3、退房申请
delete
from 住房文件
where 房号=’001’;
delete
from 房租文件
where 房号=’001’;
insert
into 空房文件
values(’001’,’100’,’50’,’A’);运行结果如图:
4、调房申请
from 空房文件
where 分配标志=’A’;
insert
into 住房文件
values(’一号’,’软件’,’学生’,’3’,’90’,’001’,’100’);
运行结果如图:
5、住户查询
select *
from 住房文件,房租文件
where 住房文件.房号=’002’AND住房文件.房号=房租文件.房号;
select *
from住房文件,房产文件
where住房文件.房号=’002’AND住房文件.房号=房产文件.房号;
运行结果如图:
4.4.2分析
本系统具有分房、调房、退房和资讯统计功能.
房产科把用户申请表输入系统,统计住房信息。
在分房申请中,根据申请者的住房分数,按分数高低将申请单插到分房队列的适当位置。
每月最后一天进行一次分房活动,从空房文件中读出空房信息,如房号007,把好房优先分配给排在分房队列前面的符合该登记住房条件的申请者,从空房文件中删除掉这个房号的信息,从分房队列中删除申请单,并把此房号的信息和住户信息一起写到住房文件中,输出住房分配单给住户,同时计算房租并将算出的房租写到房租文件中。
在退房申请中,从住房文件和房租文件中删除有关的信息,再把此房号的信息写到空房文件中。
如果是调房申请,则根据申请者的情况确定其住房等级,然后在空房文件中查找属于给等级的空房,退掉原住房,再进行与分房类似的处理。
住户可向系统询问目前分房的阈值分数,居住某类房屋的条件,某房号的单位面积房租等信息。
房产科可以要求系统打印出住房情况的统计表,或更改某类房屋的居住条件、单位面积房租等。
5总结与展望
短短一周的课程设计已经结束,在课程设计中每个人都遇到了一定的问题,通过老师和同学的帮助、指导所有问题都得到了解决,也使自己对一些问题有了新的看法和认识。
在这一周中,通过我们的亲身实践和学习不仅巩固了之前所学的知识,也使自己明白了之前学习中的盲点。
课程设计是开放教育试点专业学生整个学习过程中的一个重要实践环节,通过课程设计认识到自己的不足,例如,缺乏动手能力,平时大家都学习理论知识,所以实践能力相对薄弱,出现眼高手低的情况,在实际操作中会出现各种错误。
课程设计也是学生在校学习期间学习成果的综合总结,它对于培养学生的科研能力,提高其综合能力及全面素质具有重要的意义。