如何将Access数据库中的表导入Oracle数据库中

zlxzm 2004-07-15 01:09:39
老系统:单机版,在全国400多家单位使用,Access数据库;
新系统:网络版,只用一个Oracle数据库,数据实现集中存放。
新老系统表结构基本可以视为相同
问题:如何将400多家单位的Access数据库转到升迁到新系统中,有没有方便快捷的方案?请赐教。多谢
...全文
401 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
zlxzm 2004-07-23
  • 打赏
  • 举报
回复
对于大量的数据库需要转化的时候,转化的速度也必须考虑,如DTS转的速度就不如程序快,实际中采用哪种方案要根据实际情况来定。
zhpsam109 2004-07-22
  • 打赏
  • 举报
回复
使用borland的工具datapump很方便,在c++ Builder和deplih中带有的!
gzh_seagull 2004-07-21
  • 打赏
  • 举报
回复
可以把表生成文本,然后用sqlldr来导,这样可以捕捉错误的数据再处理
qgbin 2004-07-21
  • 打赏
  • 举报
回复
我以前也用过用vb6+ado从access导入到ORACLE8中。
因access与oracle列不同所以用VB 因本人熟悉VB。
在insert时如果出错的话直接就显示错误了,
是插入的值过长等等。
也可以用 msgbox 来显示这条insert 语句.
zlxzm 2004-07-20
  • 打赏
  • 举报
回复
我的方法真的还可以,我准备用于实际数据升迁中.
dinya2003 2004-07-20
  • 打赏
  • 举报
回复
论坛里有很多类似的文章了.
zlxzm 2004-07-20
  • 打赏
  • 举报
回复
top
zlxzm 2004-07-20
  • 打赏
  • 举报
回复
当然可以,
swellyu 2004-07-20
  • 打赏
  • 举报
回复
DTS??
能够将oracle数据库移植到SQL SEVER吗?
我看来要好好学习使用它了!
freddy2003 2004-07-16
  • 打赏
  • 举报
回复
看书

<SQL Sever 2000 完全实战-数据转换服务(DTS)>

中国铁道出版社
章立民 编著
zlxzm 2004-07-16
  • 打赏
  • 举报
回复
哦,看来确实要学习一下DTS,谢谢! 我用的是SQL SERVER 带的 DTS ,实际上用的是图形化界面DTS Wizard.楼上这位朋友可以简单介绍一下如何在DTS里编程吗?
freddy2003 2004-07-16
  • 打赏
  • 举报
回复
你要好好学习一下DTS
freddy2003 2004-07-16
  • 打赏
  • 举报
回复
DTS里你可以编程来转换呀!!
zlxzm 2004-07-16
  • 打赏
  • 举报
回复
DTS只告诉你发生了什么样的冲突,如字段长度不够(如由于对汉字的处理Access和Oracle
不一样,前者一个汉字占一个字符,而到后者就是两个字节了)或约束冲突,但它不告诉你到底是哪条记录造成的,用程序就可以知道是哪条记录出的问题了。
freddy2003 2004-07-16
  • 打赏
  • 举报
回复
"用程序实现"不太好,因为你的程序对错误的处理一不一定比DTS好
再者,我看你程序的思路就是DTS的实现过程。这就好比你自已去写了一个与DTS一样的东东。

还是用DTS比较好
zlxzm 2004-07-16
  • 打赏
  • 举报
回复
谢谢诸位!
我试过了,通过 SQL SERVER 中转后使用 DTS 可以实现,直接通过 DTS 也可以实现,通过用Oracle Migration Workbench 很麻烦,而且效果不佳。
由于数据量较大,一个客户表如果有2万条记录,大概要花8分钟左右,我总共要升级400多个老库,而且老库的数据还可能存在错误,导入时可能报错.很是伤脑筋啊。
还有一种办法,就是用程序实现,我想到的办法是:在程序中建立两个连接,一个连接源Access数据库,另一个连接Oracle数据库,将Access数据库的数据放入一个记录集中,然后用一个循环将这些记录一条一条插入Oracle数据库对应表中。这个方法不知大家有没有用过,我估计效率可能更低,不过,捕获错误的能力可以加强,及时避免因源数据的问题而导致的重复工作。这对于有400多个老数据库的升迁也许也是个好方法,大家给我再出出主意,先谢了。
zlxzm 2004-07-16
  • 打赏
  • 举报
回复
ADO这东西真不错, Oracle 的插入错误都能捕获到。看来这条路子可行。
zlxzm 2004-07-16
  • 打赏
  • 举报
回复
我用我上面提到的程序的方法试了一下(用VB6和ado),成功了,而且速度比 DTS 快多了,大概3分钟.不过,我不熟悉 Oracle 的 Insert 语句错误捕获问题,还需研究。
lubin59 2004-07-15
  • 打赏
  • 举报
回复
还是用dts方便
sdqhlyf 2004-07-15
  • 打赏
  • 举报
回复
用sqlserver中转一下较好!我以前也做过这方面的工作,不是太好转,一些Blob或是Clob类型的挺麻烦!
加载更多回复(4)

17,078

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧