您的位置:软件 > 开发者网络 > 开发工具 > 开发专栏 > PB > 正文
PB/Sybase系统开发中的数据库转移
[文章信息]
作者:陈新安 张继棠
时间:2003-05-17
出处:天极论坛
责任编辑:
[文章导读]
针对在大型MIS系统中经常遇到将一种数据库的原始数据转移到服务器数据库进行的处理问题......
advertisement
热点推荐
· 11.15软件精选 制作MSI文件
· 闪客五周年之闪客光荣榜
· 用Winamp“品尝”无限音乐
· 网络加、解密的技术应用
· 闪客五周年之闪客光荣榜:zoron
[正文]

1 2  下一页

  摘 要:针对在大型MIS系统中经常遇到将一种数据库的原始数据转移到服务器数据库进行的处理问题,将本地磁盘上的Foxbase数据库数据转移到Sybase 11数据库服务器为例,提出了几种有效的方法,并对各种方法的优缺点作了一一的说明和比较。

  关键词:客户机/服务器 ODBC Pipeline 系统表

  在大型的MIS系统中大多是采用客户机/服务器(C/S)的网络体系结构,在该系统中数据集中存储在服务器的数据库中。开发新的MIS系统的时候,数据的采集和录入是一个重要的部分。以电信计费系统为例主要有以下几个方面:
  1)原始数据的分拣处理,处理的对象主要是磁盘、磁带,或者光盘的二进制数据。
  2)以往系统中的档案数据和参数数据的转移处理,以减少用户的输入量和因为人工输入所带来的错误,处理的对象主要是Foxbase、Access等数据库文件。
  3)信息台或者其它部门送来的以Foxbase、Access等文件存储的费用文件,如168信息台送来的费用数据等。

  本文中将结合PowerBuilder/Sybase系统开发的实例,重点介绍2),3)两种情况的处理过程(即完成本地数据库文件向服务器数据库中的转移)中所采取的几种方式,以及各种方式的具体设计方法,说明了每种方法的普遍性和针对性,并对其优缺点作了比较。

  1、利用importfile ( )函数实现转移

  PowerBuilder是一种进行C/S系统开发的优秀的前端工具,本身提供了大量的功能和函数,其中DataWindow数据窗口是其重要的组成部分,具有强大的功能,其中importfile( )函数能够完成数据的转移。

  实现的过程是在服务器上创建一个同磁盘上的数据库结构相同的表,创建一个数据窗口对象(dw_fox),取数据源建立数据窗口,利用数据窗口对象本身的importfile( )函数将数据转移到数据窗口中,利用update( )函数将数据保存到服务器上所建的表中:

  dw_fox. importfi1e (cipan_file_name)
  dw_fox. Update ( )

  其中cipan_file_name为磁盘上的文件及其路径名称。该处理简单,但是缺乏灵活性,对在服务器数据库中建立的表的结构有比较高的要求,保证严格的一致性,但可以作相应的处理将有效的数据处理后转移到自己建的表中。

  2、利用ODBC连接实现转移

  ODBC是一种标准的应用程序接口(API),最早由Microsoft Windows系统实现,它允许一个应用程序同时连接多个数据源,它使用标准的SQL语句作为其数据查询语句。在处理过程中先通过ODBC画板静态地建立一个ODBC连接磁盘上的Foxbase数据库,编程中创建一个本地的事务对象连接本地的数据库,通过处理后,将有效的数据送到服务器上事先设计的一个与Foxbase数据库相类似的表中,保存有效的数据就可以了。在实际处理的过程中,各个地方的磁盘文件名是不同的,这样所连接的数据库文件名和目录都是变化的,那么在设计的时候就不能够实现将ODBC的接口固定设计出来,在处理的时候一般有两种方式,前端作一定的处理,即按照系统要求的目录和文件名称进行拷贝,为了使应用程序有更好的适应性,我们没有采取这种方式,而是另外一种方式,采取动态建立ODBC连接的方式。

  在PowerBuilder的ODBC连接中需要几个重要的参数,在利用ODBC事先建立一个连接FoxBASE数据库后(如Foxbase),查看pb.ini文件时将有如下的记录:

[PROFILE Foxtran]
DBMS=ODBC
.......
DbParm=Connectstring='DSN=FoxBASE'
Prompt=0
AutoCommit=0

  同样打开注册器在HKEY_CURRENT_USER Software\ODBC\ODBC.INI下将会发现已经注册的FoxBASE主键,这些给我们动态地建立ODBC连接提供了重要的资料。

  在具体的设置中利用PowerBuilder提供的函数注册一个ODBC的连接,然后创建一个事务对象连接本地(磁盘)的数据库,作相应的处理后将所需要的数据送到服务器上,具体的操作如下:

RegistrySet("HKEY_CURRENT_USER\Software\ODBC\ODBC.INI
 \FoxBASE", "Default Dir", regstring!, file_path)
             //设置FoxBASE主键
Transaction Foxtran
Foxtran=create Transaction //下面是初始化
Foxtran.DBMS="ODBC"
Foxtran.DBParm="Connectstring='DSN=FoxBASE'"
connect using Foxtran;

  其中FoxBASE是注册的ODBC的名称,Foxtran是事务对象管理中创建的用以连接Foxbase数据库的新事务,然后对事务对象进行初始化,file_path是磁盘数据库所在的路径名称(可根据用户输入的文件路径和文件名分析后取得)。利用动态创建ODBC连接同样可以同时连接其它的本地数据库如Access或者Sybase SQL anywhere等,具有一定的灵活性。


1 2  下一页

·"WAP天极之IT新闻资讯,50万元等你拿"    ·天极WAP之游戏狂图,50万元等你下载

天极社区邀请您:写博客日记  上传相片   论坛聊天  订阅电子杂志  推荐网摘   免费图铃工具
笔名:   请您注意:

 遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。

 天极网拥有管理笔名和留言的一切权利。
评论:
 

发表评论推荐给朋友我想参加相关培训打印我对此感兴趣订阅电子杂志
相关内容阅读排行榜
  • 11.15软件精选 制作MSI文件
  • 闪客五周年之闪客光荣榜
  • 兰欣推出我国第一款网络游戏专用音箱
  • 玩家发现117亡灵种族Bug
  • [配置推荐]极品HIFI配置
  • 东瀛美少女COSPLAY(55)
  • 用Winamp“品尝”无限音乐
  • 迷你型PStwo全面透析专题
  • Advertisement

    天极无线
    待机彩图    >>更多
    多彩动画    >>更多
    美妙和弦    >>更多
    天使在唱歌
    壁虎漫步
    PrettyBoy
    LoveLoveLove
    我是你的小小狗
    单身情歌
    十面埋伏
    祝酒歌
    回心转意
    波斯猫
    太委屈
    S.H.E
    潘玮柏
    M2M
    蔡依林
    阿牛
    林志炫
    陈弈迅
    刀郎
    黑龙
    S.H.E
    陶晶莹
    情人玫瑰坊
    音乐风云
    新片速递
    神秘测试
    都市约会
    ·天极彩信天天精彩
    ·图铃梦工厂下载无限!
    ·找寻童真,卡通专题
    ·夏日激情交友社区!
    ·星座运程,预测人生

    CSEEK搜索