已阅读5页,还剩61页未读, 继续免费阅读
(计算机应用技术专业论文)HIS系统医生工作站的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着社会的发展,医院的业务不断增长,处理越来越复杂,简单的人工经营 管理,已无法满足医院的需要,而医院管理信息化不仅能提高医务人员的工作 效率和医疗水平,而且能提高医院的服务质量和管理水平,因此医院对管理信息 系统有着强烈的需求。美国著名教授m o r r i s c o l l e n 于1 9 8 8 年曾著文为医院信 息系统( h i s ) 下了如下定义:利用电子计算机和通讯设备,为医院所属各部门提 供病人诊疗信息和行政管理信息的收集、存储、处理、提取和数据交换的能力, 并满足所有授权用户的功能需求。h i s 软件立足以病人为中心的服务体系和以经 济效益为核心的管理体系,h i s 软件的设计,首先从医院的管理模式入手与计算 机高新技术相结合,而不同于其他医疗软件只强调计算机技术的先进性而忽视 了医院管理模式的重要性。本课题正是在医院信息化飞快发展的情况下,在一 个具体医疗单位中实施一个大型的h i s 系统,使得该医院的管理更加规范,也 为医院的日常工作提供一个方便的平台。 本文以湖北省中医院h i s 系统为背景,详细描述了医生工作站的设计实现过 程。首先,分析了医院信息系统的定义以及目前国内、外的发展动态;之后介 绍了湖北中医院目前的信息化水平、存在的主要问题及所需达到的最终目的。 然后通过对开发模式、开发工具、以及数据库管理系统的分析和比较,选择了 一套较合理的开发方法,湖北中医院h i s 系统采用c s 开发模式,开发工具选 择的是优秀的面向对象开发工具p o w e r b u i l d e r9 0 ,数据库管理系统选择的是s q l s e r v e r 2 0 0 0 。接下来,以医生工作站为主要研究对象,从湖北中医院医生工作 站的现行管理模式入手,详细介绍了医生工作站的设计实现过程,给出了主要 功能模块的数据流程图、设计思路以及部分核心程序;着重介绍了目前开发的 湖北中医院h i s 系统和湖北中医院现有旧收费系统之间对接的接口设计;由于 手术麻醉子系统是医生工作站的一个特殊分支,同时也给出了手术麻醉子系统 的详细设计及实现。在文中还详细论述了通用查询功能的实现过程,通过将经 常使用到的功能做成通用模块迸一步加深对程序设计的认识。 本文最后,是在参加这一年的开发过程中的心得体会,包括对湖北中医院 h i s 系统开发的总结,对h i s 系统发展的一些建议以及对未来的展望。 关键词:医院管理信息系统,医生工作站,p o w e r b u i l d e r 9 o , s q l s e r v e r 2 0 0 0 a b s t r a c t w i t ht h ed e v e l o p m e n to fs o c i e t y , t h eb u s i n e s so ft h eh o s p i t a l si n c r e a s e s c o n t i n u o u s l ya n db e c o m e s m o r ea n dm o r ec o m p l i c a t e d ,s i m p l ea r t i f i c i a lm a n a g e m e n t c a n n o ts a t i s f yi t sr e q u i r e m e n t h o s p i t a lm a n a g e m e n ti n f o r m a l i z a t i o nc a rn o to n l y p r o m o t et h ee f f i c i e n c yo ft h es t a f f s w o r ka n dt h em e d i c a lt r e a t m e n tl e v e l ,b u ta l s o p r o v et h es e r v i c eq u a l i t ya n dm a n a g e m e n tl e v e lo fh o s p i t a l s s oh o s p i t a l sh a v es t r o n g r e q u i r e m e n t sf o rm a n a g e m e n ti n f o r m a t i o ns y s t e m m o r r i sc o l l e n , af a m o u sa m e r i c a n p r o f e s s o r , w h oo n c eg a v ead e f i n i t i o nf o rt h eh o s p i t a li n f o r m a t i o ns y s t e m ( h i s ) i n 1 9 8 8 :m a k i n gu s eo fc o m p u t e r sa n dc o m m u n i c a t i o ne q u i p m e n t , t op r o v i d ee a c h d e p a r t m e n ti nh o s p i t a lw i t ht h ed i a g n o s i si n f o r m a t i o no fp a t i e n t sa n d t h ec a p a b i l i t yt o c o l l e c t ,s t o r e ,h a n d l e ,e x t r a c ta n de x c h a n g ed a t aa b o u tt h ea d m i n i s t r a t i o nm a n a g e m e n t , a n di tc a na l s om e e t st h ef u n c t i o n a ln e e d so ft h ea u t h o r i z e dc u s t o m e r s t h eh i s s o f t w a r eb a s e so nt h es e r v i c es y s t e mt h a tc o n c e n t r a t e so nt h ep a t i e n t sa n dt h e m a n a g e m e n ts y s t e mt h a tt a k e se c o n o m i cp e r f o r m a n c ea sc u r e t h ed e s i g no fh i s s o f t w a r es h o u l d f i r s t l yf o c u so nt h em a n a g e m e n tm o d e lo fh o s p i t a l a n dt h e n c o m b i n e si tw i t ha d v a n c e dn e wt e c h n i q u e s , d i f f e r i n g 劬mo t h e rm e d i c a ls o f t w a r e w h i c ho n l ye m p h a s i z e st h ep r o g r e s so fc o m p u t e rt e c h n i q u eb u tn e g l e c t st h ei m p o r t a n t o fh o s p i t a lm a n a g e m e n tm o d e l t h i st a s ki se x a c t l yu n d e rt h ec i r c u m s t a n c e st h a t h o s p i t a li n f o r m a l i z a t i o ni sd e v e l o p i n gr a p i d l y ;i tc a l t i e so u t al a r g e s c a l e dh i s s y s t e ma tah o s p i t a l ,m a k e st h em a n a g e m e n to ft h a th o s p i t a lm o r en o r m a la n da l s o p r o v i d e sac o n v e n i e n tp l a t f o r mf o rd a i l yw o r k o ft h a th o s p i t a l t h i s p a p e rt a k e s h 1 ss y s t e mo fh u b e ih e r b a lh o s p i t a la sb a c k g r o u n d , d e s c r i b i n gt h ed e s i g na n di m p l e m e n to fd o c t o rw o r k s t a t i o ni nd e t a i l a tf i r s t i t a n a l y z e s t h ed e f i n i t i o no ft h e h o s p i t a l i n f o r m a t i o ns y s t e ma n dt h ed e v e l o p i n g d y n a m i ca th o m ea n da b r o a dc u r r e n t l y i ta l s oi n t r o d u c e st h ec u r r e n tl e v e le x i s t e n t p r o b l e ma n d t h et e r m i n a lg o a lo fh u b e ih e r b a lh o s p i t a li n f o r m a l i z a t i o n s e c o n d ,w e g e tar a t i o n a ld e v e l o p i n gs c h e m et h r o u g ht h ea n a l y s i sa n dc o m p a r i s o no fd e v e l o p i n g m o d e l ,t o o la n dd a t a b a s em a n a g e m e n ts y s t e m h u b e ih e r b a lh o s p i t a lh i ss y s t e m a d o p t st h ed e v e l o p m e n tm o d eo fc s ,d e v e l o p i n gt o o li sp o w e r b u i l d e r9 0w h i c h i s 1 1 a l lo u t s t a n d i n go b j e c t - o r i e n t e dd e v e l o p m e n tt o o l ,a n dw ec h o o s es q ls e r v e r 2 0 0 0 a st h eb a c k g r o u n dd a t a b a s em a n a g e m e n ts y s t e m t h i r d ,w et a k ed o c t o rw o r k s t a t i o n a st h ep r i m a r ys t u d yo b j e c t , i ts t a r t sf m mt h ec u r r e n tm a n a g e m e n tm o d e lo fd o c t o r w o r k s t a t i o ni nh u b e ih e r b a lh o s p i t a la n di n t r o d u c e st h ed e s i g na n di m p l e m e n to f d o c t o rw o r k s t a t i o ni nd e t a i l a tt h em e a n w h i l ei tg i v e so u tt h ed a t af l o wc h a r to fm a i n f u n c t i o nm o d u l e s ,d e s i g na p p r o a c h e sa n dp a r t i a lc o r ep r o c e d u r e sa n de m p h a s i z e so n d e s i g no ft h ei n t e r f a c eb e t w e e nt h eh u b e ih e r b a lh o s p i t a lh i ss y s t e ma n dt h eo l d c h a r g es y s t e m a st h eo p e r a t i o na n dn a r c o s i ss u b s y s t e mi sas p e c i a lb r a n c ho fd o c t o r w o r k s t a t i o n , a l s og i v e sp a r t i c u l a rd e s i g nw a y sa n dr e a l i z a t i o no ft h eo p e r a t i o na n d n a r c o s i ss u b s y s t e m b e s i d e s ,i td i s c u s s e st h er e a l i z a t i o np r o c e s so fg e n e r a lq u e r y f u n c t i o n , a n dc a nd e e p e nt h el e a r n i n ga b o u tp r o g r a m m i n gt h r o u g hm a k i n gt h e f u n c t i o n sw h i c hc a nb ec a l l e df r e q u e n t l yi n t oag e n e r a lm o d u l e a tt h ee n do ft h i s p a p e r , i ti sm yo w ne x p e r i e n c e s o r lt h er e s e a r c ha n d d e v e l o p m e n to fh i ss y s t e m ,i n c l u d i n gt h es u m m a r yo ft h ed e v e l o p m e n to fh u b e i h e r b a lh o s p i t a lh i ss y s t e m ,s o m es u g g e s t i o na n df u t u r eo u t l o o kf o rt h a t k e y w o r d s :h o s p i t a lm a n a g e m e n ti n f o r m a t i o ns y s t e m ,d o c t o r w o r k s t a t i o n p o w e r b u i l d e r9 0 ,s o ls e r v e r 2 0 0 0 i i i 独创性声明 本人声明,所呈交的论文是本人在导师指导下进行的研究工作及 取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外, 论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得 武汉理工大学或其它教育机构的学位或证书而使用过的材料。与我一 同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说 明并表示了谢意。 签名:囵整日期:壁! :三:丝 关于论文使用授权的说明 本人完全了解武汉理工大学有关保留、使用学位论文的规定,即 学校有权保留、送交论文的复印件,允许论文被查阅和借阅;学校可 以公布论文的全部或部分内容,可以采用影印、缩印或其他复制手段 保存论文。 ( 保密的论文在解密后应遵守此规定) 签名:固! 导师签名:衄日期:遮! ( 注:此页内容装订在论文目录前) 武汉理工大学硕士学位论文 1 1 课题背景 第1 章绪论 湖北省中医院始建于1 9 2 4 年,2 0 0 2 年与湖北省中医药研究院合并组建新 的“湖北省中医院”,“湖北省中医药研究院”、“湖北省中西医结合医院”、“湖北 中医学院附属医院”,为全国九大中医科研基地之一。是全国首批“三级甲等医院” 和“全国省级示范中医院”,系湖北省唯一以中医和中西医结合为特色的大型综合 性教学医院。医院现有职t1 3 0 0 多人,其中高级技术人员3 0 0 余名,一大批学 贯中、西医的专家、教授,形成了以中医、中西医结合为特色的人才队伍。设 有5 个研究所:中西医结合临床研究所、实验外科研究所、肝病研究所、中医 急症研究所及中医工程研究所。 湖北中医院现有门诊挂号、门诊收费以及住院收费系统,其他的各个部门 目前仍然是人工手动工作。 1 2 医院信息系统简介及国内外发展概况 医院管理信息系统( h o s p i t a li n f o r m a t i o ns y s t e m ,以下简称h i s ) 是指应用电 子计算机和网络通信设备,为医院及其各部门提供病人医疗信息、物资管理信 息、核算分析信息、行政管理信息、决策分析统计等信息的处理能力,并能满 足所有授权用户对信息的各种功能需求的计算机应用软件系统1 1 j1 2 j 。 h i s 软件立足以病人为中心的服务体系和以经济效益为核心的管理体系, h i s 软件的设计,首先从医院的管理模式入手与计算机高新技术相结合,而不同 于其他医疗软件只强调计算机技术的先进性而忽视了医院管理模式的重要性。 利用网络信息系统提供的快速、准确的通讯,能够及时掌握各种信息;建 立医院从药品购进、编码定价、损益调价、库存管理到前后台的销售、各项医 疗费用的记入、住院出院等一系列事务的计算自动化管理。自动化管理实现以 后,可以大大提高医院工作人员的工作效率和工作质量,并且能提高医院工作 的管理水平及经济效益p j 。 按照医疗系统的信息划分,医院信息化发展经过三个阶段:医院管理信息 武汉理【大学硕士学位论文 化阶段,临床管理信息化阶段,局域医疗卫生服务阶段。我国医院信息化大多 数还停留在第一阶段,大部分地区医院在信息化网络化方面还只是刚刚起步, 跟欧美发达国家相比有很大的差距。目前,我国绝大部分医院没有全部实现计 算机管理,部分医院的计算机应用仍停留在简单的财务管理模式上,因此,从 严格意义上讲,我国的医疗信息化建设尚处于初级阶段1 4 l 【5 】【6 】。 1 3 湖北中医院h i s 系统简介 根据湖北中医院的要求,湖北中医院h i s 系统包含了以下模块:基础数据 管理子系统、门诊医生工作站、住院医生工作站、住院护士工作站、手术麻醉 子系统、财产物资管理系统、人事管理系统、检验管理系统、新旧系统接口。 其中,基础数据管理子系统主要是对所有基础数据的管理,并由医护人员自行 维护;新老系统接口主要是用于连接h i s 系统和现行运行的收费以及挂号系统, 将整个医院的业务连接起来。其他模块均为业务模块,用于处理相关业务数据, 同时通过h i s 系统实现各个部门之间相关数据的传递和共享,按照用户的不同 身份提供不同的操作权限。所有模块均有查询功能,方便用户查看各类信息。 1 4 医生工作站功能描述 1 4 1 门诊医生工作站 ( 1 ) 门诊电子病历 自动判断病人是否首次看病,并且根据相关模块进行电子病历输入:形成 完整的门诊电子病历。 ( 2 ) 门诊处方 给病人下达电子处方,并且自动进行计费及减少药房参照库存处理。 ( 3 ) 门诊检验检查申请单 根据病人基本情况,可以下达包括检验、各种检查等项目检查单。同时根 据收费项目字典进行自动计费。 ( 4 ) 病历模板维护 每个科室、每个医生均可以定制自己常用病历诊断及相关述语,以便在相 同情况下不需要重新输入,可直接从模块中调用。 2 武汉理 大学硕士学位论文 ( 5 ) 门诊报告单浏览 可以直接浏览从各检验、检查科室发来的电子报告单。 ( 6 ) 门诊病历、病人信息查询 根据要求,可以对病人各种信息进行查询。 ( 7 ) 模板维护 主要是用来维护相关科室与医生自己定制病历及常用医学术语维护。 1 4 2 住院医生工作站 ( 1 ) 住院病历登记 病人完整电子病历,完成病案首页相关内容。 ( 2 ) 病程记录 对病人每天发生情况进行登记 ( 3 ) 医嘱录入 录入病人长期与临时医嘱单,可分类进行输入,并且自动对病人费用进 行监控,当押金不足时自动报警。当药品库存不足时预报警。 ( 4 ) 出院小结 办理病人出院相关手续,同时记载病人出院时基本情况。 ( 5 ) 统计查询 可以基于病人,医嘱,费用等三条主线进行各种统计查询。 ( 6 ) 模板维护 主要是用来维护相关科室与医生自己定制病历及常用医学术语维护。 1 4 3 新旧系统接口 主要是针对原有系统与新系统对接时,有部份工作需要进行改动,主要体 现在以下几个方面: ( 1 ) 旧系统表结构变动 原有表结构如果需要和新系统进行对接,需要在原有表结构基础上做调 整,增加相关字段才能满足现有要求 ( 2 ) 旧系统数据整理 针对新系统要求,可能会对原有表数据进行一些补充与优化,以达到两 3 武汉理工大学硕士学位论文 者兼顾。 ( 3 ) 旧系统流程整理 需要对原有系统业务流程进行了解,尤其是对于门诊与住院结帐方面, 必须明白原有结帐方式及相关表与数据。 1 5 手术麻醉子系统功能描述 ( 1 ) 手术、麻醉申请与审批 根据有关规定完成手术、麻醉的申请和审批信息 ( 2 ) 术前安排 各项检查是否完成;诊断是否明确;是否符合手术条件;手术同意书是否签 好;麻醉签字单已否准备。 ( 3 ) 术前讨论与总结 以电子形式记载相关准备信息,记载手术医嘱,手术通知单及各种落实情况, 这部分信息将会被记录在病人的电子病历中 ( 4 ) 术中手术信息管理 录入手术编号、日期、时间、手术室及手术台;手术分类、规模、部位、切 口类型等。 ( 5 ) 术中麻醉信息管理 麻醉方法、用药名称、剂量、给药途径 ( 6 ) 术后情况登记 提供手术情况:手术记录、麻醉记录:提供患者情况:血压、脉搏、呼吸等; 随访信息:一般手术随访一天,全麻及重患者随访三天,随访结果记录,有 关并发症记录。 ( 7 ) 查询统计 对手术相关信息进行各种查询与统计 4 武汉理工大学硕士学位论文 第2 章开发平台与开发模式 2 1 前台开发工具:p o w e r b u i l d e r9 0 2 1 1p o w e r b u i l d e r 开发方法及特点 一个w i n d o w s 应用程序是由若干个窗口构成的,每个窗口上都有若干个控 件( 如命令按钮、控制菜单、显示的文本等等) ,每个对象或控件都有若干事件( 如 在命令按扭上的单击或双击等等) 。每个事件将对应一段程序;同样,p o w e r b u i l d c r 的应用程序也是这样构成的同。 1 、p o w e r b u i l d e r 应用程序的组成 p o w e r b u i l d e r 应用程序和其他w i n d o w s 应用程序一样,也是由两大部分构成 的:一是用户界面,而是应用处理逻辑。 用户是通过窗口、菜单和窗口上的各种控件等界面元素来操作应用程序的; 而应用处理逻辑是通过事件和函数中的程序代码来实现的,它可以实现合法性 规则和各种应用处理逻辑i s 。p o w e r b u i l d e r 可以将应用处理逻辑作为用户界面的 一部分( 窗口、菜单或各种控件事件中的程序) ,也可以将应用处理逻辑做成客户 类用户对象这样的独立模块。图2 - 1 说明了p o w e r b u i l d e r 应用程序的构成方法。 图2 - 1p o w e r b u il d e r 应用的构成 5 武汉理工大学硕士学位论文 由此可以看出,p o w e r b u i l d e r 的开发应该首先了解的各种对象和控件( 包括窗 口) 以及对象和控件的属性和事件1 9 j 。 2 p o w c r b u i l d c r 应用程序是事件驱动的 p o w e r b u i l d e r 是一种面向对象的开发工具,所以与使用传统开发工具进行开 发有着本质的区别【1 0 1 。传统开发工具考虑的是程序流,开发思路是“流控制”; 而p o w e r b u i l d e r 考虑的是对象,并发思路是“事件驱动”,即事件驱动程序执行。 简而言之,使用p o w e r b u i l d e r 进行开发的实质剧”j : ( 1 ) 定义对象和控件及其属性。 ( 2 ) 定义对象和控件上某个事件发生时要执行的程序。 在p o w e r b u i l d e r 应用程序中,是由用户控制完成指定任务的。例如单击命令 按钮、选择一个菜单项或者在文本框中输人数据就可以触发一个或多个事件。 当事件被触发时,为事件写的程序代码就会被执行。 用p o w e r b u i l d e r 建立的窗口、控件和其他应用部件都有一组预定义的事件。 例如,各类按钮都有c l i c k e d ( 单击) 事件与它相关,每个文本框都有m o d i f i e d ( 修 改1 事件等。一般情况下,这些预定义的事件都是用户需要的,而且也是够用的。 但是在特殊情况下,如果需要,用户也可以定义自己的事件l 埘。 尽管p o w e r b u i l d e r 是个高效的开发工具,但是系统设计同样重要,需要精心 设计,认真开发。图2 - 2 说明了使用p o w e r b u i l d e r 进行应用程序开发的一般过程。 图2 2p o w e r b u i l d e r 应用开发流 6 武汉理工大学硕士学位论文 3 功能强大的p o w e r s c r i p t 语言 在p o w e r b u i l d e r 中,所有应用处理逻辑都是用p o w e r s c r i p t 语言编写的,也 就是说,p o w e r s c f i p t 是p o w e r b u i l d e r 的专用程序设计语言【1 3 1 。 p o w e r b u i l d e r 程序代码的执行是由事件触发的,这些处理程序的代码由 p o w e r s c r i p t 的命令、函数和语句等组成。例如,按钮的单击事件的程序代码可 以检索和显示数据库中的信息,文本框的修改事件的程序代码可以对数据进行 计算或执行基于数据的处理。 一个事件程序代码的执行可以引起其他事件的触发1 1 4 】。例如,命令按扭的 单击事件的程序可能会打开另一个窗口,这就触发了窗口的o p e n ( 打开) 事件。 4 丰富的p o w e r s c r i p t 函数 p o w e r s c r i p t 提供了非常丰富的各类函数,我们可以把它们用于应用程序的 多种部件上。例如,有打开窗口的函数、关闭窗口的函数、使按钮成为可用( e n a h l e ) 的函数、更新数据库的函数等。 除了大量系统提供的函数外,用户也可以定义自己的函划1 5 1 。 5 面向对象的程序设计 每个用p o w e r b u i l d e r 建立的菜单或窗口等都是一个称做“对象”的独立模 块。p o w e r b u i l d e r 应用程序就是用这样的对象“搭建”起来的,每个对象部有特 定的特征和行为( 属性、事件和函数) 1 1 6 1 。利用封装( e n c a p s u l a t i o n ) 和多态性 ( p o l y m o r p h i s m ) 这些面向对象程序设计技术的优势,不仅可以开发出更加优秀的 应用系统,还可以增加应用程序中各种组件的可重用性和可扩展性【1 7 1 。 2 1 2 数据窗口技术 数据窗口技术是p b 中最重要的核心技术之一,为检索、表现和操作相关数 据库或其他数据源中的数据提供了非常方便的手段。利用它,开发人员不需要 重新编写专门的s o l 语句,只需要简单编程就可以对后台数据库进行一系列数 据交互操作,正因为如此,使得p b 成为了数据库管理应用系统开发的优秀工具。 开发人员可以通过定义数据窗口对象来指定数据的显示格式、表现风格以及其 他数据属性【l b 】【1 9 1 。它一般包括两方面的内容,一是定义数据及数据自身持性的 数据窗口对象。二是通过数据窗口对象控制和操作数据的数据窗口控件。 在p o w e r b u i l d e r 中,d a t a w i n d o w 是用户前端用来存储、操纵数据的对象。 在每一个d a t a w i n d o w 对象中有4 个二维表作为数据缓冲区,用来存储查询到的 7 武汉理 :大学硕士学位论文 数据。用户在d a t a w i n d o w 中对数据处理系统内部的操作实际上都是将数据在这 几个缓冲区中进行的修改和移动。最后在用户提交数据库时。系统根据这四个缓 冲区中的信息形成s o l 的i n s e r t , u p d a t e ,d e l e t e 等语句。这四个缓冲区是: ( 1 ) p r i m a r y b u f f e r 这个缓冲区是存放d a t a w i n d o w 控件中的数据,调用d a t a w i n d o w 的r e t r i e v e 0 函数和i n s e r t r o w o i 函数可以将数据填入这个缓冲区中。当使用有关d a t a w i n d o w 删除和过滤函数时,相应记录将从这一缓冲区中删除。而在执行d a t a w i n d o w 的 u p d a t e o 函数时,p o w e r b u i l d e r 将查看这一缓冲区中的记录,以形成s q l 的 i n s e r t 和u p d a t e 语句。 ( 2 ) d e l e t e b u f f e r 这个缓冲区保存的是用d e l e t e r o w o i 函数从p r i m a r y b u f f e r 中删除的记录,执 行u p d a t e 0 函数时,系统根据这一缓冲区的记录形成d e l e t e 语句。 ( 3 ) f i l t e r b u f f e r 这个缓冲区存储的是从o r i g i n a l b u f f e r 使用f i l t e r o g f i 数过滤到p r i m a r y b u f f e r 中后剩余的记录。 ( 4 ) o r i g i n a l b u f f e r 这一缓冲区存储的是d a t a w i n d o w 最初执行r e t r i e v e 0 函数时得到的全部记 录。当提交数据库时,根据p r i m a r y b u f f e r 生成的u p d a t e 语句和根据d e l e t e b u f f e r 生成的d e l e t e 语句都要依据这一缓冲区来构造这些s q l 语句中的w h e r e 子 句。 o d g i n a l b u f f e r 由p o w e r b u i l d e r 内部维护,p o w e r b u i l d e r 所提供的任何函数都 无法改变它的值,不过通过p o w e r b u i l d e r 所提供的g e t l t e m 系列的函数可以读 出d a t a w i n d o w 最初从数据库中查到的原始值。如果当前使用的d a t a w i n d o w 没 有设置修改的权力,将不能对d e l e t e 缓冲区和0 r i 西n a l 缓冲进行操作,而且当调用 u p d a t c o 时也将引起系统错误【刎 2 1 】。 p r i m a r y b u f f e r 和d e l e t e b u f f e r 都有行级和列级的状态值,这个状态值是一个 枚举类型。在提交时d j 该行的状态值来决定是否要产生s q l 语句,其中 p d m a r y b u f f e r 产生的是i n s e r t 和u p d a t e 语句,而d e l e t e b u f f e r 产生的是 d e l e t e 语句。我们用g e t l t e m s t a t u s o i 交数和s e t l t e m s t a t u s 0 函数可以对这一状 念值作操纵。这一枚举状态有以下四种 z 2 1 2 3 1 : n o t m o d i f i e d ! :该行或行的值为查询所得,没有发生改变。 8 武汉理工大学硕士学位论文 d a t a m o d i f i e d i :该行或列的值为查询所得,发生了改变。 n e w ! :该行或列为一插入的新行,数据没有发生改变( 数据为空或缺省值) n c w m o d i f i e d ! :该行或列为一插入的新行,数据发生改变。改变是通过用户键 盘输入或调用了s e t l t e m 0 函数。 以下的例子演示了如何根据数据缓冲区中数据的状态来进行判断。 例1 : i f d w _ c l l n x g e t r o w o 0t h e n 使用g e t i t e m s t a t u s o i 函数得到p r i m a r y b u f f e r 里当前行的状态 判断当前数据的状态 i fd w _ c 劬x g e t i t e m s t a t u s ( d w _ c f m x g e t r o w o ,0 ,p r i m a r y ! ) n o t m o d i f i e d ! t h e n 如果当前行的数据是查询所得,且已经发生了改变 e n d i f e n d i f 2 2 后台开发工具:s q l s e r v e r 2 0 0 0 s q l s e r v e r 是微软公司开发的一个关系数据库管理系统,以t r a n s a c ts q l 作为它的数据库查询和编程语言【卅。 s q ls e r 、,e r 2 0 0 0 作为m i c r o s o f t 家族的重要成员,是新一代基于客户朋艮务 器的大型关系数据库系统。根据测试表明,s q l s e r v e r 2 0 0 0 能够满足大型w e b 站点和企业数据处理系统的数据存储和分析需求,是一套组件的集合,由许许 多多的组件共同完成强大的功能【2 5 1 。s q l s e r v e r 2 0 0 0 具有以下特点: ( 1 ) 强大的可伸缩性 s o ls e r v e r 2 0 0 0 允许多用户同时访问数据库。s o ls e r v e r 2 0 0 0 的一个 实例包括数据库的备份和关系数据库管理系统的复制。运行在s q l s e r v e r 2 0 0 0 上的应用程序通过通信组件来把传输命令传到实例。当应用程序与s q ls e r v e r 2 0 0 0 的实例连接时,可以访问实例中用户授权的任何数据库。同样,通信组件 还允许在同一台计算机上运行多种实例。 佗) 支持大型w e b 站点或企业信息处理系统 s q ls e r v e r 2 0 0 0 支持对称多处理器技术,允许用户自己增加处理器、内 9 武汉理工大学硕士学位论文 存以及磁盘空间来满足上千的用户同时访问数据库。s q ls e r v e r 数拥库表中 的数据可以分布在多台服务器上。所有这些设簧对用户来说时透明的,用户不 知道实现的技术细节,对数据的操作完全和单机上一样。另外,s q l s e r v e r 2 0 0 0 的可伸缩性还支持单机系统,在这种情况下,由于没有涉及太多的资源和不需 要分布管理管理工作,因此效率很高。s q l s e r v e r 2 0 0 0 还能够动态分配资源, 包括分配处理器、存储空间等资源。关系数据库引擎自动调节资源以及实现并 发控制。 ( 3 ) 客户机服务器体系结构 客户机服务器体系结构是目前比较流行的计算机运行环境。该体系结构逐 渐成为共享信息系统的主流。客户机服务器体系结构把应用程序划分为许多任 务,而这些任务可以作为单独的程序来执行。该计算环境将任务分配给最适合 的处理器来处理,客户机的操作接近于请求点,服务器操作则接近于管理共享 姿源。 在客户机服务器计算体系中,客户机可以是最终用户接口设备,也可以是 应用程序。客户机可以初始化一个与服务器通信的事务,该事务定义了所需信 息的资源,而将大量的工作留给服务器来完成【2 6 l 。客户机把从服务器返回的数 据显示给用户,大量的数据处理工作需要服务器来完成,最后从服务器得到数 据分析和显示结果。这样,网络环境中传输的数据就只有客户机的请求和服务 器经过处理以后递交给客户机的结果,从而减少了网络流量1 2 ”。 服务器是为了处理请求而提供的服务。服务器可以是一个应用程序,而这 个程序能够完成某个特定的功能。通常,这个程序只在一个机器上运行。所以, 平时见到的服务器一般为一台计算机。但是,一定要清楚客户机和服务器都是 程序。服务器的硬件可以是一台p c 服务器、小型机或者主机。服务器提供许多 共享资源,如文件服务、打印服务、硬盘空间等。对于能够完成某个特定服务 的机器或程序称为服务器。如i n t e m e t 服务器、w e b 服务器以乃数据库服务器 等i2 8 】【2 9 】。 2 3 在p o w e r b u i l d e r 脚本中使用嵌入式s q l 语句 p o w e r b u i l d c r 可以通过数据窗口操作数据库,也可以在p o w e r s c r i p t 中直接 使用s q l 语句操作数据库,即提供了在程序代面5 中加入嵌入式s q l 语句的功能 1 0 武汉理t 大学硕士学位论文 来支持对数据库的访问。 s q l 语言有两种执行方式:自含式和内嵌式。自含式就是在数据库平台上 以命令行的方式交互执行,每键入一条s q l 命令都可以立即返回结果或者以命 令文件的方式在数据库平台上批量处理;内嵌式就是嵌入到其他的语言中执行, 比如,嵌入到p o w e r s c r i p t 语言中,返回结果可以交给p o w e r s c r i p t 处理,也可以 在嵌入的s q l 语句中处理p o w e r s c r i p t 中的变量1 3 0 l 3 1 】。 2 3 1 事务 在s q l 语句中有一个非常重要的概念:事务。 c s 结构中数据的分布式处理和多用户对数据库操作的随机性,给数据的处 理工作带来了复杂性,随时有可能发生一致性方面的冲突。比如,多个用户同 时修改一个数据表时,如何保证每个用户的数据都能正确提交,如何保证用户 正在做修改时的中间结果不被其他查询用户看到,如何保证两个关系紧密的操 作能够同时正确提交等等。使用事务就可以解决这些问题。事务是这样一种机 制,它确保多个s q l 语句被当做单个工作单元来处理。 这样做的好处是: 一致性:同时进行的查询和更新彼此不会发生冲突,其他用户不会看到发 生了变化但尚未提交的数据( 修改和提交当做一个事务) 。 可恢复性:一旦系统故障,数据库会自动地完全恢复未完成的事务。 在p o w e r b u i l d e r 中,事务管理是通过事务对象和相关的s q l 语句来完成的。 默认的事务对象s q l c a 是一个全局变量,可以随时使用。使用事务对象不仅可 以解决上面所述的冲突,而且可以和多个数据库系统建立联接。在p o w e r b u i l d e r 中,和数据库的联接、修改数据、查询数据等等所有和数据库打交道的操作都 是通过事务对象来完成的。正确地管理事务可以保证数据的完整性,当所做的 工作全部完成得到确认之前,没有任何数据物理地写进数据库。 在p o w e r b u i l d e r 中,对事务的操作是这样进行的:先定义开始一个事务, 然后对数据进行修改操作,这时如果提交( c o m m i t ) ,这些修改就永久地保存下 来;如果回j 星( r o l i b a c k ) ,数据库管理系统将放弃所有修改,回到开始托务时的 状态。这些操作都有相应的s q l 语句。 例1 : i fd w _ c f m x u p d a t e ( t r u e f a l s e ) = 1t h e n 1 1 武汉理 人学硕士学位论文 数据窗口更新成功,则提交到数据库 c o m m i t ; d w _ c f m x r e s e t u p d a t e ( ) m e s s a g e b o x ( g s _ m e s s a g e ,数据保存成功n e l s e ,数据窗口更新失败,则回滚,撤消所有的改动 r o l l b a c k ; m e s s a g e b o x ( g s _ m e s s a g e ,数据保存失败! r e t u r n e n d i f 在上述代码中,c o m m i t 以及r o l l b a c k 便是s q l 中事务提交和撤消的命令, 而不是p o w e r s c r i p t 语句,因此在这两个s q l 语句的后面必须加上“;”,以此来 与普通的p o w e r s e r i p t 语句区别,否则在进行程序保存时,系统会提示出错而无 法正常保存。类似的应用在湖北中医h i s 系统中的应用十分广泛,通过事务的 使用来保证了数据库的并发控制。 在p o w e r b u i l d e r 应用程序中,如果要连接
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年放射科医生放射学影像诊断技术考核试卷及答案解析
- 2025年内蒙古自治区专业技术人员继续教育公需科目试题及答案
- 2025反假币考试题库及答案
- 2025年机械员考试题库及参考答案新
- 变压器火灾事故应急演练脚本
- 2025年火警故障测试题及答案
- 2025年焊工作业人员职业技能考试笔试试题含答案
- 2025年事业单位职测招考笔试试题含答案
- 2025年中级银行从业资格之中级银行业法律法规与综合能力通关提分题库及答案
- 2025建筑电工考试真题及答案
- 2025河北农业大学第二批招聘102人考试笔试参考题库附答案解析
- 小学感恩教育主题班会 课件
- 新媒体营销推广案例分析
- 2025北京市实验动物上岗证试题及答案
- 道路客运驾驶员从业资格年度考核报告
- 制药设备改造协议书
- 读书分享成品《窗边的小豆豆》课件
- 【2025年】员工食堂培训试题及答案
- 财务会计基本规范与操作手册
- 2025年大学《历史学》专业题库- 中国古代史的专题研究
- 隧道下穿燃气管道爆破施工技术方案
评论
0/150
提交评论