Access2000迁移到Oracle9i要点

2016-01-29 14:50 1 1 收藏

Access2000迁移到Oracle9i要点,Access2000迁移到Oracle9i要点

【 tulaoshi.com - Oracle教程 】

Oracle9i中提供强大的迁移功能,可以从多种数据库向Oracle迁移数据。Oracle新发行的迁移工具提供了从Access2000向Oracle92010迁移的简便易行的解决方案,该方案克服了中文乱码问题和字符串被截断的问题,如下就是从Access2000向Oracle92010迁移的全过程。

  一、到OTN下载最新版本的OMWB(Oracle Migration Workbench)并安装到http://otn.Oracle.com/tech/migration/focusareas/Access.html 下载Oracle Migration Workbench Release 9.2.0.1.2 for Microsoft Windows 98/NT/2000/XP 和 从Access 2.0, 95, 97 or 2000 to 到Oracle平台迁移的插件,二者的最新版本都是92012。首先把OMWB安装到与Oracle不同的主目录中,然后安装Access插件到同一目录。

  二、为迁移准备数据源

  到OMWB主目录的Omwbmsaccess_exporter目录下,打开omwb2000.mde文件,输入将要迁移的Access数据库文件和即将生成的针对数据库的XML描述文件,这时你回发现在与Access相同的路径下生成了一个同名的XML文件,打开这个文件,其中记录了Access数据库的表的列和关系、视图的定义。OMWB支持Access的中文表名和列名,但要注意在生成XML文件之前要先修改OmwbmsAccess_exporterschema.dtd文件,将首行的encoding="ISO-8859-1"修改为encoding="GBK",然后在通过打开omwb2000.mde文件为数据库生成XML文件,这时表名和列名就成功显示中文了,在迁移到Oracle之前,还要用同样方法修改生成的XML文件的编码为encoding="GBK"。

  三、运行OMWB,执行迁移过程

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com)

  运行OMWB,根据提示,输入Access数据库的描述文件,即上一步生成的XML文件,根据该文件为迁移生成数据源,该数据源包括表、索引、主键、关系和表验证规则。接下来生成Oracle模型,OMWB自动生成表空间和两个用户。数据源和目标数据模型都存储在Oracle的资料档案库里,该库由安装OMWB工具时系统提示生成。下一步就可以执行迁移过程了,还可以为迁移生成脚本程序。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com)

  四、解决中文字符被截断的问题

  OMWB提供由数据源和目的的数据类型影射,修改该数据影射可以改变迁移目标的数据长度和类型,但我尝试多次也没能解决这个问题,包括在OMWB读取XML文件生成的Access模型中修改源数据类型也无济于事。问题在于Access本身。首先打开Access数据库,修改其数据表中的数据类型和长度,保存数据库后退出,再次为数据库生成XML描述,这时我们会发现XML文件的表列定义改变了,重新运行OMWB,为迁移生成源数据模型后,源模型和目标模型的数据类型和长度也自动改变了,之后的迁移过程即可正确迁移长中文字符串了。Oracle提供的企业管理器和应用服务器的web形式界面里存在几处相同的问题,修改资料档案库根本不能解决问题,这也算是Oracle数据库产品的图形界面工具的缺陷

来源:https://www.tulaoshi.com/n/20160129/1494401.html

延伸阅读
ORACLE实现异种数据库连接服务的技术叫做透明网关(Transparent Gateway)。 目前ORACLE利用透明网关可以实现和SQL SERVER、SYBASE、DB2等多种主流数据库的互联。 现在通过oracle访问sybase数据库,把配置oracle9i TRANSPARENT GATEWAY FOR SYBASE的步骤写成文档,供需要的网友参考! 配置TRANSPARENT GATEWAY FOR SYBASE步...
正在看的ORACLE教程是:Oracle9i取得建表和索引的DDL语句。我们都知道在9i之前,要想获得建表和索引的语句是一件很麻烦的事。我们通常的做法都是通过export with rows=no来得到,但它的输出因为格式的问题并不能直接拿来用。而另一种方法就是写复杂的脚本来查询数据字典,但这对于一稍微复杂的对象,如IOT和嵌套表等,还是无法查到。&n...
近日,为了适应新的形式,响应ORACLE 公司号召,体验ORACLE 公司的新产品的功能,决定对其中一个数据库由8i 迁移到10g ,但作业过程中,出现了一些问题,现在给大家共享一下 迁移对象: SUN SOLARIS8 ORACLE8.1.7.4 NLS_CHARACTERSET ZHS16GBK 接受对象: IBM AIX 5.2 ORACLE10.1.0.5 NLS_CHARACTERSET...
在把Oracle查询转换为SQL Server的时候要特别当心一些不容易注意到的问题。我们知道,T-SQL是SQL Server的语言引擎,而Oracle的语言引擎却是PLSQL。这两种查询语言都对ANSI SQL-92标准进行了扩展以提供额外的支持力度。你所创建的应用程序几乎都要用到这些补充特性。本文就对最常用的、非标准的Oracle扩展进行了说明,同时还要介绍下如何对...
#include  "utilcls.h"   void  CompactDatabase(String  f1,String  psw1,  String  f2,String  psw2)     {            String  Provider1="...

经验教程

318

收藏

49
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部