房屋中介管理系统-数据库原理课程设计_第1页
房屋中介管理系统-数据库原理课程设计_第2页
房屋中介管理系统-数据库原理课程设计_第3页
房屋中介管理系统-数据库原理课程设计_第4页
房屋中介管理系统-数据库原理课程设计_第5页
已阅读5页,还剩40页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

《数据库原理课程设计》任务书题目:房屋中介管理系统学生姓名:朱强学号:13480144班级:13物联网工程1班题目类型:软件工程(R)指导教师:一、数据库课程设计题目简介该设计要求学生以房屋中介管理系统为背景,设计并开发一套“房屋中介管理系统”软件。通过该题目的设计、开发,使学生初步得到数据库开发的训练,全面培养软件开发过程中的分析、设计、编码、测试及文档规范书写的能力,得到软件开发的综合训练,提高解决实际问题的能力。二、数据库课程设计的任务1、查阅文献资料,一般在 10篇以上;2、以房屋中介管理系统为背景,通过调研、分析现有的管理模式和已有的管理软件,建立系统模型;3、完成软件结构设计、数据库设计和算法设计;4、完成房屋中介管理系统的软件开发和测试工作。5、撰写设计说明书;6、做好答辩工作。三、数据库课程设计的主要内容、功能及技术指标某房屋中介公司拥有多名职员分管不同业务,公司与多名房主具有业务联系,每个房主在委托房屋中介公司进行房屋的出租或出售时都要填写一张表格,说明房屋的地址、面积、朝向、类别以及价格等相关信息。需要租住或购买房屋的客户在向中介公司寻求服务时,也需要登记需要租住或购买的房屋的细节要求。职员负责与客户约定时间,并陪同客户看房,若客户看中房屋,公司将记录客户购买或租住房屋的合同的相关信息。为此公司设计一个数据库应用系统。1、系统功能的基本要求:(1)管理公司职员的基本信息,以及所进行的业务信息,如联系客户、陪同客户看房的信息。(2)登记房屋、房主以及客户的信息,并能进行方便地增、删、改。(3)方便房主查询所需要的房屋的查询功能。(4)统计待租或待售的房屋信息等。2、数据库要求:(在数据库中至少应该包含下列数据表)(5)公司职员基本信息表;(6)客户基本信息表;(7)房屋基本信息表;(8)客户购买或租住房屋的合同的相关信息表。3、其它要求:(1)系统要实现满足多种条件的统计分析功能,有些统计数据要采用图表的格式呈现;(2)系统要有一定的安全控制策略;(3)系统要采用实际数据进行测试。四、数据库课程设计提交的成果课程设计说明书一份,A4打印稿,正文部分要求不少于20页,所有英文字体采用Arial。正文及目录格式参考(毕业设计论文格式要求)正文内容包括:需求分析;数据库概念结构设计;数据库逻辑结构设计;数据流图及程序结构框图;程序源代码及其说明;总结;参考文献。刻制光盘一张,把完成的所有电子文档(设计说明书文档、打包后可运行程序及源程序)一并交由指导老师处。注:文档目录按照如下统一命名规则建立,“课设题目名称 /学号姓名/”,比如“公司人事管理系统 /12730101周欢欢/”。五、主要参考文献王珊、萨师煊著数据库系统概论(第五版).高等教育出版社,2014.9刘金岭等著数据库原理及应用实验与课程设计指导,清华大学出版社出版,2010.6钱雪忠等著数据库原理及技术课程设计(全新正版),清华大学出版社出版,2009.2周屹著数据库原理及开发应用-实验与课程设计指导,清华大学出版社出版,2008.12陆慧娟主编数据库设计与应用开发实践,清华大学出版社2014.1陶宏才等编著数据库原理及设计,清华大学出版社2014.1丁忠俊著数据库系统原理及应用,清华大学出版社出版,2012.4李晓峰等著数据库系统原理及应用,水利水电出版社,2011.2万常选著数据库系统原理与设计(第2版),清华大学出版社出版,2012.9[10] 路游,于玉宗编著数据库系统课程设计,清华大学出版社 2009[11]《Access2010 数据库应用从入门到精通》何先军编 ,中国铁道出版社.2013.10[印]辛赫(Singh.S.K)著何玉洁,王晓波,车蕾,等译《数据库系统概念、设计及应用》,机械工业出版社,2010.1六、各阶段时间安排(共 2周)周次日期内容地点星期一分组、选题、收集与整理资料教室第1周星期二数据库分析与设计教室星期三~用户界面设计及系统功能实现教室星期五星期一用户界面设计及系统功能实现教室星期二第2周星期三调试程序教室星期四撰写课程设计说明书教室星期五答辩教室2015年12月15日摘要房产中介管理系统是为房屋中介机构管理房屋出租、出售信息资料而设计的信息管理系统,包含有后台数据库和前台应用程序系统两大部分,后台数据库要求数据的一致性和完整性、安全性,用以储存单位工程文档资料及相关信息,前台应用程序系统要求应用程序功能完备、易于使用和界面友好等。经过全面分析,确定数据库采用 SQLserver2014,开发工具为 MicrosoftVisualStudio2010,利用Microsoft公司的ADO(ActiveXDataObject,ActiveX数据对象)访问和操作数据库服务器中的数据。关键字:SQLserver;数据库;ADO;房屋中介管理目录1系统简介............................................................................................................11.1背景.........................................................................................................11.2功能描述.................................................................................................12需求分析............................................................................................................32.1需求调查.................................................................................................32.2可行性分析.............................................................................................42.2.1技术可行性..................................................................................42.2.2经济可行性..................................................................................42.2.3操作可行性..................................................................................52.3数据流程图.............................................................................................62.3.1数据流程图..................................................................................62.3.2整体数据流程图..........................................................................62.4数据字典.................................................................................................62.4.1数据项表......................................................................................72.4.2数据结构列表..............................................................................73概念结构设计....................................................................................................93.1总体E-R图............................................................................................93.2出租房E-R图........................................................................................93.3客户E-R图..........................................................................................103.3房主E-R图..........................................................................................104逻辑结构设计..................................................................................................124.1房屋信息表...........................................................................................124.2房主信息表...........................................................................................124.3客户信息表...........................................................................................134.4系统数据结构.......................................................................................145物理结构设计..................................................................................................156系统主要查询功能及SQL语句....................................................................166.1主要查询功能.......................................................................................166.1.1普通查询....................................................................................166.1.2条件查询....................................................................................166.2增删信息功能.......................................................................................176.2.1SQL插入语句...........................................................................176.2.2SQL删除语句...........................................................................176.2.3SQL修改语句...........................................................................177系统实现..........................................................................................................187.1系统功能模块图...................................................................................187.2部分程序代码.......................................................................................187.2.1主程序代码................................................................................187.2.2数据加密解密程序代码............................................................197.2.3登陆验证程序代码....................................................................227.2.4用户信息存储程序代码............................................................267.2.5房屋信息存储程序代码............................................................297.3系统运行截图.......................................................................................348设计小节..........................................................................................................368.1心得与体会...........................................................................................368.2存在的问题及建议...............................................................................36参考文献.............................................................................................................37系统简介1.1背景随着科学技术的快速发展,不论是小型房屋中介还是大型的房地产公司,需要分类和管理的信息具有多而杂的特点,而且,信息的更新速度比较快,中介或者公司的经营者都需要及时地对各种信息进行分类整理,以最快的速度找到满足客户需求的房源,避免不必要的损失。在这种背景下,传统的人工管理,已经不再适宜。本系统用于房屋中介对信息的管理,以提高信息管理的效率,减轻管理人员的劳动力度,使得管理步骤更加简化。1.2功能描述某房屋中介公司拥有多名职员分管不同业务,公司与多名房主具有业务联系,每个房主在委托房屋中介公司进行房屋的出租或出售时都要填写一张表格,说明房屋的地址、面积、朝向、类别以及价格等相关信息。需要租住或购买房屋的客户在向中介公司寻求服务时,也需要登记需要租住或购买的房屋的细节要求。职员负责与客户约定时间,并陪同客户看房,若客户看中房屋,公司将记录客户购买或租住房屋的合同的相关信息。为此公司设计一个数据库应用系统。1、系统功能的基本要求:(1)管理公司职员的基本信息,以及所进行的业务信息,如联系客户、陪同客户看房的信息。(2)登记房屋、房主以及客户的信息,并能进行方便地增、删、改。方便房主查询所需要的房屋的查询功能。(3)统计待租或待售的房屋信息等。2、数据库要求:(在数据库中至少应该包含下列数据表)(1)公司职员基本信息表;(2)客户基本信息表;(3)房屋基本信息表;(4)客户购买或租住房屋的合同的相关信息表。3、其它要求:(1)系统要实现满足多种条件的统计分析功能,有些统计数据要采用图表的格式呈现;(2)系统要有一定的安全控制策略;(3)系统要采用实际数据进行测试。对不同身份的用户实现不同的操作权限,加强信息管理的安全性。买房者、卖方者和管理员的权限各不相同,具体如表 1.1所示。表1.1权限分配用户类型 权限描述注册,登录,查询空闲房源,对中意房源报价,查询成交买房者情况卖房者 注册,登录,发布房源,查询购买者意向,确认成交查询买卖双方基本信息,查询房源情况,对卖房者登记的管理员信息进行审核,并能根据房源情况进行分类统计需求分析2.1需求调查房屋中介管理信息系统在全球范围内都得到了广泛的应用:在法国房屋中介利用该系统实现从帮助寻找客户到签约、管理等“一条龙”服务。在美国,随着计算机和互联网的发展,MLS(MultipleListingService即多重上市服务)的应用程序逐渐代替了纸张抄写房源信息的方法。数据库的特性与房中介的工作习惯、操作流程激发了软件工程师们对客户端的开发,房地产中介商可以在客户端进行数据的传输,同时可以通过互联网自动升级,避免了客户成本过多的投入。然而,在国内传统中介公司往往有成堆的文件需要人工去处理,信息的收集和更新非常缓慢,同时大量的信息也由于无法实现共享和深度开发而难以达到最优。传统的以手工登记为主的房屋中介信息管理方式,效率低下、出错率高,耗费了大量的时间和人力资源,而借助房屋中介管理信息系统,买卖房屋的顾客只需到房屋中介中心登记一下,留下相关信息,便可以得到顾客需要的消息,同时节省了人力。随着科学技术的不断提高,计算机科学的日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对房屋中介的信息进行管理,具有着手工管理所无法比拟的优点.例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高房屋中介和房地产公司营运的管理效率,也是中介和公司的科学化、正规化管理,与世界接轨的重要条件。管理信息系统软件能使您的公司、中介或单位的生产效率,工作效率、管理水平有一个较大的提高,减少您不必要的浪费,使您对您的顾客信息的收集、房源的分配等做到心中有数,使您的决策、计划更科学、更合理,以适应当今竞争日趋激烈的环境。管理信息系统从单位、中介到大型房产公司都是很必要的 ,它的内容对于买卖房屋的顾客和管理者来说都至关重要 ,所以房屋中介管理信息系统应该能够为用户提供充足的信息和快捷的查询手段。一直以来人们使用传统人工的方式管理文件档案,或者使用人工和电脑统计相结合的方式,这些管理方式存在着许多缺点,如:效率低、保密性差,易出错 ,另外时间一长,将产生大量的文件和数据 ,这对于查找、更新和维护都带来了不少的困难。因此,开发这样一个房屋中介管理信息系统成为很有必要的事情 ,在下面的各章中我们将以开发一个房屋中介管理信息系统为例 ,谈谈其开发过程和所涉及到的问题及解决方法。2.2可行性分析2.2.1技术可行性本系统的开发利用MicrosoftSQLServer2005作为本系统的数据库,它是一个关系型数据库,而且最基本的功能和SQL2000都一样,增加的都是扩展的功能,它是一个支持多用户的新型数据库适用于大中规模的数据量需求。使用VisualStudio.NET作为系统开发的开发环境,它提供完善的指令控制语句、类与对象的支持及丰富的数据类型,给开发高性能系统提供的保障为开发满足客户要求的系统,保证了代码的模块化要求,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。 VisualStudio.NET是一套完整的开发工具,用于生成ASPWeb应用程序、XMLWebservices、桌面应用程序和移动应用程序。VisualBasic.NET、VisualC++.NET、VisualC#.NET和VisualJ#.NET全都使用相同的集成开发环境(IDE),该环境允许它们共享工具并有助于创建混合语言解决方案。另外,这些语言利用了.NETFramework的功能,此框架提供对简化ASPWeb应用程序和XMLWebservices开发的关键技术的访问。综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。2.2.2经济可行性现在,计算机的配件不断在更新,性能也变得越来越好,同时其价格正在逐渐下降。这次做的这个房屋中介管理信息系统,给房屋中介公司和顾客都带来了很大的方便,表现为以下几方面:1、本系统的运行可以代替人工进行许多繁杂的劳动;2、本系统的运行可以节省许多资源;3、本系统的运行可以大大的提高中介的工作效率;4、本系统的运行可以方便管理员对各种信息(员工、顾客以及房源等)进行分类统计和管理;5、本系统可以保证各种信息(员工、顾客以及房源等)的安全。所以本系统在经济上是可行的。2.2.3操作可行性开发.net方面的信息管理系统是一项复杂的系统工程,从70年代开始,人们逐渐认识到,为了保证在.net环境下运行的系统开发成功,必须采用工程化的系统开发方法,并研究出一些符合工程化标准的开发方法。这些方法旨在指导开发者进行信息化的系统开发,从而加快系统开发的速度、保证质量、以及降低开发成本。信息化的系统开发方法确实在开发实践中取得了一定的效果。作为我们在校即将毕业的毕业生来说,鉴于经验欠缺,时间仓促的实际情况;我们选择技术要求不高,软件规模小的小软件来做为设计题目比较适合。另外在软件数据结构方面,我们以管理方便的SQLServer作为程序后台数据支持。在软件安全方面来讲,一般的软件都包刮了软件加密、软件注册、以及不同用户使用软件的安全管理功能。1.可行性研究的前提要求:功能:设计一套房屋中介管理信息系统 ,使信息管理系统化,完善化,高效化。设计方案的具体要求应包括如下几部分 :1)需求分析2)功能实现(用户登录,买卖房屋顾客注册 ,房源发布及查询,房源的成交情况及查询,顾客以及房源信息的更新及删除等 )3)界面美观,性能:稳定快速,实时控制4)输入/输出:汉字5)安全与保密要求:不能轻易被破坏,不能让中介或公司管理员以外的人删改,对断电、死机、系统崩溃等问题有有力措施以保障数据不受损失。2.可行性研究的方法:通过调查分析开发实验室管理所具备的能力及实现的方法。 确定总体结构,利用SQLServer数据库所具有的能力,以最简洁最容易的方法,使用C#使其成为一个初级的系统软件。3.决定可行性的主要因素:中介或公司规模、设备状况、操作人员技术。4.与原有操作方式比较的优越性:比原方式操作简单易行,查询信息准,减少人力工作。2.3数据流程图2.3.1数据流程图数据流程图(DataFlowChart),是描述系统数据流程的工具,它将数据独立抽象出来,通过图形方式描述信息的来龙去脉和实际流程。数据流程图的系统部件包括系统的外部实体、处理过程、数据存储和系统中的数据流四个组成部分。2.3.2整体数据流程图整体数据流程图如图 2.1所示。图2.1整体数据流程图2.4数据字典数据字典(datadictionary)是一个自动或手动存储数据源定义和属性的文档,对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。数据字典对用户来说是一组只读的表,其内容包括数据库中所有模式对象的信息,如表、视图、簇及索引等。2.4.1数据项表数据项又称数据元素(dataelement),是数据的基本单位,一个数据元素可由若干个数据项(dataitem)组成,数据项是数据的不可分割的最小单位。数据项表如表2.1所示。表2.1数据项表数据项编号数据项名数据项含义存储长度别名DI—1roomno房屋编号Int(4)索房号DI—2typename房屋类型Char(50)房屋名DI—7phoneno联系电话Char(11)电话号DI—4Workerno员工编号Int(4)DI—5userno房主编号Int(4)DI—6User1no客户编号Int(4)2.4.2数据结构列表数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成。记为:Data-Structure=(D,R)其中D是数据元素的集合,R是该集合中所有元素之间的关系的有限集合。SartajSahni在他的《数据结构、算法与应用》一书中称:“数据结构是数据对象,以及存在于该对象的实例和组成实例的数据元素之间的各种联系。这些联系可以通过定义相关的函数来给出。 ”他将数据对象(dataobject)定义为“一个数据对象是实例或值的集合 ”。Clifford A.Shaffer在《数据结构与算法分析》一书中的定义是: “数据结构是ADT(抽象数据类型AbstractDataType)的物理实现。”数据结构列表如表2.2所示。表2.2数据结构列表数据结数据结构数据结构组成构编号名含义DS—1rooms房屋信息Roomno,roomtype,Roomposition,roomprice,Putup,roommemoDS—2roomtype房屋类型Typeid,typename,area,Bednum,hairconditionHtelephone,htelevision,Htoilet,priceDS—3booking租售信息Bookno,customname,customid,roomno,indate,discount,inmemo,checkdate,ammount概念结构设计3.1总体E-R图房屋中介管理系统总体 E-R图如图3.1所示。信誉等级用户名称联系人用户ID联系人电话客户n租售房屋类型房屋编号1装修情况房屋房屋地址联系人 n 房屋面积租购n房主ID 联系人联系电话 姓名图3.1总体E-R图3.2出租房E-R图出租房的E-R图如3.2所示。图3.2出租房E-R图3.3客户E-R图客户E-R图如图3.3所示。图3.3客户E-R图3.3房主E-R图房主E-R图如图3.4所示。房主ID 联系人联系电话 姓名图3.4房主E-R图逻辑结构设计4.1房屋信息表房屋信息表主要包括列名,描述,数据类型,数据长度以及列取值是否可以为空。具体情况如表 4.1所示。列名描述数据类型长度是否为空house_id房屋编号(主键)varchar10NOTNULLhouse_companyName物业名称varchar50NULLhouse_typeid房屋类型varchar10NULLhouse_seatid房屋位置(栋/幢)varchar10NULLhouse_state房屋状态varchar10NULLhouse_fitmentid房屋装修情况varchar10NULLhouse_favorid房屋朝向varchar10NULLhouse_methodid房屋用途varchar10NULLhouse_map房屋所在地图varchar50NULLhouse_price房屋价格numeric180NULLhouse_floorid房屋所在楼层varchar10NULLhouse_buildyear房屋年限varchar10NULLhouse_area房屋面积varchar20NULLhouse_remark房屋备注varchar50NULLuser_ids业主编号varchar10NULL表4.1房屋信息表tb_house4.2房主信息表房主信息表主要包括列名,描述,数据类型,数据长度以及列取值是否可以为空。具体情况如表 4.2所示。列名描述数据类型长度是否为空user_id用户账号(主键)varchar10否user_names用户姓名varchar20是user_sex用户性别varchar4是user_birth用户生日datetime10是user_phone用户手机varchar20是user_homephone用户家庭电话varchar20是user_email用户邮箱varchar30是user_cardid用户银行卡号varchar20是user_type用户类型varchar10是house_id房屋编号varchar10是user_recorddate用户注册日期datetime10是表4.2房主信息表 tb_user4.3客户信息表列名描述数据类型长度是否为空user_id用户账号(主键)varchar10否user_names用户姓名varchar20是user_sex用户性别varchar4是user_birth用户生日datetime10是user_phone用户手机varchar20是user_homephone用户家庭电话varchar20是user_email用户邮箱varchar30是user_cardid用户银行卡号varchar20是user_type用户类型varchar10是user_recorddate用户注册日期datetime10是表4.3客户信息表tb_user1房主信息表主要包括列名,描述,数据类型,数据长度以及列取值是否可以为空。具体情况如表 4.3所示。4.4系统数据结构通过对整个系统的分析,可以列出以下整个系统所需要数据表的结构:客户资料:账号,姓名,性别,生日,手机,家庭电话,邮箱,银行卡号,用户类型,房屋编号,注册日期等。员工资料:姓名,性别,生日,手机,银行卡号,住址,民族,学历,基本工资等。房源资料:房屋编号,房屋类型,房屋位置(栋/幢),房屋状态,房屋装修情况,房屋朝向,房屋用途,房屋所在地图,房屋价格,房屋所在楼层,房屋年限,房屋面积,房屋备注,业主编号等。意向资料:用户账号,房屋类型,房屋位置(栋/幢),房屋所在楼层,房屋朝向,房屋用途,房屋价格,房屋面积等。付款管理:应付款额,经手人编号,经手人姓名,房屋编号,付款日期,卖房者编号,卖房者姓名,卖房者联系电话,买房者编号,买房者姓名,买房者联系电话等。物理结构设计逻辑结构设计阶段的任务是将概念结构设计阶段所得到的 概念模型转换为具体DBMS所能支持的数据模型(即逻辑结构),并对其进行优化。逻辑结构设计一般分为三步进行:1.从E-R图向关系模式转化数据库的逻辑设计主要是将 概念模型转换成一般的关系模式,也就是将 E-R图中的实体、实体的属性和实体之间的联系转化为关系模式。在转化过程中会遇到如下问题:(1)命名问题。命名问题可以采用原名,也可以另行命名,避免重名。(2)非原子属性问题。非原子属性问题可将其进行纵向和横行展开。(3)联系转换问题。联系可用关系表示。数据模型的优化数据库逻辑设计的结果不是唯一的。为了进一步提高数据库应用系统的性能,还应该适当修改数据模型的结构,提高查询的速度。关系视图设计关系视图的设计又称为外模式的设计,也叫用户模式设计,是用户可直接访问的数据模式。同一系统中,不同用户可有不同的关系视图。关系视图来自逻辑模式,但在结构和形式上可能不同于逻辑模式,所以它不是逻辑模式的简单子集。关系视图主要有三个作用:(1)通过外模式对逻辑模式的屏蔽,为应用程序提供了一定的逻辑独立性。(2)更好地适应不同用户对数据的不同需求。(3)为不同用户划定了访问数据的不同范围,有利于数据的保密。6系统主要查询功能及 SQL语句6.1主要查询功能6.1.1普通查询从职员信息表中查找职员的所有信息。select*from职员;从房主信息表中查找房主的所有信息。select*from房主;从客户信息表中查找房主的所有信息。select*from客户;6.1.2条件查询从客户信息表中查找地址为龚家湾北路 211号的客户姓名。select 姓名from客户where地址='龚家湾北路211号';从房主信息表中查找 ID为002的房主的联系电话,出生年月以及姓名。select 联系电话,出生年月,姓名from房主whereID='002' ;从客户信息表中查找地址为龚家湾北路 211号并且姓名为赵三的客户的联系电话,家庭住址,身份证号以及信誉等级。select 联系电话,家庭住址,身份证号,信誉等级from客户where地址='龚家湾北路211号'AND姓名=‘赵三’;从客户信息表中查找地址为龚家湾北路 211号的客户所租的房屋编号以及房主的联系电话。select tb_house房.屋编号,tb_user.联系电话from客户,房屋,房主where地址='龚家湾北路211号'ANDtb_use1.房屋编号=tb_house房.屋编号ANDtb_user.联系人=tb_house联.系人;6.2增删信息功能6.2.1SQL插入语句1.客户姓名添加INSEREINTO tb_user1(cname)VALUES(‘赵三’);2.客户ID增加INSEREINTO tb_user1(ID)VALUES(‘13480144’);6.2.2SQL删除语句1.客户姓名删除DELECTFROM tb_user1WHERE cname=’赵三’;2.客户ID删除DELECTFROM tb_user1WHERE ID=’13480144’;6.2.3SQL修改语句1.员工姓名修改UPDATE tb_user1SET cname=’赵三’WHEREcname=‘李四’;2.员工编号修改UPDATE tb_user1SET ID=’13480144’;系统实现7.1系统功能模块图图7.1系统功能7.2部分程序代码7.2.1主程序代码usingSystem;usingSystem.Collections.Generic;usingSystem.Windows.Forms;namespacehouseAgency{staticclassProgram{//<summary>应用程序的主入口点。</summary>[STAThread]staticvoidMain(string[]args){Application.Run(newfrmUserLogin());}}}7.2.2数据加密解密程序代码usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingSystem.Security.Cryptography;usingSystem.Windows.Forms;//添加引用usingSystem.IO;namespacehouseAgency{classMimaMeth{privatestatic stringencryptkey="Oyea"; //密钥#region 对数据进行加密<summary>对数据进行加密</summary><paramname="encryptstring">需要加密的数据</param><returns></returns>publicstatic stringDESEncrypt(stringencryptstring){stringstrRtn;try{DESCryptoServiceProvider desc = newDESCryptoServiceProvider();//des进行加密byte[]key=System.Text.Encoding.Unicode.GetBytes(encryptkey);byte[]data=System.Text.Encoding.Unicode.GetBytes(encryptstring);MemoryStreamms=newMemoryStream();//存储加密后的数据CryptoStream cs = new CryptoStream(ms,desc.CreateEncryptor(key,key),CryptoStreamMode.Write);cs.Write(data,0,data.Length);//进行加密cs.FlushFinalBlock();strRtn=Convert.ToBase64String(ms.ToArray());returnstrRtn;}catch(Exceptionex){MessageBox.Show("错误:"+ex.Message,"错误消息提示框",MessageBoxButtons.OKCancel,MessageBoxIcon.Error);returnnull;}}#endregion#region 对数据进行解密///<summary>对数据进行解密</summary><paramname="decryptstring">需要解密的数据</param><returns></returns>publicstaticstringDESDecrypt(stringdecryptstring){stringstrRtn;try{DESCryptoServiceProviderdesc=newDESCryptoServiceProvider();byte[]key=System.Text.Encoding.Unicode.GetBytes(encryptkey);byte[]data=Convert.FromBase64String(decryptstring);MemoryStreamms=newMemoryStream();//存储解密后的数据CryptoStream cs = new CryptoStream(ms,desc.CreateDecryptor(key,key),CryptoStreamMode.Write);cs.Write(data,0,data.Length);//解密数据cs.FlushFinalBlock();strRtn=System.Text.Encoding.Unicode.GetString(ms.ToArray());returnstrRtn;}catch(Exceptionex){MessageBox.Show("错误:"+ex.Message,"错误消息提示框",MessageBoxButtons.OKCancel,MessageBoxIcon.Error);returnnull;}}#endregion}}7.2.3登陆验证程序代码usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Data.SqlClient;usinghouseAgency.mothedCls;namespacehouseAgency{publicpartialclassfrmUserLogin:Form{ClsConcon=newClsCon(); //实例化连接对象conclsLoginMethedcm=newclsLoginMethed(); //实例化登录记法cmclsLogincl=newclsLogin();

//实例化登录对象

clstringErrorNum=string.Empty;

//记录登录时用户名intNum=0;

//记录点击次数publicfrmUserLogin(){InitializeComponent();}privatevoidbtnLogin_Click(objectsender,EventArgse){#region//用户与密码是否正确不正确给三次机会然后关闭cl.LName=this.cobName.Text;cl.LPwd=MimaMeth.DESEncrypt(this.txtPwd.Text.Trim().ToString());stringpower=cm.select_table(cl);if(power!="none"){//调一个方法如果成功进入后台否则记到登陆日制中frmMainfm=newfrmMain();this.Hide();fm.M_str_Power=this.cobName.Text+"@"+power;fm.Show();login_recordMethlogmeth=newlogin_recordMeth();logmeth.insert_table(this.cobName.Text,DateTime.Now);}elseif(this.txtPwd.Text==""&&this.cobName.Text==""){//当所有信息都没有时这是一个入口frmMainfm=newfrmMain();this.Hide();fm.Show();}else{if(ErrorNum==cl.LName){Num+=1;if(Num>=3){this.Close();}}else{ErrorNum=cl.LName;Num+=1;}MessageBox.Show("密码有误,三次后将自动关闭 ,这是第"+Num+"次");this.txtPwd.Text=string.Empty;this.txtPwd.Focus();}#endregion}privatevoidtxtPwd_KeyPress(objectsender,KeyPressEventArgse){if(e.KeyChar==13)this.btnLogin.Focus();}privatevoidbtnCancel_Click(objectsender,EventArgse){Application.Exit();//Environment.Exit(0);}#region//clerarTextBoxprivatevoidclearText(){foreach(Controlcontinthis.gbLogin.Controls){if(cont.GetType().ToString()=="System.Windows.Forms.TextBox"){cont.Text=string.Empty;}}}#endregionprivatevoidfrmUserLogin_Load(objectsender,EventArgse){con.ConDatabase();{try{SqlDataAdapterda=newSqlDataAdapter("select*fromtb_login",con.conn);DataTabledt=newDataTable();da.Fill(dt);this.cobName.DataSource=dt.DefaultView;cobName.DisplayMember="login_name";}catch(Exceptioney){MessageBox.Show(ey.Message);}}}}}7.2.4用户信息存储程序代码usingSystem;usingSystem.Collections.Generic;usingSystem.Text;namespacehouseAgency.mothedCls{classclsUser{privatestringUser_IDS;privatestringUser_names;privatestringUser_sex;privatestringUser_birth;privatestringUser_phone;privatestringUser_homePhone;privatestringUser_email;privatestringUser_cardID;privatestringUser_type;privatestringhouse_ID="none";privatestringUser_recordDate;publicstringid{get{returnUser_IDS;}set{User_IDS=value;}}publicstringname{get{returnUser_names;}set{User_names=value;}}publicstringsex{get{returnUser_sex;}set{User_sex=value;}}publicstringbirth{get{returnUser_birth;}set{User_birth=value;}}publicstringphone{get{returnUser_phone;}set{User_phone=value;}}publicstringhomePhone{get{returnUser_homePhone;}set{User_homePhone=value;}}publicstringemail{get{returnUser_email;}set{User_email=value;}}publicstringcardID{get{returnUser_cardID;}set{User_cardID=value;}}publicstringtype{get{returnUser_type;}set{User_type=value;}}publicstringhID{get{returnhouse_ID;}set{house_ID=value;}}publicstringrecordDate{get{returnUser_recordDate;}set{User_recordDate=value;}}}}7.2.5房屋信息存储程序代码usingSystem;usingSystem.Collections.Generic;usingSystem.Text;namespacehouseAgency.mothedCls{classClsHouse{stringhouse_ID;stringhouse_companyName;stringhuose_typeID;stringhouse_seatID;stringhouse_state;stringhouse_fitmentID;stringhouse_favorID;stringhouse_mothedID;stringhuose_map;stringhouse_price;stringhouse_floorID;stringhouse_buildYear;stringhouse_area;stringhouse_remark;stringuser_ids;publicstringid{get{returnhouse_ID;}set{house_ID=value;}}publicstringname{get{returnhouse_companyName;}set{house_companyName=value;}}publicstringtypeID{get{returnhuose_typeID;}set{huose_typeID=value;}}publicstringseatID{get{returnhouse_seatID;}set{house_seatID=value;}}publicstringstate{get{returnhouse_state;}set{house_state=value;}}publicstringfitmentID{get{returnhouse_fitmentID;}set{house_fitmentID=value;}}publicstringfavorID{get{returnhouse_favorID;}set{house_favorID=value;}}publicstringmothedID{get{returnhouse_mothedID;}set{house_mothedID=value;}}publicstringmap{get{returnhuose_map;}set{huose_map=value;}}publicstringprice{get{returnhouse_price;}set{house_price=value;}}publicstringfloorID{get{returnhouse_floorID;}set{house_floorID=value;}}publicstringbuildYear{get{returnhouse_buildYear;}set{house_buildYear=value;}}publicstringarea{get{returnhouse_area;}set{house_area=value;}}publicstringremark{get{returnhouse_remark;}set{house_remark=value;}}publicstringurids{get{returnuser_ids;}set{user_ids=value;}}}}7.3系统运行截图1.登陆界面:进如登陆界面后,输入用户名: mr;密码:mrsoft后进入主界面。如图7.2所示。图7.2登录窗体2.客户管理界面:进行一些客户信息添加、修改及删。如图 7.3所示。图7.3客户基本信息3.用户管理界面:进行一些客户信息添加、修改及删除。如图 7.4所示。图7.4用户管理界面4.房源信息状态查询:查看房屋的租售情况,以及所剩的房屋数量等。 房源查询管理界面:对所需房屋类型进行一些查询。如图 7.5所示。图7.5房源状态查询设计小节8.1心得与体会通过对此程序的设计和开发,能让我从中学到不少的知识,能充分的体会到做开发首先要熟练地掌握编程的各种技能,在这次课程设计中,我还懂得了程序开发的一些比较重要的步骤,比如需求分析、总体设计、数据库设计 (含概念设计、逻辑设计、物理设计 )、程序模块设计(含功能需求、用户界面设计、程序代码设计与分析、运行结果 )、系统使用说明等。总之,通过这次课程设计,我收获颇丰,相信会为自己以后的学习和工作带来很大的好处。最重要的还是激发了我编程的兴趣和热情,让我从一个只懂理论变成了能做一些小型程序,让我对编程更加热爱了。整体地评价这次课程设计,我认为收获很大,正如上面所说的那样,通过课程设计,既复习了以前的旧知识,又学到了一些新的知识;设计增强了我们用所学知识去解决具体问题的能力,进一步培养了我们独立思考问题和解决问题的能力。8.2存在的问题及建议在运行程序的时候,首先要进行数据库连接,否则无法运行,系统会提示错误信息。学会触发器的使用非常有必要,我们可以运用触发器解决一些问题,触发器可以对视图进行添加,修改和删除操作。当直接对视图表进行操作时,如果没有 insteadof触发器是无法操作的,如果视图是由多个表组成的,一一对每个表进行操作很麻烦,而且出错的可能性很大。通过下面的代码便可以轻松的解决,trig_update_OfEmployee是一个update触发器,针对由员工表和登录表组成的视图 view_employeey进行添加、修改和删除操作。还原数据时,应确保要还原的数据库处于非连接状态,否则无法还原数据。为了达到要求,我们在这里写了一个过程 killspid。存储过程killspid通过游标找到相应数据库的编号,然后使用 kill方法杀死数据库连接过程。存储过程在应用过程中,须在前台通过传递相应的参数完成,有时可能出现服务器超时信息,则再次执行后会成功。参考文献王珊、萨师煊著数据库系统概论(第五版).高等教育出版社,2014.9刘金岭等著数据库原理及应用实验与课程设计指导,清华大学出版社出版,2010.6钱雪忠等著数据库原理及技术课程设计(全新正版),清华大学出版社出版,2009.2周屹著数据库原理及开发应用-实验与课程设计指导,清华大学出版社出版,2008.12陆慧娟主编数据库设计与应用开发实践,清华大学出版社2014.1陶宏才等编著数据库原理及设计,清华大学出版社2014.1丁忠俊著数据库系统原理及应用,清华大学出版社出版,2012.4李晓峰等著数据库系统原理及应用,水利水电出版社,2011.2万常选著数据库系统原理与设计(第2版),清华大学出版社出版,2012.9路游,于玉宗编著数据库系统课程设计,清华大学出版社2009[11]《Access2010数据库应用从入门到精通》何先军编,中国铁道出版社.2013.10[印]辛赫(Singh.S.K)著何玉洁,王晓波,车蕾,等译《数据库系统概念、设计及应用》,机械工业出版社,2010.1基于C8051F单片机直流电动机反馈控制系统的设计与研究基于单片机的嵌入式Web服务器的研究MOTOROLA单片机MC68HC(8)05PV8/A内嵌EEPROM的工艺和制程方法及对良率的影响研究基于模糊控制的电阻钎焊单片机温度控制系统的研制基于MCS-51系列单片机的通用控制模块的研究基于单片机实现的供暖系统最佳启停自校正(STR)调节器单片机控制的二级倒立摆系统的研究基于增强型51系列单片机的TCP/IP协议栈的实现基于单片机的蓄电

温馨提示

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

最新文档

评论

0/150

提交评论