医院信息管理系统数据库设计模式研究与实践
2016-04-14宾哲桂罗永有
宾哲桂 罗永有
(1.柳州职业技术学院,广西 柳州 545006;2.柳州城市职业学院,广西 柳州 545036)
医院信息管理系统数据库设计模式研究与实践
宾哲桂1罗永有2
(1.柳州职业技术学院,广西 柳州 545006;2.柳州城市职业学院,广西 柳州 545036)
采用基于Windows平台的关系型数据库管理系统,以Microsoft SQL Server2008为后台数据库,采用Visual Studio.Net为前端开发工具,利用基于角色的访问控制技术实现数据安全,完成针对医院信息管理系统的数据库设计。
Oracle;SQL Server;MySQ
1 数据库技术概述
数据库技术是管理信息系统中的重要支撑技术,数据库的建立是管理信息系统开发中的一项重要内容,其结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。 随着人们对数据库技术的应用越来越广泛,数据库中的数据元素被分的越来越细,每一次进行数据访问的时候,往往会涉及到多个数据元素之间的访问,因此如何建立起数据元素与数据元素之间的关系,变得更为重要,层次模型的数据库结构显然不适合快速有效的建立数据与数据之间的关联关系。为此,人们提出了一种基于关系模型的数据库关系,关系数据库很好的解决了层次数据库模型中在数据与元素之间访问,效率低的问题。关系数据库模型使用一种关系表达式,将不同表象中的数据建立起了关联关系,并且在此基础上提供了多种丰富的数据访问接口和函数,定义了数据库中数据和数据之间的关系的表达方式,而且关系数据库在设计的时候,有着十分深厚的理论基础,并且能够从数学的角度上对关系数据库,所建立的数据模型合理,完美性进行证明,这确保了关系数据库在理论上是一个完备的数据表示模型,也正因为如此,关系数据库一经提出,得到了广泛的认可和推广应用,目前关系数据库已经成为数据库模型中的最主流的数据模型,而且利用关系数据库中的各种数据访问基本函数,能够实现对数据库中多种数据元素的灵活访问。
通过使用关系数据库,可以将数据库中各个孤立的数据元素,采用数据表的形式,分别进行描述,并通过关系数据库所提供的数据,访问函数,实现对关系数据库中数据元素的访问,这种访问方式,也有助于描述客观世界中的各种数据元素之间的关系,本文设计的医院住院管理信息系统中,所涉及到的数据元素和数据线,都是和现实世界密切种相关的各种数据元素,数据和数据之间存在的非常密切的关系,因此利用关系数据库来描述医院住院信息管理系统中所涉及到的各种数据元素,本身是一种非常合情合理的表示方式,同时,利用关系数据库中强大的数据访问模型和函数,能够将医院住院信息管理系统中的各个数据元素之间的关联性建立起来,并实现对医院住院信息管理系统各种数据元素的灵活访问,为医院住院信息管理系统上层应用功能模块的开发与设计,提供了强有力的支持技术。
2 医院信息管理系统数据库的选择
在进行医院信息管理系统数据库设计过程中,除了选定数据库模型之外,另一个核心问题是如何选取数据库的开发平台,目前数据库开发平台的主流的平台主要有三个,分别是:Oracle、SQL Server和MySQL。
Oracle数据库是Oracle公司开发的面向网络应用环境的数据库开发工具,这种开发工具能够为用户提供功能非常强大的的数据管理,和数据访问功能,同时Oracle数据库也可以支持结构非常复杂的数据管理、业务,在Oracle数据库中非常清晰的定义了数据的表示方法,数据查询方式,以及对数据进行二次开发和管理的标准接口,目前Oracle数据库广泛应用于各种大型的数据访问应用场合,比如,一些大型的数据检索系统,信息处理中心,都采用了Oracle数据库,而且Oracle数据库还有另外一个优势,即采用的开发平台和接口都是开放性的平台,能够适合多个不同的开发者,在该平台上协同的进行数据库的开发和设计,相互之间都能够使用统一标准的访问接口和开发程序库,因此Oracle程序库也非常适合针对大型开发任务的并行开发模式。
SQL Server是微软公司推出的一个数据库开发工具,该数据库开发工具是微软公司从Sysbase公司购买相关的开发、组建和核心的功能模块而打造的一款适合Windows环境下开发的数据库开发平台,开发平台最大的特点是与微软操作系统结合非常紧密,由于SQL Server数据库本身是微软公司进行设计和实现的,其开发的目的就是为用户能够在微软的操作系统环境下,更好的开发和设计数据库项目,因此SQL Server工具为用户提供了大量适合Windows环境下进行访问的应用接口,用户可以通过这些接口,非常灵活的访问数据库,实现数据库应用程序的开发,从目前数据库应用效率的综合调研来看,买SQL Server数据库是目前在Windows环境下运行最为稳定。
MySQL数据库是瑞典的TCX公司设计的一种数据库开发平台,这种数据库平台,最大的特点是其通过对数据库内部的结构进行优化,采用了基于关系模型的数据库表示模型,并对数据库内部数据访问的函数接口进行优化与重新设计,精简了数据库内部的数据表示结构,优化了内部的数据处理单元,使得MySQL数据库在运行过程中,表现出比SQL Server、Oracle数据库高得多的运行效率,根据大量的统计经验表明,针对同样的数据库应用程序,使用Oracle开发平台设计的应用软件,比使用Oracle数据库和SQL Server数据库开发环境设计的软件,其运行效率要高5 %以上,也正因为如此,MySQL数据库被广泛应用于大量基于外部页面的数据库应用场合。但是MySQL数据库存在的不足之处是,由于它在设计的过程中,对数据库内部的结构进行了反复的优化,精简了大量的不是特别必须的功能模块,导致了MySQL数据库在功能上相对于Oracle数据库和SQL Server数据库,功能要弱的多,甚至一些功能模块在MySQL数据库中是无法实现。MySQL数据库一般只适合于一些小规模的应用环境,而且其在开发过程中,往往是一两个或者是少量的开发人员进行开发和设计,不太适合一些大型的专业化的数据库开发应用场合。
通过对数据库开发平台的功能特点进行分析,以及对它们的优缺点进行对比之后,本文在设计医院住院信息管理系统的数据库开发模块时,选取了SQL Server数据库开发平台,作为本系统的开发平台,其最核心的理由,仍然主要还是看中了SQL Server数据库是一种与Windows操作系统平台,结合最为紧密的数据库开发平台,利用该平台能够使用大量的在Windows环境中进行访问和应用的程序接口,这将极大的简化上层应用程序的开发难度,提高数据库以及整个信息管理系统的设计效率,同时SQL Server数据库也能够支持中型规模的数据库开发和应用场合,这对于医院住院信息管理系统的开发而言,完全是能够满足其应用需求的。
3 基于角色的访问控制技术
医院住院信息管理系统中使用对象会包括医生、护士和患者三大主要的应用群体,每个应用群体中应用对象,又可能会有多个医院住院信息管理系统中会产生多种用户数据,对这些数据进行科学合理的管理,区分每个用户所具有的权限,让用户在使用医院住院信息管理系统的时候,能够按照其应有的权限,合理的访问医院住院信息管理系统中的各种数据信息,是系统在设计过程中必须要保证的一个问题。为了能够让医院住院信息管理系统中的所有用户,能够按其正确的身份,级别有序的对医院住院信息管理系统中的数据进行访问,本文在设计过程中,引入了基于角色的访问控制技术(RBAC),基于角色的访问控制技术是在数据访问中,非常经典的数据访问控制方法。应用该方法最核心的目的是确保在应用系统中,所有使用该系统的用户能够按照正确的规则和权限去访问其所能够访问的数据,而且在基于角色访问的控制系统中,将系统中所有对数据访问的对象,分别分为用户对象,访问主体,访问客体和访问权限,其中用户对象是使用系统的各种用户,访问主体是发起数据访问的实体,访问客体是指在系统中被访问的数据对象,而访问权限则是指分配给某一访问主体,所具备的访问权限,该权限既指明了访问主体能够对哪些客体进行访问,同时也明确定义了在访问过程中允许该访问主体进行操作的具体权限,在本文设计的CDFS医院住院信息管理系统中,用户即为医生、患者,或者护士,每个用户在进行系统的时候,都会被分配相应的标识,并且用该标识这一用户所对应的具体用户身份,当用户需要对医院住院信息管理系统中的数据进行访问的时候,发起数据访问的应用程序,则称之为访问主体,被访问的数据,则是访问客体,应用了基于角色的访问控制技术之后,系统将会对每次用户发起的数据访问过程中,检查当前的访问主体是否具有正确的权限,来实现对访问客体的访问,如果当前的访问主体不具备对客体操作的权限,则这一访问行为将被系统拒绝,如果访问的主体具备对客体操作的相应权限,之后,才能够正常的去执行访问主体发起的具体的访问操作。
在基于角色的访问控制技术中,对权限的管理是整个功能模块的设计核心,也是确保所有的访问主体与被访问的客体之间,能够建立起正确关系的核心标准,因此在设计的过程中,需要预先根据用户的身份和访问主体进行相应的权限分配,权限分配的方式,可以在系统设计的初期,或者在第一次运行的初始化阶段,对每个访问主体的权限进行约定和分配,也可以在系统运行过程当中,动态的调整不同的运行主体所具备的访问权限,无论采用哪一种方式设定访问主体的所具备的访问权限,一旦相应的访问主体确定了访问权限之后,则该访问主体在系统运行过程中,对所有的数据进行访问的时候,都必须按照其所设定的访问权限进行操作,另外,需要说明一点的是,在本文设计的医院住院信息管理系统中用户在使用该系统的过程中,其身份可以不断的发生改变,即一个用户可以在不同的时刻,扮演不同的身份,但无论其扮演什么样的身份,他一旦进入该系统之后,必须要以一个明确的身份,及访问主体的形式出现,然后,基于角色的访问系统将会根据当前用户所标识的访问主体,和身份信息,查询系统预先给其分配的访问权限,之后对该访问主体在系统中发生的所有访问事件,都依照预先设定的该权限进行检查和处理,只有所有满足权限要求的操作,才会真正被最终得到执行。
4 数据可靠性和一致性技术
医院住院管理信息系统运行的时间周期非常长,患者在医院住院部门所留下的数据,也往往需要保持很长的时间周期。为了能够让医院长时间的保留患者的治疗数据,需要所设计的医院住院管理信息系统对数据的存储具有很高的可靠性,除了能够正常,正确的保存数据之外,还要能够具有非常强的容错能力,当系统运行过程中遇到各种有益,或者无益的损坏的时候,能够尽可能的将对系统的破坏降到最小,甚至通过预先设计的数据恢复技术,再将最初的原始数据进行复原。
为了实现这一目标,本文设计的医院住院管理信息系统中对数据管理采用了数据表项冗余设计和分布式存储两种应用技术,其中数据表项冗余技术是指在设计医院住院管理信息系统其规划的数据表项中,有意识增加一些冗余的数据表项,以便当数据库遭到小规模的破坏,或者发生意外错误的时候,能够根据数据表项中的冗余数据恢复出整个完整的数据表,并且实现数据库的数据自我修复的功能。数据表项冗余的技术在设计数据表项的时候,有意识的选取一个或者多个数据表项,在不同的数据表中进行表示和存储,当一个数据表项发生错误,或者遭受破坏的时候,能够利用数据库中存储在其他数据表项中的数据,实现自我的恢复,而在进行这种自我恢复的过程中,必须依靠关系数据库模型,将多个数据表项关联起来,并且通过关系数据库模型中所提供的数据库访问函数接口,实现从一个数据表项中的数据向另外一个数据表项中的数据进行恢复的操作。
分布式存储技术是指医院住院管理信息系统底层的核心数据库在设计的时候,使用分布式备份存储的策略,实现数据的可靠性保护。其基本的思想是对医院住院管理信息系统中的数据,在本地的数据库服务器中存储一份,之后再通过网络在远程异地的备份数据库服务器中存储一份镜像数据,这样,一旦当本地的数据库服务器遭到破坏,数据库服务器中的数据无法进行有效的恢复的时候,能够通过远程数据库服务器中的镜像数据进行恢复。使用分布式数据存储技术,在应用过程需要注意远程的镜像数据,需要定期和本地的数据库服务器的数据保持同步,采用增量式的方式进行备份,以减少数据通信的流量,将本地数据库服务器中的数据备份至远程的镜像数据库服务器中。
5 总结
随着计算机信息技术的飞速发展,医院的日常管理与运营已离不开信息系统平台。医院信息涉及医学实践、科研、信息交流等众多领域,这也要求医院信息系统应当集计算机学、人工智能、统计学、信息管理等技术于一体,为医学的卫生管理、临床控制、数据检索等工作创造更加便利的条件。本文通过对医院住院管理信息系统数据的详细设计,使得患者在医院住院期间产生的各种数据得到长期有效的保存,而且信息的透明度得到大幅度的提高,在本文设计的医院住院管理信息系统数据库设计综合考虑到对数据长期保存的应用需求,所设计的应用系统能够长时间的对患者的应用数据进行存储,因此实现患者数据的长期有效的存储,大大提高医院信息化管理水平。
[1] 徐杰燊.医院医技科室信息管理系统的设计、开发与应用[J].中国医学装备,2009,6(5):30-32.
[2] 李澄,张广明.医院管理信息系统的设计与实现[J].微计算机信息,2007,23(6):8799-8802.
[3] 姚海峰,徐宁.开发与设计医院信息管理系统软件的常用方法[J].电脑编程技巧与维护,2008(13):21.
[4] 黄力.无线自组网中功率控制协议研究与实现[J].计算机工程与设计,2008(24):121-122.
[5] 杨樟卫,胡晋红,王卓,等.医院药品消耗综合分析软件设计和应用[J].中国医院统计,2003,10(3):154-157.
The search and practice of hospital information management system for database designs mode
In this papers, based on relationship database of Windows platen. With Microsoft SQL Server 2008 as back-office database,The adopting Visual's Studio.Net develops tool for front end. Make use of to carry out a data safety and complete the database design aiming at information management system in the hospital according to the calling control technique of role.
Oracle;SQL Server;MySQ
TP311
A
1008-1151(2016)03-0014-03
2016-02-11
广西教育厅科研项目“医院住院管理信息系统的设计与实现”(LX2014542);广西教育厅科研项目“基于.NET的高职CRP系统设计与实现”(YB2014498)。
宾哲桂(1981-),男,广西博白人,柳州职业技术学院工程师,硕士,研究方向为计算机应用。
罗永有(1979-),男,广西柳州人,柳州城市职业学院讲师,研究方向为计算机网络技术。