咨询热线

0371-86158370

PowerBuilder软件中数据窗口的数据缓冲区

如果您正在寻找相关产品或有其他疑问,可随时拨打服务热线,或点击下方按钮与我们在线交流!

2022-03-31 17:45:10 发布者:海融软件
关于PowerBuilder软件中数据窗口的数据缓冲区 这个疑惑,是在河南IT软件服务商中一个比较常见的疑惑了,那么如何解决这个疑惑呢,继续阅读,接下来进行详细的介绍。

  摘 要 powerbuilder中数据窗口的数据缓冲区应用广泛,本文简述了pb中数据缓冲区的原理、状态

  关键词 数据窗口; 数据缓冲

  DATAWINDOW的四个缓冲区 

  在PowerBuilder中,DataWindow是用户前端用来存储、操纵数据的对象。在每一个DataWindow对象中有4个二维表作为数据缓冲区,用来存储查询到的数据。用户在DataWindow中对数据处理系统内部的操作实际上都是将数据在这几个缓冲区中进行的修改和移动,最后在用户提交数据库时,系统根据这四个缓冲区中的信息形成SQL的IN-SERT,UPDATE,DELETE等语句。这四个缓冲区是: 

  1、Primary Buffer 

  这个缓冲区是存放填充窗口中DataWindow控件中数据的,调用DataWindow的Retrieve()函数和InsertRow()函数可以将数据填入这个缓冲区中。当使用有关DataWindow删除和过滤函数时,相应记录将从这一缓冲区中删除。而在执行DataWindow的Update()函数时,PowerBuilder将查看这一缓冲区中的记录,以形成SQL INSERT和UPDATE语句。 

  2、Delete Buffer 

  这个缓冲区保存的是用DeleteRow()函数从Primary Buffer中删除的记录,执行Update()函数时,系统根据这一缓冲区的记录形成DELETE语句。 

  3、Filter Buffer 

  这个缓冲区存储的是从Original Buffer使用Filter()函数过滤到Primary Buffer中后剩余的记录。 

  4、Original Buffer 

  这一缓冲区存储的是DataWindow最初执行retrieve()函数时得到的全部记录。当提交数据库时,根据Primary Buffer生成的UPDATE语句和根据Delete Buffer生成的DELETE语句都要依据这一缓冲区来构造这些SQL语句中的Where子句。 

  Original Buffer由PowerBuilder内部维护,Power-Builder所提供的任何函数都无法改变它的值,不过通过PowerBuilder所提供的GetItem…系列的函数可以读出DataWindow最初从数据库中查到的原始值。通过这些函数我们可以编程实现所谓的"Undo"功能,并且得到在使用乐观锁时形成提交数据库的WHERE子句。 

  如果您当前使用的DataWindow没有设置修改的权力,您将不能对Delete缓冲区和Original缓冲进行操作,而且当调用Update()时也将引起系统错误。 

  数据缓冲区的状态值 

  Primary Buffer和Delete Buffer都有行级和列级的状态值,这个状态值是一个枚举类型。在提交时由该行的状态值来决定是否要产生SQL语句,其中Primary Buffer产生的是IN-SERT和UPDATE语句,而Delete Buffer产生的是DELETE语句。我们用GetItemStatus()函数和SetItemStatus()函数可以对这一状态值作操纵。这一枚举状态有以下四种: 

  ·NotModified!———该行或行的值为查询所得,没有发生改变。 

  ·DataModified!———该行或列的值为查询所得,发生了改变。 

  ·New!———该行或列为一插入的新行,数据没有发生改变(数据为空或缺省值)。 

  ·NewModified!———该行或列为一插入的新行,数据发生改变。改变是通过用户键盘输入或调用了SetItem()函数。 

案例展示:北斗位置服务平台 海融软件北斗位置服务平台按照交通部相关行业标准进行建设,通过集成图像视频处理技术、智能IC卡技术、GIS电子地图技术、大数据储存和分析技术,利用GPS/北斗卫星定位技术、4G/5G无线网络通信技术,通过车载终端实现对车辆的实时调度监控,有效加强对车辆运营及驾驶员的管理。案例展示:智慧公交调度平台 海融智慧公交整体解决方案通过GPS/北斗卫星定位技术、4G/5G无线网络通信技术、GIS地理信息技术、以及大数据储存等多种技术融合,全面推动城市、农村公共交通管理现代化、安全监管规范化、运营调度智能化、决策支持科学化、信息服务一体化,从而提高公共交通运输企业服务管理水平,提升公共交通吸引力,让公众出行更便捷安全、绿色环保。
相关产品
更多推荐
科技·质量·服务·创新

科技·质量·服务·创新

提交需求

如果您对我们的产品感兴趣,或者我们有什么可以帮助到您的,您可以随时在线与我们沟通。 当然您也可以在下面给我们留言,我们将热忱为您服务!

快速响应给予技术咨询答复

专业优质软件服务

成熟领先产品解决方案

专业可靠合作伙伴

免费咨询 0371-86158370
免费获取报价

获取报价

销售热线销售热线:0371-86158370

返回顶部

首页 在线咨询在线咨询 一键拨打一键拨打
Baidu
map