安装Oracle版台站治理信息系统,涉及到许多网络参数设置及数据库创建、迁移等工作。其中Foxpro数据库向Oracle数据库的转换就是一个要害步骤。
原安装说明书是先把60个Foxpro数据文件?.DBF逐个导入到一个Access数据库,再把Access数据库的60个表?Table 逐个导出到Oracle数据库。手工导入/导出这60个表,既费时又乏味,稍不留意就会出错。笔者通过编写两个宏,实现自动导入和导出,大大节省了时间,又杜绝了错误的发生。在安装我区台站治理系统的过程中,收到了良好的效果。现介绍如下,供大家参考。
一、在客户端添加一个用户数据源,作为访问Oracle数据库用
如图1所示,打开“控制面板”,双击“ODBC数据源?32位”,点击“用户DSN”?再点击“添加”,从列表中选择“Microsoft ODBC for Oracle”作为驱动程序,出现“Microsoft ODBC for Oracle安装”窗口后分别在“数据源名称”、“用户名称”、“服务器”框内输入SRRC_ORACLE、srrc_sa、SRRC,其他框可以不填。如图2所示。最后点击“确认” 保存并退出。
二、编辑和进行宏
Access提供一种称为“宏”的方法,答应用户编写自己的处理程序,以完成某些特定任务。Access提供了一个函数Transfer模幔簦幔猓幔螅謇词迪质菘獾牡既牒偷汲觥1嗉驮诵泻甑牟街枞缦拢?lt;/p
1.运行Microsoft Access 97,新建数据库,取名为db。
2.如图3所示,点击“宏”,再点击“新建”,将弹出一个宏编辑窗口。
3.点击“操作”列,从列表中选择“TransferDatabase”,然后编辑表1中各栏。
这个操作的含义是:把目录C?\Database的一个格式为Foxpro2.5的数据文件account.dbf,导入到Access数据库db的一个表中,表名为OLD_ACCOUNT。
4.转下一栏,重复步骤3,分别把来源和目标修改为acctname.dbf,allo_tmp.dbf,allocat.dbf,……,workfreq.dbf和OLD_ACCTNAME,OLD_ALLO_TMP,OLD_ALLOCAT,……,OLD_WORKFREQ,依次将60个数据文件转换成Access表。
5.关闭宏编辑窗口,并保存宏,取名为“Foxpro_to_Access”。
6.运行宏“Foxpro_to_Access”,把Foxpro数据库导入到Access数据库db。
7.同步骤2,再新建一个宏。
点击“操作”框,从列表中选择“TransferDatabase”,然后编辑表2中各栏。
该操作的含义是:把表OLD_ACCOUNT导出到ODBC数据库。数据源名为SRRC_ORACLE,用户名及口令均为srrc_sa。转换后的Oracle表名为OLD_ACCOUNT。每次增加一行,修改来源和目标,把其余的59个表也导出到Oracle数据库。
8.退出编辑并保存宏,取名为“Acess_to_Oracle”,运行该宏,把Access数据库导出到Oracle数据库。
以上操作在Microsoft Access97上运行通过。我们也可以编写一个宏,把Oracle数据库导入到Access数据库中,以达到备份数据的目的。当Oracle数据库遭到破坏时,再运行宏“Access_to_Oracle”进行恢复。