二手房交易管理系统数据库概论课题设计_第1页
二手房交易管理系统数据库概论课题设计_第2页
二手房交易管理系统数据库概论课题设计_第3页
二手房交易管理系统数据库概论课题设计_第4页
二手房交易管理系统数据库概论课题设计_第5页
已阅读5页,还剩46页未读 继续免费阅读

下载本文档

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

文档简介

PAGEPAGE51绪论随着我国社会主义市场经济体制的确立和发展,商业流通领域进入了一个空前的发展阶段,面临商界的激烈竞争,只有在多变的商品和顾客中挖掘并掌握市场需求,即淘汰“卖不出去的商品”,购进“卖得快、利润高的商品”的经营者才会获利,企业也才能在竞争中生存和发展,如果能够选择一个好的管理系统,把大量繁杂的、看似毫无关系的数据,有机的结合起来,形象的反映出市场的供求关系,就能够为得出正确的决策做出事半功倍的效果。在过去,销售业的操作一般都靠人工操作,如靠人工登记卡片、填写表格资料,然后根据不同的分类入帐,销售额的日结算和每月的盘点都需花费大量的人力和物力来完成。即使前几年,有些商家开始使用电脑管理,但也只是进行一些简单的数据计算的操作。这是一项极其繁琐的工作。通过人手工计算不仅容易出错,而且不能够及时把数据之间的关系形象化表现出来,也就不能够进一步掌握市场的最新动态。而通过本系统基本可解决以上问题,并且能够方便、灵活地对数据库的资料进行查询、统计、打印等操作,所有这些对数据库进行的操作都受到管理级别的限制,确保数据的安全性。

数据库技术是一门历史弥坚的学科,不像其它的计算机技术会随着时间的推移而变得越来越没有声息。考虑其原因,则是因为信息的爆炸对数据库技术的要求只增不减。在互联网日益发展、壮大的背景下,在因特网热潮不减的情况下,如何让原来在单机中使用的数据库可供多机使用,也成了必然的趋势。企业要在竞争中求得生存,就应使自己的产品资料销售、管理等方面科学化。SEQ图表\*ARABIC1.需求分析随着中国经济的高速发展,房地产行业已经成为了国民经济的支柱产业之一。房地产行业可分为房地产开发、物业管理、房地产二手物业代理等。在企业的自身,越来越多的房地产商采用信息化技术来管理企业。他们以自己的网络平台为基础,通过多边协议的形式进行集团采购和信息共享,提高市场竞争力,实现企业信息管理现代化。房地产开发商、物业管理公司和房地产二手物业代理公司在信息化建设的过程中,通常都会采用各种售楼管理软件或物业管理软件。公司的各种数据和信息运行在公司的售楼系统和物业系统中,迫切需要数据集中管理,各售楼处和物业管理处或地产门店能够将数据实时上报总部,便于公司的管理层能够每时每刻都知道公司的业务和财务数据以作出准确决策。随着我国市场经济的蓬勃发展,房价的不断攀升,对于刚刚步入社会的年轻人尚未具有购买新房的能力,甚至一些工作很长时间的白领也瞄准了二手房市场,随着二手房市场的不断发展,二手房中介企业也相应的发展起来,二手房中介企业正处于一个快速发展时期,这必然会导致竞争的加剧以及服务质量的降低,要想在激烈的市场竞争中谋求发展,客观上要求企业必须加强内部管理,提高运营效率。二手房交易,尤其在北京、上海、深圳等大城市是一个非常活跃的现象,其发展前景相当可观。在二手房交易过程中,经纪公司(也就是我们常说的中介公司)无可非议是其中一个桥梁,所以,今后北京乃至全中国的经纪公司必将走向一个高峰,此中竞争也将迅速扩大,经纪人的地位也会得到更多百姓的认可。而我国大部分二手房中介企业刚刚起步,虽然经营实现了专业化,但是从信息机制上还没有摆脱原有的销售模式,企业内部没有形成完善、有效的激励和约束的信息化管理机制,企业发展的动力不足,影响了企业的持续、稳定、快速发展。我们根据当今房地产经纪公司的业务流程,了解到二手房销售管理信息系统应满足以下一些需求:(1)满足二手房销售的数据需求,能够方便地进行房屋数据的录入和多条件查询。(2)房屋居间服务合同的结构要求严格遵照原有的业务,并要求数据准确、安全,同时准确的记录时间。(3)要添加基础数据的管理和用户权限的设置。为了保障系统的准确性,对于可能发生的问题要进行检验,同时要给出相应的提示信息。(4)针对不同的角色,将系统用户分为系统管理员、经纪人和合同责任人。系统管理员可以享有系统的全部权限,经纪人享有各区域的房屋信息的更新权和全部房屋信息的查询权,合同责任人享有房屋居间服务合同的更新权和全部房屋信息的查询权。我们设计的“二手房销售管理信息系统”的方案特点是网络数据库SQLServer,更好的展示系统的功能强大,使系统运行的更加的完美,使购买的用户能够更好的了解二手房的最新资料,使系统能够更好的记录用户的购买信息等。软件需求分析是在软件计划的基础上进行的。需求分析是介于系统分析和软件设计阶段之间的桥梁。一方面,需求分析以系统规格说明和项目计划作为分析活动的基本出发点,并从软件角度对它们进行检查逾调整;另一方面,需求规格说明又为用户和开发人员提供一起协商讨论的基础,作为软件设计、实现、测试和维护的依据。1.1现状的分析在美、日等信息化程度较高的国家和地区,网络商店发展速度迅猛,美国的世界级超一流的零售商,如沃尔玛凯玛特,家庭仓储、科罗格、J.C培尼等纷纷挤身于网络经商的行列。调查表明:美国的家庭已越来越习惯于在家中从网上购物。在我国,网上购物从无到有也不过短短几年时间。我国第一家网上购物发生在1996年,燕莎友谊商场首次通过网上商城售出一个景泰蓝,虽然货款的支付不是在网上进行的,但这毕竟为我国零售业奏出了网上购物的先声。根据CNNIC的统计结果,截止2004年1月中国有互联网用户7950万人,而又有40.7%以上的网民在过去的一年里有过网上购物经历,这就说明中国有网上购物的用户达是3235.7万人,并且这一数字还在以17%左右的速度增长,预计到2006年中国网上购物用户将达到6962万人,这说明在中国发展网上购物具有良好的群众基础,网上购物方式日趋被大家所接受。随着科学技术的进步和社会经济的发展,计算机在现实生活中扮演越来越重要的角色,在房地产开发界里,越来越多的计算机已经进入选房,购房中的一部分引导者。而当前房价飙升不断,二手房购房的火热程度也因此攀升,进入了信息化时代,我们有能力让我们的生活变的更好,对于购房客户可以通过计算机来进行选购,以实现选购自动化,房地产开发人员对资料信息的管理,信息的发布,都可以通过本系统。因此,在二手房交易过程中建立一个二手房交易管理系统是十分必要的。需要解决的问题之一:改变客户选房、购房盲目选购方式,减轻客户选房、购房中带来不必要的纠纷,以及使客户可以选购自己理想中的房屋。需要解决的问题之二:客户的账号管理,可以随意添加新的账号。需要解决的问题之三:可以添加和删改客户信息、房产信息,以及定单管理。需要解决的问题之四:对房地产中介管理系统数据的更新与维护。本系统的最终用户为选房、购房客户,管理人员和维护人员必须掌握计算机的基本操作,还要掌握房地产的即时信息,并且能够熟练的运用office之类的办公软件。2010年房价走势大局1.2功能需求分析本系统是一个电子商务系统,其目标是赋予基本的电子商务功能,我们应该使本网站的操作尽量简单使它能够吸引更多的在线顾客。所以我们力图分析理论中对顾客有价值的功能,除了基本的店面功能和网站必备的功能以外,我们还提供了购物车,可以让顾客像在超市中购物一样,将想要购买的物品放入购物车,如果顾客看中了其他物品不想买刚才的物品时可以从购物车将物品清出,添加新物品。通过购物车给顾客提供最大的选择空间。对于系统管理员,也力求尽量大可能方便其进行操作。总之,我们将网上二手房销售系统的功能划分为客户对功能的需求和管理员对功能的需求,两个部分。他们的需求如下所列:客户对功能的需求客户注册登陆取得权限浏览最新的商品客户信息修改查看留言板管理员对功能的需求查询所有用户的信息删除不合法的用户添加商品公告信息管理其次,网上二手房销售系统的数据库需求包括:1、商品数据的准备。首先要搜集分销商的所有商品数据。这些商品数据可以分为三类:纸面记录、电子数据(XML、Access、Excel等文件)、网上数据。无论对于哪一种数据,都要对其进行检查,修正有问题的数据,删除重复和过期的记录。在检查的同时,还要对这些数据进行分析,为制定商品目录方案做准备。2、商品数据方案的制定。商品数据方案制定的目的在于:1)对商品进行科学、灵活地分类,方便客户迅速从少则几万,多则几十万甚至上百万种商品中找出所需商品。2)使系统支持强大、方便、快捷的查询功能,实现模糊查询和智能查询。3)高效的商品数据方案能提高数据库性能,提高网页浏览速度。3、客户信息表的制定。客户信息表内保存着在线商店中所有客户个人所拥有的个人信息和资料,是在线商店的后台管理人员进行商品销售的设计规划和进行决策的依据和参考。客户ID则是客户个人身份证明的依据。明确了该系统的需求,并且对需求进行认真的分析,将有利于后期的系统设计和实施。1.3业务流程业务流程图是一种描述系统内各单位、人员之间业务关系、作业顺序和管理信息流向的图表,利用它可以帮助分析人员找出业务流程中的不合理流向。图3.1是网上二手房销售系统的业务流程图,通过它可以大概了解商城的情况。图1.1系统业务流程图1.4数据流程数据流程图是软件工程中专门描绘信息在系统中流动和处理过程的图形化工具。因为数据流程图是逻辑系统的图形表示,即使不是专业的计算机技术人员也容易理解,所以是极好的交流工具。生成订单生成订单添加留言留言信息买方注册注册信息卖方注册注册信息管理员注册登陆信息修改商品修改订单管理公告商品信息订单信息公告信息房源信息添加留言留言信息修改资料资料信息资料信息修改资料资料信息修改资料图1.2二手房销售系统数据流程图1.5数据字典1.5.1数据字典简析数据字典存储有关数据的来源,说明,与其他数据的关系,用途和格式等信息,它本身就是一个数据库,储存“关于数据项的数据”。数据字典是个指南,它为数据库提供了“路线图”,而不是“原始数据”。换句话说,数据字典通常是指数据库中数据定义的一种记录,类似数据库的数据结构,但其内容要比数据库的数据结构描述丰富得多。数据字典在不同的数据库管理系统中也有一些差异。在数据库系统中,数据字典通常是有基本表和用户可存取的视图构成的。基本表数据字典的基础是一组基本表组成,存储相关的数据库的信息。这些信息仅由数据库系统读和写,它们很少被数据库用户直接存取。(1).SQLServer用户的名字。(2).每个用户所授的特权和角色。(3).模式对象的名字(表,视图,快照,索引,聚集,同义词,序列,过程,函数,包及触发器等)(4).关于完整性约束的信息。(5).列的默认值。(6).有关数据库中对象的空间分布信息及当前使用情况。(7).审计信息(如谁存取或修改给中对象)。数据字典是系统中各类数据描述的集合,是各类数据结构和属性的清单。它贯穿于数据库需求分析直到数据库运行的全过程,在不同的阶段其内容形式和用途各有区别,在需求分析阶段,它通常包含以五个部分内容:数据项,数据结构,数据流,数据存储,处理过程。归结起来分为实体信息和实体之间的联系1.5.2数据项及数据结构分析根据以上图1.1-1.2中,可以得出相关事项,作为数据项;分析这些数据项,找出组合项、导出项、非结构化数据项,确定基本项。数据项可以是字母、数字或两者的组合。通过数据类型(逻辑的、数值的、字符的等)及数据长度来描述。数据项用来描述实体的某种属性。检查是否有要补充的基本数据项,是否有要改进的地方,从而得出所有基本项。最后设计如下面所示的数据项和数据结构:买方:购房或者租赁订单的发出者,包括:注册号,用户ID,真实姓名,密码,Email,地址,电话,QQ,注册时间(系统自动生成),密保问题,密保答案卖方:提供二手房详细信息(房房屋持有者),包括:注册号,用户ID,真实姓名,密码,Email,地址,电话,QQ,注册时间(系统自动生成),密保问题,密保答案二手房:进行交易的商品,包括:房源编号,房源名称,所属区域编号,楼盘编号,建筑年代,建筑单位,户型编号,面积,楼层,总楼层,单元,车库面积,基础设施,装修状况,物业管理费,权属留言板:二手房信息提供的平台,买方及卖方交流地带,包括:主题,主题ID,作者,Email,发布时间(系统自动生成),留言内容,留言总数,售房总数管理员:整个数据库的管理者,包括:管理员ID,管理员名,密码公告:有管理员提供的一些公用信息,包括:主题,公告时间(系统自动生成),内容,公告总数业务员:带领买方参观房子的工作人员,包括:工作证号,姓名,年龄,Email,电话,地址,QQ,服务区域租赁订单:买方租赁订单,包括:订单号,订单时间,订单人姓名,订单人电话,订单人地址,Email购买订单:买方购买订单,包括:订单号,订单时间,订单人姓名,订单人电话,订单人地址,Email已售房屋:中介公司已售出房屋的记录,为顾客提供参考,包括:房源编号,房源名称,所属区域编号,楼盘编号,建筑年代,建筑单位,户型编号,面积,楼层,总楼层,单元,车库面积,基础设施,装修状况,物业管理费,权属,实际售房日期房屋居间服务合同:买方与卖方所签订的双方协议,包括:房源编号,房源名称,甲方实际售价,建筑面积,权属,乙方联系方式,乙方联系电话,乙方身份证号,甲方联系方式,甲方联系电话,甲方身份证,甲方代表,乙方代表,丙方(合同负责人),是否签订。1.6可行性分析1.6.3可行性分析进行可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决,而且我们的目的不仅仅是解决问题,还要确定问题是否值得去解决,即可行性研究的结果是“做还是不做”而非“如何去做”。在项目开发之前进行可行性论证是非常必要的。一个项目如果未经过充分的可行性论证,只粗略地估计解决问题的花费和方法,就盲目上阵开始软件开发工作,结果往往是不能在预定的系统规模或时间期限内解决问题,甚至无法求解,最后造成花费在该项目上的时间、人力、物力资源和经费的浪费。因此对于待开发的新系统,在所具备的资源和其他条件的前提下,是否能够完成软件开发工作及获得相应的收益,需通过认真地论证其可行性来确定,避免盲目开发,造成无谓的浪费。通常情况下,可行性分析应从经济可行性、技术可行性和操作可行性等方面着手。1.6.1经济可行性计算机网络作为一种先进的信息传输媒体,有着信息传送速度快、信息覆盖面广、成本低的特点。因此很多企业都开始利用网络开展商务活动,我们可以看到,在企业进行网上商务活动时产生的效益是多方面的,譬如:可以低投入地进行世界范围的广告活动,可以提高公司的社会形象,可以提高企业的管理效率,增加新的管理手段等。"在线二手房销售系统"是一种典型的电子商务应用,它是网上商务活动的产物,代表了未来零售业的走向。到网上二手房商城书店消费的顾客不必出门,而是通过计算机网络选购商品,由相应网络经销商送货上门。这种直销的好处是消费者可以方便地得到所需的商品,有效地减少了销售环节,从而最大程度地降低了商品的最终价格。在国内,电子商务网站一直在艰难地发展着。从当年的8848的失落,到现在的卓越兴起。或多或少都体现了中国电子商务活动的不完善、不成熟。对网络销售系统的研究,可以为以后完整的大型商务网站开发积累大量的经验。同时,系统本身也可作为一个实用系统投入运行。1.6.2技术可行性技术方面的可行性就是根据现有技术条件,能否实现系统的各项要求。设备:该系统对所需的硬件设备,如服务器、pc机、打印机即网络配件等的性能要求一般,现有设备的性能完全能够满足系统功能的要求。软件:本系统属于数据库应用程序,本系统需要一个数据库服务器及其运行的操作系统平台,根据客户的数据量并不是十分巨大,我们选择目前市场上价格比较低廉的数据库服务器产品:MicrosoftsqlServer2000及配套的平台Windows2000。二手房交易管理系统后台采用的数据库是微软公司的MicrosoftsqlServer2000及配套的平台Windows2000。之所以采用MicrosoftsqlServer2000是因为它是面向高端的数据库管理系统,具有强大的数据管理功能,提供了丰富的管理工具支持数据的完整性管理、安全性管理和作业管理。MicrosoftsqlServer2000具有分布式数据库和数据仓库功能,能进行分布式事务处理和联机分析处理,支持客户机/服务器的系统结构。MicrosoftsqlServer2000还具有强大的网络功能,支持发布Web页面以及接收电子邮件。它是目前广为使用的数据库管理系统。另外,MicrosoftsqlServer2000是由一系列相互协作的组件构成,能满足最大的Web站点和企业数据处理系统存储和分析数据的需求。MicrosoftsqlServer2000提供了在服务器系统上运行的服务器软件和在客户端运行的客户端软件,连接客户和服务器计算机的网络软件则由WindowsNT/2000提供。MicrosoftsqlServer2000的数据库系统的服务器运行在WindowsNT/2000系统上,负责创建和维护表和索引等数据库对象,确保数据完整性和安全性,能够在出现各种错误时恢复数据。客户端应用程序可以运行在Windows9x/NT/2000系统上,完成所有的用户交互操作。将数据从服务器检索出来后,可以生成拷贝,以便在本地保留,也可以进行操作。MicrosoftsqlServer2000建立于MicrosoftWindowNT的可伸缩性和可管理性之上,提供了功能强大的客户服务器平台,高性能客户服务器结构的数据库管理系统可以将VisualFoxPro、VisualBasic、VisualC++、Delphi作为客户端开发工具,而将MicrosoftsqlServer2000作为存储数据的后台服务器软件。MicrosoftsqlServer2000是基于客户机/服务器的数据库管理系统。用户通过使用客户系统从服务器检索信息并进行本地操作,服务器关注数据库进程,而客户则关注信息的表示。MicrosoftsqlServer2000使用Transact-SQL语言来维护、实现和访问数据库,Transact-SQL是SQL(StructuredQueryLanguage)的一个子集标准。SQL是数据库操作的标准,每个数据库产品均包含其某一版本。1.6.3操作可行性系统的操作可行性是指系统的分析系统的运行方式、操作规程在用户组织内是否可以有效、顺利实施等问题。二手房交易管理系统根据实际考察与调研的结果,设计出了适应企业商务活动的需要,并且系统操作简单、界面友好、美观,功能全面、能极大程度的使商家获得利润的系统。因此,系统在操作方面也是可行的。SEQ图表\*ARABIC2.总体设计2.1概念设计在概念设计阶段中,设计人员从用户的角度看待数据及处理要求和约束,产生一个反映用户观点的概念模式。然后再把概念模式转换成逻辑模式。将概念设计从设计过程中独立开来,使各阶段的任务相对单一化,设计复杂程度大大降低,不受特定DBMS的限制。在系统设计的开始,首先考虑的是如何用数据模型来数据库的结构与语义,以对现实世界进行抽象。目前广泛使用的数据模型可分为两种类型,一种是独立于计算机系统的“概念数据模型”,如“实体联系模型”;另一种是直接面向数据库逻辑结构的“结构数据模型”。在系统的数据库设计中,先要对系统分析得到的数据字典中的数据存储进行分析,分析各数据存储之间的关系,然后才能得出系统的关系模式。可以采用E-R图的方法来进行数据结构分析。E-R设计方法是一种通过E-R图来描述现实世界信息结构的DB设计方法。E-R图由实体、属性、联系三部分组成。在本系统中采用“实体联系模型”(ER模型)来描述数据库的结构与语义,以对现实世界进行第一次抽象。ER模型直接从现实世界抽象出实体类型及实体间联系,然后用ER图来表示数据模型。它有两个明显的优点:接近于人的思维,容易理解;与计算机无关,用户容易接受。ER图是直观表示概念模型的工具,它有四个基本成分:矩形框,表示实体类型(考虑问题的对象)。菱形框,表示联系类型(实体间的联系)。椭圆形框,表示实体类型和联系类型的属性。对于关键码的属性,在属性名下划一横线。直线,联系类型与其涉及的实体类型之间以直线连接。在得到全局ER模式后,为了提高数据库系统的效率,还应进一步依据处理需求对ER模式进行优化。一个好的全局ER模式,除能准确、全面地反映用户功能需求外,还应满足下列条件:实体类型的个数要尽可能的少;实体类型所含属性个数尽可能少;实体类型间联系无冗余。2.2数据表的设计在完成系统的ER图之后,需要将ER模型转化为关系模型,也就是说,要设计出数据库所需要的表格。在这里,选用的是关系数据库。因为关系数据库中的二维表格可以很清楚地描述数据之间的联系。在这里不得不提到一个概念——范式。其实在上一节的ER图设计中,已经运用了范式的思想,不仅如此,在数据库的表格设计中更离不开范式的思想,它是数据库设计的基础,如果不注意这个问题将会导致一系列问题的出现。设计原则如下:1.进行规范化设计,尽可能地减少数据冗余和重复2.合理的数据库表的设计应该是在满足需求的前提下,使数据的重复量最小,就尽量按照关系数据库系统理论方法去设计一个数据库,减少数据的冗余。3.结构设计与操作设计相结合在设计数据库结构时,有时为了编程实现的简捷和思路的清晰,往往故意增加一些冗余数据。这虽然有悖于传统的关系数据库理论,但是考虑到选择的机器型号和档次等因素,如果增加的冗余不会明显增加存储空间和降低处理效率,并且对编程实现有很大帮助,往往可以采用这种方法。数据结构具有相对的稳定性数据结构的相对稳定性,可以作为新、旧系统转换的依据。无论采用何种方法或手段去处理日常事务,都应该能完成相应的功能,决不会因为采用了计算机而丢失了必要的功能,或彻底改变了原有的工作流程和模式。计算机系统的建成是建立在原系统充分调研的基础上的,它既不能脱离原系统的大框架,也不是简单的重复和替代。所以数据库表结构设计应保证数据的相对稳定,这样才能考虑在新的数据结构下的业务处理方式。在系统中定义的表格都严格地按照范式的思想和要求去完成,数据库中的所有表格都达到了三范式的要求。基于以上三条设计原则,根据系统ER图,针对本系统的特点,在对所搜集的数据进行规范化之后,我选用MicrosoftAccsse数据库来进行数据库的逻辑设计。2.3数据库模块分析二手房销售管理信息系统二手房销售管理信息系统公司内部信息管理售房信息管理基础数据管理系统管理登录公司内部信息管理售房信息管理基础数据管理系统管理登录公告管理公告管理已售房屋记录客户看房记录房屋居间服务合同管理修改密码用户管理已售房屋记录客户看房记录房屋居间服务合同管理修改密码用户管理员工数据管理房源数据管理员工数据管理房源数据管理卖方用户管理买方用户管理卖方用户管理买方用户管理图2-1系统模块图2.4数据库模块简介1、登录模块打开系统时,出现一个登陆对话框,输入用户名和密码,如果用户名和密码不正确,进入主控制平台,否则提示用户明确错误信息,并能够看到有数据管理员发出的最近的公告信息。2、系统管理模块(1)用户管理子模块:系统管理员进行用户权限设置和用户的浏览,包括用户密码和用户的更改,同时为保障系统健壮,进行输入检查,并给与必要的信息提示。(2)修改密码子模块:任何用户可以修改自己的密码。3、基础数据管理模块设置和维护区域、房型、楼盘的编码与名称的对应关系。系统管理员有权进行信息的更新,其他用户只能浏览。4、公司内部信息管理模块(1)员工数据管理子模块:设置和管理与房屋销售相关的员工信息数据,包括其基本信息和责任区域。向全体员工提供查询功能,系统管理员可以进行数据的添加、删除、修改。(2)房源数据管理子模块:设置和管理房源数据。向全体员工提供查询功能,系统管理员,经纪人可以进行数据的添加、删除、修改。5、售房信息管理模块(1)客户看房记录子模块:功能是记录客户看房信息,用于检查是否有客户越过该房地产公司私自和房主发生买卖行为。系统管理员,经纪人可以进行数据的添加、删除、修改。(2)房屋居间服务合同管理子模块:录入和维护房屋居间合同并可以生成报表,由合同负责人及时进行合同数据的检验、更新和取消。系统管理员,经纪人可以进行数据的添加、删除、修改。但当确认此次房屋交易完成。则任何人不能进行更新。已售房屋信息管理子模块:当房屋买卖交易结束后,意味着该房屋买卖已经完成,由相应的负责人将客户购房信息进行记录,并由系统自动将其从房源数据中删除。向全部员工提供查询功能。系统管理员、经纪人可以进行数据的添加、删除、修改。2.5数据库结构设计根据系统分析和模块设计,本系统中各模块的数据项和数据结构如下:1、数据库数据库名称:房屋信息库标识:DBHouse2、数据库表结构(1)表名:买方信息表标识:

BuyerUserinf数据来源:买方用户管理模块输入表2—1买方信息表属性名存储代码数据类型字符长度/bit是否允许为空注册号B_numbInt4否用户IDB_IDChar10否真实姓名B_nameChar8否密码PasswordChar10否EmailEmailChar20否地址AdressText20否电话TelText20否QQQQNchar10是注册时间TimeInt8否密保问题 B_S_questionInt10是密保答案B_S_answerChar6是(2)表名:卖方信息表标识:SellerUserinf数据来源:卖方用户管理模块输入表2—2卖方信息表属性名存储代码数据类型字符长度/bit是否允许为空注册号S_numbChar10否用户IDS_IDChar10否真实姓名S_nameChar8否密码S_PasswordChar10否EmailS_EmailChar20否地址S_AdressVarchar30否电话S_TelChar12否QQS_QQChar12是注册时间S-TimeDatetime8否密保问题S_S-questionVarchar50是密保答案S_S-answerVarchar50是表名:二手房信息表标识:Second-handhouseinf数据来源:基础数据管理模块的录入表2—3二手房信息表属性名存储代码数据类型字符长度/bit是否允许为空房源编号HouseIDchar8否房源名称HouseNamevarchar30否所属区域编号RegIDchar5是楼盘编号ItemIDchar5是建筑年代ItemYearchar4是建筑单位ItemCopvarchar30是户型编号StruIDchar5是面积Areadecimal9是楼层Floorvarchar2是总楼层AllFloorvarchar2是单元Unitvarchar2是车库面积CarAreadecimal9是基础设施Estvarchar30是装修状况Fitmentvarchar6是物业管理费ServerFeemoney8是权属Belongvarchar8是表名:留言板信息表标识:Messageboardinf数据来源:用户数据管理模块的录入表2—4留言板信息表属性名存储代码数据类型字符长度/bit是否允许为空主题SubjectVarchar20否主题IDS-IDChar10否作者AuthorChar10否EmailEmailChar20否发布时间R-timeTimestamp8否留言内容M-contentVarchar20否留言总数MessagesumChar10否售房总数Sale_sumChar10否表名:管理员信息表标识:Administratorinf数据来源:公司内部信息管理模块录入表2—5管理员信息表属性名存储代码数据类型字符长度/bit是否允许为空管理员IDA_IDChar10否管理员名A_nameChar8否密码PasswordChar10否(6)表名:公告信息表标识:Announcementinf数据来源:登陆模块录入表2—6公告信息表属性名存储代码数据类型字符长度是否允许为空主题SubjectChar10否公告时间TimeDatetime8否内容ContentVarchar50是公告总数A_sumChar10否售房总数Sell_sumChar10否(7)表名:业务员信息表标识:Businessmaninf数据来源:公司内部信息管理模块录入表2—7业务员信息表属性名存储代码数据类型字符长度/bit是否允许为空工作证号WorknumbInt10否姓名NameInt8否年龄AgeChar2否EmailEmailChar20否电话TelInt15否地址AdressInt20否QQQQInt12是服务区域ServiceareaInt20否(8)表名:租赁订单信息表标识:Leaseorderinf数据来源:售房信息管理模块得到表2—8租赁订单信息表属性名存储代码数据类型字符长度/bit是否允许为空订单号L-numbInt10否订单时间TimeInt8否订单人姓名NameInt8否订单人电话TelInt15否订单人地址AdressInt20否EmailEmailChar20否(9)表名:购买订单信息表标识:Purchaseorder数据来源:售房信息管理模块得到表2—9购买订单信息表属性名存储代码数据类型字符长度/bit是否允许为空订单号P-numbInt10否订单时间TimeInt8否订单人姓名NameInt8否订单人电话TelInt15否订单人地址AdressInt20否EmailEmailChar20否(10)表名:已售房屋记录表标识:tbHouseSale数据来源:售房信息管理模块的录入表2—10已售房屋记录表属性名存储代码数据类型字符长度/bit是否允许为空房源编号HouseIDchar8否房源名称HouseNamevarchar30否所属区域编号RegIDchar5是楼盘编号ItemIDchar5是建筑年代ItemYearchar4是建筑单位ItemCopvarchar30是户型编号StruIdchar5是面积Areadecimal9是楼层Floorvarchar2是总楼层AllFloorvarchar2是单元Unitvarchar2是车库面积CarAreadecimal9是基础设施Estvarchar30是装修状况Fitmentvarchar6是物业管理费ServerFeemoney8是权属Belongvarchar8是实际售房日期SaleDatevarchar10是(11)表名:房屋居间服务合同表标识:tbContractp数据来源:售房信息管理模块的录入表2—11房屋居间服务合同表属性名存储代码数据类型字符长度/bit是否允许为空房源编号HouseIdchar8否房源名称HouseNamevarchar30否签订日期SignDatechar10否甲方实际售价SaleMoneymoney8是税率说明TaxDesvarchar30是税金总计Taxmoney8是中介费MediMoneymoney8是面积订金Premoeymoney8是建筑面积Areadecimal9是权属Belongvarchar8是乙方联系方式YContactvarchar50是乙方联系电话YTelvarchar20是乙方身份证号YIDCardvarchar20是甲方联系方式JContactvarchar50是甲方联系电话JTelvarchar20是甲方身份证号JIDCardvarchar20是乙方房款交全最后日期YTimeLimitchar10是甲方交房最后日期JTimeLimitchar10是甲方赠物记录Presentvarchar50是甲方代表Jdelegatevarchar30是乙方代表Ydelegatevarchar30是丙方(合同责任人)BManNamevarchar30是是否签订SignedChar2否2.6E-R图设计2.6.1各实体-属性图设计具体各个实体—属性图如下各图所示:买方信息实体—属性图如下:买方买方Email地址电话QQ注册时间密保问题密报答案注册号用户ID真实姓名卖方信息实体—属性图如下:卖方卖方Email地址电话QQ注册时间密保问题密报答案注册号用户ID真实姓名二手房信息实体—属性图如下:二手房二手房楼层车库面积基础设施权属物业管理费装修状况户型编号面积总楼层单元建筑单位房源编号房源名称所属区域编号楼盘编号建筑年代留言板实体—属性图如下:留言板留言板主题ID主题留言内容作者发布时间Email留言总数售房总数管理员实体—属性图如下:管理员管理员密码管理员名管理员ID公告实体—属性图如下:公告公告主题内容公告时间公告总数工作证号业务员实体—属性图如下:工作证号业务员业务员电话QQEmail服务区域地址年龄姓名租赁订单实体—属性图如下:租赁订单租赁订单订单号订单时间订单人姓名订单人电话订单人地址Email购买订单实体—属性图如下:购买购买订单订单号订单时间订单人姓名订单人电话订单人地址Email订单总数已售房屋记录实体—属性图如下:已售二手房楼层车库面积基础设施权属已售二手房楼层车库面积基础设施权属物业管理费装修状况户型编号面积总楼层单元建筑单位房源编号房源名称所属区域编号楼盘编号建筑年代实际售房日期房源名称房源名称房屋居间服务合同房屋居间服务合同甲方实际售价房源编号丙方建筑面值权属乙方联系方式乙方联系电话乙方身份证号甲方联系方式甲方联系电话甲方身份证甲方代表乙方代表是否签订2.6.2局部E-R图设计设计局部R-R图,首先根据系统的某个情况,选择局部应用,然后对每个局部应用逐一设计分E-R图。我们这里选择前述内容中的分数据流图,通过观察数据流图可以了解实体间的相互关系;并结合各个实体间的相互关系及约束条件,最终将任意两个实体组成局部E-R图,具体设计过程如下:(1)联系数据流图1.2,联系已知约束条件:每个买方会登记一个租赁订单或者一个购买订单,并且每个买方可能需要多套二手房,因此买方与二手房是一对多的关系,与订单是一对一的关系。所以得出如下图2.1:图2.1(2)联系数据流图1.2,联系已知约束条件:每个卖方会提供多套二手房,每个卖方会在留言板上留有多条信息,因此卖方与二手房是一对多的关系,与留言板是一对多的关系。所以得出如下图2.2:图2.2(3)联系数据流图1.2,联系已知约束条件:管理员管理多条已售房屋信息,并且要贴出多条公告供买方与卖方参考,所以管理员与已售房屋信息之间是多对多的关系,与公告之间是多对多的关系。所以得出如下图2.3:图总体E-R图设计各个局部应用所面向的问题不同,致使各个分E-R图之间必定存在许多不一致的地方,称之为冲突。因此合并分E-R图时就不能简单的将各个分E-R图画在一起,而是必须着力消除各个分E-R图中的不一致,以形成一个能为全系统中所有用户共同理解和接受的统一的概念模型。合理消除E-R图的冲突时合并分E-R图的关键所在。合并分E-R图时需要解决的冲突问题包括三种:属性冲突,命名冲突和结构冲突。解决的方法是根据应用的语义对实体联系的类型进行综合或调整。同时在合并过程中要消除不必要的冗余,设计基本的E-R图。消除冗余的主要方法是采用分析方法,即以数据字典和数据流图为依据,根据数据字典中关于数据项之间逻辑关系的说明来消除冗余。根据以上原则,并结合之前的需求分析与数据流图,最终得到总的E-R图如下(注:以下省略实体属性):公告公告二手房管理员买方业务员购买订单已售房屋记录房屋居间服务合同租赁订单留言板卖方签订管理留言服务服务留言提供贴出登记需求签订管理记录登记mnnmmnmn11nmmn1111n1nn1nnnn1nm1SEQ图表\*ARABIC3.二手房交易管理系统逻辑结构设计3.1关系模式设计关系模型的逻辑结构是一组关系模式的集合。将E-R图转换为关系模型就是要将实体型、实体的属性和实体型之间的联系转换为关系模式。数据库逻辑结构设计的结果不是唯一的。为了进一步提高数据库应用系统的性能,还应该根据应用需要适当的修改、调整数据模型的结构,这就是数据模型的优化。其具体方法是:确定数据依赖。对于各个关系模式之间的数据依赖进行最小化处理,消除冗余联系。按照数据依赖的理论对关系模式逐一进行分析,确定其依赖关系以及其所属范式。按照需求分析阶段得到的处理要求,分析这些模式对于应用环境是否合适,确定是否要对某些模式进行合并或分解。对关系模式进行必要的分解,提高数据操作的效率和存储空间的利用率。根据以上E-R图以及优化方法转换成的关系模式如下:买方:(注册号,用户ID,真实姓名,密码,Email,地址,电话,QQ)卖方:(注册号,用户ID,真实姓名,密码,Email,地址,电话,QQ)二手房:(房源编号,房源名称,所属区域编号,楼盘编号,建筑年代,建筑单位,户型编号,面积,楼层,总楼层,单元,车库面积,基础设施,装修状况,物业管理费,权属)留言板:(主题,主题ID,留言内容,留言总数)管理员:(管理员ID,管理员名,密码)公告:(主题,公告时间,内容,售房总数,公告总数)业务员:(工作证号,姓名,年龄,Email,电话,地址,QQ)租赁订单:(订单号,订单时间)购买订单:(订单号,订单时间)已售房屋:(房源编号,房源名称,所属区域编号,楼盘编号,建筑年代,建筑单位,户型编号,面积,楼层,总楼层,单元,车库面积,基础设施,装修状况)房屋居间服务合同:(房源编号,房源名称,甲方实际售价,建筑面积,权属,甲方代表,乙方代表,丙方(合同负责人),是否签订)3.2数据库建立首先在SQLServer2000数据库中创建Book-dinner数据库,然后分别创建各个数据表。在关系数据库中,表是数据的主要存储对象。表包含了行和列,它们之中都放有数据。字段在关系数据库中也叫列,是表的一部分,它被赋特定的数据类型,用来表示表中不同的项目。表又是行的集合。表中包含有关实体的数据。在逻辑上安排为行和列的数据组成。表中的数据是逻辑相关的,同一数据库中的不同表之间也定义了关系。创建数据表创建“买方清单”数据表的SQL脚本如下:CREATETABLE[dbo].[BuyerUserinf]( [B_numb][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [B_ID][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [B_name][char](8)COLLATEChinese_PRC_CI_ASNOTNULL, [B_Password][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [B_Email][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [B_Adress][text]COLLATEChinese_PRC_CI_ASNOTNULL, [B_Tel][text]COLLATEChinese_PRC_CI_ASNOTNULL, [B_QQ][varchar](12)COLLATEChinese_PRC_CI_ASNULL, [B_time][datetime]NOTNULL, [B_s_question][varchar](50)COLLATEChinese_PRC_CI_ASNULL, [B_s_answer][varchar](50)COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]TEXTIMAGE_ON[PRIMARY]属性表如下:图3—1创建“卖方清单”数据表的SQL脚本如下:CREATETABLE[dbo].[SellerUserinf]( [S_numb][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [S_ID][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [S_name][char](8)COLLATEChinese_PRC_CI_ASNOTNULL, [S_password][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [S_Email][char](20)COLLATEChinese_PRC_CI_ASNOTNULL, [S_Adress][varchar](30)COLLATEChinese_PRC_CI_ASNOTNULL, [S_Tel][char](12)COLLATEChinese_PRC_CI_ASNOTNULL, [S_QQ][char](12)COLLATEChinese_PRC_CI_ASNULL, [S_Time][datetime]NOTNULL, [S_S_question][varchar](50)COLLATEChinese_PRC_CI_ASNULL, [S_S_answer][varchar](50)COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]表属性如下:图3—2创建“二手房信息清单”数据表的SQL脚本如下:CREATETABLE[dbo].[Second-handhouseinf]( [HouseID][char](8)COLLATEChinese_PRC_CI_ASNOTNULL, [HouseName][varchar](30)COLLATEChinese_PRC_CI_ASNOTNULL, [RegID][char](5)COLLATEChinese_PRC_CI_ASNULL, [ItemID][char](5)COLLATEChinese_PRC_CI_ASNULL, [ItemYear][char](4)COLLATEChinese_PRC_CI_ASNULL, [ItemCop][varchar](30)COLLATEChinese_PRC_CI_ASNULL, [StruID][char](5)COLLATEChinese_PRC_CI_ASNULL, [Area][decimal](18,0)NULL, [Floor][varchar](2)COLLATEChinese_PRC_CI_ASNULL, [AllFloor][varchar](2)COLLATEChinese_PRC_CI_ASNULL, [Unit][varchar](2)COLLATEChinese_PRC_CI_ASNULL, [CarArea][decimal](18,0)NULL, [Est][varchar](30)COLLATEChinese_PRC_CI_ASNULL, [Fitment][varchar](6)COLLATEChinese_PRC_CI_ASNULL, [ServerFee][money]NULL, [Belong][varchar](8)COLLATEChinese_PRC_CI_ASNULL)ON[PRIMARY]属性表如下:图3—3创建“留言板信息”数据表的SQL脚本如下:CREATETABLE[dbo].[Messageboardinf]( [Subject][varchar](20)COLLATEChinese_PRC_CI_ASNOTNULL, [S_ID][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [Author][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [Email][char](20)COLLATEChinese_PRC_CI_ASNOTNULL, [R_time][timestamp]NOTNULL, [M_content][varchar](20)COLLATEChinese_PRC_CI_ASNOTNULL,[Messagesum][char](10)COLLATEChinese_PRC_CI_ASNOTNULL)ON[PRIMARY]属性表如下:图3—4创建“管理员信息”数据表SQL脚本如下:CREATETABLE[dbo].[Administratorinf]( [A_ID][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [A_name][char](8)COLLATEChinese_PRC_CI_ASNOTNULL, [A_Password][char](10)COLLATEChinese_PRC_CI_ASNOTNULL )ON[PRIMARY]表属性如下:图3—5创建“公告信息”数据表SQL脚本如下:CREATETABLE[dbo].[Announcementinf]( [Subject][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [Time][datetime]NOTNULL, [Content][varchar](50)COLLATEChinese_PRC_CI_ASNULL, [A_sum][char](10)COLLATEChinese_PRC_CI_ASNOTNULL,[S_sum][char](10)COLLATEChinese_PRC_CI_ASNOTNULL)ON[PRIMARY]表属性如下:图3—6创建“业务员信息”数据表SQL脚本如下:CREATETABLE[dbo].[Businessmaninf]( [Worknumb][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [Name][char](8)COLLATEChinese_PRC_CI_ASNOTNULL, [Age][char](2)COLLATEChinese_PRC_CI_ASNOTNULL, [Email][char](20)COLLATEChinese_PRC_CI_ASNOTNULL, [Tel][char](15)COLLATEChinese_PRC_CI_ASNOTNULL, [Adress][varchar](30)COLLATEChinese_PRC_CI_ASNOTNULL, [QQ][char](12)COLLATEChinese_PRC_CI_ASNULL, [Servicearea][varchar](50)COLLATEChinese_PRC_CI_ASNOTNULL)ON[PRIMARY]表属性如下:图3—7创建“租赁订单信息”数据表SQL脚本如下:CREATETABLE[dbo].[Leaseorderinf]( [L_numb][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [Time][datetime]NOTNULL, [Name][char](8)COLLATEChinese_PRC_CI_ASNOTNULL, [Tel][char](15)COLLATEChinese_PRC_CI_ASNOTNULL, [Adress][varchar](30)COLLATEChinese_PRC_CI_ASNOTNULL, [Email][char](20)COLLATEChinese_PRC_CI_ASNOTNULL )ON[PRIMARY]表属性如下:图3—8创建“购买订单信息”数据表SQL脚本如下:CREATETABLE[dbo].[Purchaseorder]( [P_numb][char](10)COLLATEChinese_PRC_CI_ASNOTNULL, [Time][datetime]NOTNULL, [Name][char](8)COLLATEChinese_PRC_CI_ASNOTNULL, [Tel][char](15)COLLATEChinese_PRC_CI_ASNOTNULL, [Adress][varchar](30)COLLATEChinese_PRC_CI_ASNOTNULL, [Email][char](20)COLLATEChinese_PRC_CI_ASNOTNULL)ON[PRIMARY]表属性如下:图3—9创建“已售房屋记录表信息”数据表SQL脚本如下:CREATETABLE[dbo].[tbHouseSale]( [HouseID][char](8)COLLATEChinese_PRC_CI_ASNOTNULL, [HouseName][varchar](30)COLLATEChinese_PRC_CI_ASNOTNULL, [RegID][char](5)COLLATEChinese_PRC_CI_ASNULL, [ItemYear][char](5)COLLATEChinese_PRC_CI_ASNULL, [ItemID][char](4)COLLATEChinese_PRC_CI_ASNULL, [ItemCop][varchar](30)COLLATEChinese_PRC_CI_ASNULL, [StruId][char](5)COLLATEChinese_PRC_CI_ASNULL, [Area][decimal](18,0)NULL, [Floor][varchar](2)COLLATEChinese_PRC_CI_ASNULL, [AllFloor][varchar](2)COLLATEChinese_PRC_CI_ASNULL, [Unit][varchar](2)COLLATEChinese_PRC_CI_ASNULL, [CarArea][decimal](18,0)NULL, [Est][varchar](30)COLLATEChinese_PRC_CI_ASNULL, [Fitment][varchar](30)COLLATEChinese_PRC_CI_ASNULL, [ServerFee][money]NULL, [Belong][varchar](8)COLLATEChinese_PRC_CI_ASNULL, [SaleDate][varchar](8)COLLATEChinese_PRC_CI_ASNULL )ON[PRIMARY]表属性如下:图3—10创建“房屋居间服务合同表信息”数据:CREATETABLE[dbo].[tbContractp]( [HouseID][char](8)COLLATEChinese_PRC_CI_ASNOTNULL, [HouseName][varchar](30)COLLATEChinese_PRC_CI_ASNOTNULL, [SaleMoney][money]NULL, [Area][decimal](18,0)NULL, [Belong][varchar](8)COLLATEChinese_PRC_CI_ASNULL, [YContact][varchar](50)COLLATEChinese_PRC_CI_ASNULL, [YTel][varchar](20)COLLATEChinese_PRC_CI_ASNULL, [YIDCard][varchar](20)COLLATEChinese_PRC_CI_ASNULL, [JContact][varchar](50)COLLATEChinese_PRC_CI_ASNULL, [JTel][varchar](20)COLLATEChinese_PRC_CI_ASNULL, [JIDCard][varchar](20)COLLATEChinese_PRC_CI_ASNULL, [Jdelegate][varchar](30)COLLATEChinese_PRC_CI_ASNULL, [Ydelegate][varchar](30)COLLATEChinese_PRC_CI_ASNULL, [BManName][varchar](30)COLLATEChinese_PRC_CI_ASNULL,[Signed][char](8)COLLATEChinese_PRC_CI_ASNOTNULL)ON[PRIMARY]表属性如下:图3—113.3触发器设计触发器是一种特殊类型的存储过程,它能被定义在数据库中某一特定表中,当表中插入、删除或更新某些数据时发生作用。特别是可以通过触发器来维持不同表中逻辑相关数据的一致性来帮助维护数据的参照完整性。触发器的主要优点是它的自动性,无论由何种原因引起的数据修改,它们都会自动进行工作。触发器针在每个数据修改完成之后它立刻被引发。触发器的实际意义是当更改一个表时,导致执行了一个给定的SQL语句集合,它允许将客户的“规则”与表相关联。下面将建立与本系统安全或者用户定义相关的触发器,以约束系统的完整性和安全性。本触发器用于完成房屋居间合同签署以后,在公告栏里会相应的将售房总数加1.,这样来公布售房数量的情况:CREATETRIGGERupdate-ONSale_sumFORINSERT ASdeclare@achar(10)select@a=Signedfrominsertedif@a==’是’{UpdateMessageboardinfsetSale_sum=Sale_sum+1;}本触发器用于在买方与卖方在留言板里留言时,留言主题会相应增加1,而留言总数会相应的增加1条:CREATETRIGGERupdate-MessagesumONMessageboardinfFORINSERTASdeclare@bchar(10)select@b=S-IDfrominsertedif@b<>NULL{updateMessageboardinfsetMessagesum=Messagesum+1;}本触发器用于在管理员发布公布时,公布数量会自动加1:CREATETRIGGERupdate-A_sumONAnnouncementinfFORINSERTASdeclare@cchar(10)select@c=Subjectfrominsertedif@c<>NULL{UpdateAnnouncementinfsetA_sum=A_sum+1;}SEQ图表\*ARABIC4.数据库安全性维护数据库的安全性是指保护数据库,防止因用户非法使用数据库造成数据泄露、更改和破坏。数据库的一大特点是数据可以共享,但数据共享必然带来数据库的安全性问题。二手房交易管理系统数据库中存放了一些重要的和关键的数据。如果DBMS不能严格地保证数据库系统的安全性,就会严重制约数据库的应用。在二手房交易管理系统数据库中我们通过用户标识、存取控制和定义视图三种安全措施来保证数据库的安全。1.用户标识用户标识是系统提供的最外层安全保护措施。其方法是由系统提供一定的方式让用户标识自己的名字或身份,每次用户要求进入系统时,由系统将用户提供的身份标识与数据库内部记录的合法用户进行核对,通过鉴定后才提供数据库使用权。在二手房交易管理系统数据库中,所有的用户身份标识信息都存储在用户清单表中。每次当用户登录时,系统都首先扫描用户清单,来判断该用户是否是合法用户。这一部分功能的实现将在应用程序开发阶段完成,这里只给出理论描述,具体设计过程不再补充。2.存取控制在数据库系统中,为了保证用户只能访问他有权存取的数据,必须预先对每个用户定义权限。对于合法用户,系统根据他的存取权限定义对他的各种操作请求进行控制,确保他只执行合法操作。同时在数据库内部,所有合法用户对数据存取控制权限都存放在用户清单表中,该表中记录了合法用户的类别,从而决定其权限范围。经过前面的需求分析,按照其职能、需求和管理级别,我们可以将所有的用户分为如下几类:用户类别权限级别权限说明管理员1管理操作系统的所有信息及程序代码维护买方2拥有查询、修改、删除买方信息的权利卖方3拥有查询、修改、删除卖方信息的权利买方、卖方4拥有查询、修改留言板信息的权利买方4拥有查询二手房信息的权利卖方5拥有查询、修改、删除二手房信息的权利业务员6拥有查询、修改、删除业务员信息的权利管理员7拥有查询、修改、删除、更新公告、业务员等信息的权利权限级别说明:随着级别的逐渐降低,高级别用户拥有以下级别用户的所有权利根据上表的分析总结,可以对所有用户的权限进行限定,授予其各自不同的权利。具体SQL语句如下:将所有表的所有权利授权给管理员:grantallprivilegesontable[BuyerUserinf],[SellerUserinf],[Second-handhouseinf],[Messageboardinf],[Administratorinf],[Leaseorderinf],[Purchaseorder],[tbHouseSale]toAdministratorwithgrantoption;将查询、修改、删除买方信息的权利授权给买方:grantSelect,Delete,Update(B_numb,B_ID,B_name,Password,Email,Adress,Tel,QQ,B_S_question,B_S_answer)ontable[BuyerUserinf]toBuyerUserwithgrantoption;将查询、修改留言板信息的权利授权给买方:grantSelect,Update(Subject,S_ID,M_content)ontable[Messageboardinf]toBuyerUserwithgrantoption;将查询、修改、删除卖方信息的权利授权给卖方:grantSelect,Delete,Update(S_numb,S_ID,S_name,Password,Email,Adress,Tel,QQ,S_S_question,S_S_answer)ontable[SellerUserinf]toSellerUserwithgrantoption;将查询、修改留言板信息的权利授权给卖方grantSelect,Update(Subject,S_ID,M_content)ontable[Messageboardinf]toSellerUserwithgrantoption;将查询二手房信息的权利授予买方:grantSelectontable[Second-handhouseinf]toBuyerUser将查询、修改、删除二手房信息的权利授予卖方:grantSelect,Delete,Updateontable[Second-handhouseinf]toBuyerUser将查询、修改、删除业务员部分信息的权利授予业务员员:grantSelect,Delete,Update(Worknumb,Name,Age,Email,Tel,Adress,QQ,Servicearea)ontable[businessmaninf]toBusinessmanwithgrantoption;将查询、修改、删除、更新公告、业务员等信息的权利授予管理员:grantallprivileges(Subject,Time,Content,A_sum)ontable[Announcementinf]toAdministratorwithgrantoption;grantallprivileges(Worknumb,Name,Age,Email,Tel,Adress,QQ,Servicearea)ontable[businessmaninf]toAdministratorwithgrantoption;3.定义视图在关系数据库中,可以为不同的用户定义不同的视图,通过视图机制把要保密的数据对无权存取这些数据的用户隐藏起来,从而自动地对对数据提供一定程度的安全保护。例如TV用户拥有对电视视图的select权限,HX用户拥有对航显视图的select权限,HX用户没有电视视图的查看权限,同样TV用户不具有航显视图的查看权限。因为这个校园订餐系统由多个用户使用,使用用户又分为管理员以及其他的不同级别,他们拥有不同的权限和安全性控制。所以在权限设置方面,采用管理员和用户分别使用用户名和密码进入他们能使用权限范围里的界面。关于视图的建立过程本文章前文已经有所叙述,这里不再对其具体的编程语句进行描述。SEQ图表\*ARABIC5.数据库系统备份与恢复5.1数据库系统备份数据库备份指的是将计算机系统中硬磁盘上的一部分数据通过适当的形式转录到可脱机保存的介质(如磁带)上,以便需要时再输入计算机系统使用。备份数据很重要,其一是因为许多数据是不经常使用的,例如,在航班信息系统数据库中有许多历史航班信息是不常使用的,这些数据存储在磁盘上,既占用了宝贵的存储空间,增加了存储成本,又降低了存储设备的使用效率,降低了存取速度。因此需要对这些历史数据进行备份脱机保存。其二是由于工作人员操作不当、病毒、故意破坏等行为造成计算机系统破坏,相关信息丢失。为了防范于未然,必须对数据库采取一定的备份以保障数据库在发生故障时能够及时调出备份迅速恢复。根据二手房交易管理系统的业务要求,在本数据库的实现中我们采用以下备份方式:首先应用SQL语句sp_addumpdevice存储过程创建一个逻辑名为二手房交易_backup的备份设备:USEBook-dinnerEXECsp_addumpdevice'disk','二手房交易_backup','D:\二手房交易_backup.bak'然后使用BACKUP语句备份数据库:BACKUPDATABASEBook-dinnerTO二手房交易_Backup每隔一段时间(15天或20天),对数据库做一个完整的离线数据库备份,选择在夜间,这样不会影响正常工作。把备份的数据库保存在另外两个不同的设备,这样等同于有了三个该时刻的数据库备份映像。这样可以很好的保证系统数据的安全性。5.2数据库系统恢复事务(Transaction)是数据库的基本工作单位。一个事务中包含的操作要么全部完成,要么全部不做,也就是说,每个运行事务对数据库的影响都反映在数据库中,或者都不反映在数据库中。二者必居其一。如果数据库中只包含成功事务提交的结果,就说此数据库处于一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些为完成事务对数据库所做的修改有一部分已写入物理数据库。这时数据库就处于一种不正确的状态,或者说不一致的状态,这时候我们需要用恢复系统将数据库恢复到某种一致的状态。恢复就是利用存储在系统其它地方的冗余数据来重建数据库中被破坏的或不正确的数据。根据上述二手房交易系统备份的要求,在本数

温馨提示

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

评论

0/150

提交评论