您好, 访客   登录/注册

基于PowerBuilder的数据管道的应用

来源:用户上传      作者: 康 懿

  [摘要]随着PowerBuilder的广泛使用,针对其数据管道及其应用的问题,讨论该技术的主要内容。
  [关键词]PowerBuilder数据管道数据库
  中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)1120052-01
  
  数据管道是一种数据迁移工具。通过数据管道,应用程序能够在不同的数据库表之间移动数据,也就是说,可以把一个或多个源表中的数据复制到新表或已存在的目的表中。数据管道产生的数据迁移可以在同一个数据库中不同的表之间进行,也能够在同一个数据库管理系统的不同数据库之间进行,甚至可以在不同数据库管理系统的不同数据库之间进行。
  数据管道提供了在数据库内部、数据库之间,甚至不同数据库管理系统之间快速复制数据的简便途径。利用数据管道复制数据的过程称之为灌入数据。
  
  一、创建数据管道对象
  
  数据管道是PowerBuilder提供的一个对象,它的使用方法有两种:
  (1)数据管道画板创建数据管道对象,然后在数据管道画板中运行数据管道对象。这种方式方便了开发人员开发和测试应用程序。
  (2)用数据管道画板创建并保存数据管道对象,用用户对象画板创建基于数据管道对象的用户对象,编写需要的事件处理程序,在代码中运行管道。
  无论哪种方法,使用之前都需要创建数据管道对象,创建数据管道对象时,需要确定下述选项:
  1.源数据库;
  2.目的数据库;
  3.要从中复制数据的源表;
  4.要存放数据的目的表;
  5.要执行的数据管道操作类型;
  6.运行数据管道时事务提交的频率;
  7.允许出现的最多错误数;
  8.是否要把表的扩展属性一起传送到目的数据库中。
  
  二、数据管道出错处理
  
  在数据管道运行过程中,随时可能因数据完整性等多种原因而产生错误,PowerBuilder自动把出错的行显示在出错信息数据窗口中。数据管道的出错信息数据窗口显示了管道操作失败行的所有列,并在数据窗口左部指出了出错原因,这个数据窗口使用表格风格的显示方式。
  如果在数据管道执行过程中达到了最大出错个数,管道的执行就会自动停止,其后的数据无论正确与否都不会灌入目的数据库中。要想把后面的数据灌入数据库,只有两种方法可行:修改数据管道的定义,或修改数据源的定义。修改之后重新运行数据管道。
  
  三、数据管道的应用
  
  如果想在应用程序中使用数据管道,一般必须创建下述对象:(1)创建数据管道对象;(2)创建一个继承自Pipeline的标准类用户对象;(3)创建一个窗口,在窗口上放置用于显示数据管道运行过程中出错信息的数据窗口控件。
  在应用程序中使用数据管道的基本步骤如下:
  1.用数据管道画板创建数据管道对象。
  2.用用户对象画板创建继承自Pipeline的标准类用户对象。
  3.创建窗口,在窗口上放置一个数据窗口控件。
  4.编写代码,依次实现下述操作:
  (1)初始化事务对象并连接数据库;
  (2)创建标准类用户对象实例;
  (3)将数据管道对象与标准类用户对象实例联系起来;
  (4)启动数据管道。
  5.处理行错误。
  6.结束管道操作,清理前面创建的实例。
  在实现上述任务过程中,需要使用数据管道对象的属性、事件和函数:
  1.数据管道用户对象的属性
  数据管道用户对象的属性共有五个,反映了当前使用的数据管道对象、语法、数据管道运行情况等信息。
  2.数据管道的事件
  数据管道有五个预定义事件,在创建数据管道用户对象时,可以根据应用程序的需要定义自己的用户事件。
  3.数据管道的方法
  数据管道对象有八个方法,其中ClassiName()、GetParent()、PostE
  vent()、TriggerEvent()、TypeOf()与其他对象相应方法的意义相同,在此不再重复。而Start()方法将数据从源表传送到目的表中,Cancel()方法将终止数据管道的执行,Repair()方法将出错修改结果传送到目的数据库。
  
  四、小结
  
  本文主要讨论了PowerBuilder关于数据管道的功能,指出了如何创建数据管道对象,并详细介绍了数据管道应用的基本步骤和方法。
  
  参考文献:
  [1]徐松林等,PowerBuilder数据库应用开发教程[M].北京:清华大学出版社.
  [2]李春葆、曾平,Sql Server2000应用系统开发教程[M].北京:清华大学出版社.
  [3]施伯乐、丁宝康、汪卫编著,数据库系统教程[M].北京:高等教育出版社.


转载注明来源:https://www.xzbu.com/8/view-1067242.htm