当前位置: 首页 > 图文教程 > 数据库 > Oracle > 从Access 2000数据库转移到Oracle 9i

Oracle
大型数据库的设计原则与开发技巧
Oracle重做日志文件
如何使用Oracle的COALESCE函数
使用Oracle 10g Data Pump重组表空间
asp连接oracle
C++连接Oracle
详解Oracle的几种分页查询语句
简述Oracle数据仓库的体系结构
如何从完好的数据文件恢复oracle数据库
Oracle中OSFA和数据仓库简介
Oracle数据库段管理有技巧
Oracle中存取控制介绍
日志操作模式,Oracle数据的保护伞
Oracle中SQL语句解析的步骤
Oracle多粒度封锁机制研究(一)
Oracle多粒度封锁机制研究(二)
Oracle:教你删除Oracle数据库中重复没用的数据
Oracle:外部表在Oracle数据库中使用心得
Oracle:使用Oracle外部表的五个限制
Oracle:为什么Oracle字段的默认值不能用?

从Access 2000数据库转移到Oracle 9i


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-31   浏览: 42 ::
收藏到网摘: n/a

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

一、下载最新版本的OMWB(Oracle Migration Workbench)

并安装到下载Oracle Migration Workbench Release 9.2.0.1.2 for MicrosoftWindows98/NT/2000/XP 和 从Access 2.0, 95, 97 or 2000 to 到Oracle平台迁移的插件,二者的最新版本都是92012。首先把OMWB安装到与Oracle不同的主目录中,然后安装Access插件到同一目录。

二、为迁移准备数据源

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

三、运行OMWB执行迁移过程

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

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

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