高分求解!!!Oracle与SQL Server数据同步

williamxiao 2010-04-02 03:39:56
一个是Oracle(9i)数据库,另一个是SQL Server(2000)数据库,
两个数据库的表结构不相同,需要同步其中的部分数据,并且是将Oracle的部分数据同步到SQL Server数据库中。

设想了以下几种方法:
1.进行数据库快照,实现同步;
2.写应用程式读取Oracle日志,然后解析日志,再重新组装SQL语句,操作SQL Server数据库;
3.比对需要同步的数据,再进行更新等操作。

但是遇到以下问题:
方法1.只试过从SQL Server同步到Oracle,没做过从Oracle同步到SQL Server。??
方法2.不知道怎样用Java解析Oracle日志??
方法3.好像不太现实。

各位有什么好的办法来实现吗?

请尽量写得详细些,或者能引用其它可用的贴子。谢谢!~~
...全文
376 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
williamxiao 2010-04-09
  • 打赏
  • 举报
回复
好的,谢谢各位!
moon&sean 2010-04-08
  • 打赏
  • 举报
回复
楼主遇到的情况与SQL Server同步到Oracle是一样的。使用SSIS建一个工程,编辑一个数据导入的包,然后加入SQL SERVER代理做调度就可以了
williamxiao 2010-04-07
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 gosling 的回复:]
以下几种方式都可以:
1、使用SQL SERVER自带的同步程序
2、使用ORACLE自带的同步程序
3、使用SQL MOBLINK
4、ORACLE直接写SQL SERVER数据同步(SQL SERVER可通过ODBC与ORACLE直接连接)
5、自己开发一个同步程序(我现在就用的这种方式,可靠性最好)
[/Quote]
这位朋友开发的同步程序能够分享一下吗?是用什么语言开发的?谢谢!
gosling 2010-04-07
  • 打赏
  • 举报
回复
以下几种方式都可以:
1、使用SQL SERVER自带的同步程序
2、使用ORACLE自带的同步程序
3、使用SQL MOBLINK
4、ORACLE直接写SQL SERVER数据同步(SQL SERVER可通过ODBC与ORACLE直接连接)
5、自己开发一个同步程序(我现在就用的这种方式,可靠性最好)
ojuju10 2010-04-07
  • 打赏
  • 举报
回复
2000中就是DTS,2005中就是SSIS
williamxiao 2010-04-07
  • 打赏
  • 举报
回复
查看DTS的资料,好像只能同步相同表结构的数据。
我需要从数据库A(Oracle 9i)中取出两张表的部分字段数据同步到数据库B(SQL Server 2000)中的一张表中间,
如数据库A中有User表和User_ext表,User表和User_ext表有主外键关系进行关联,且为一对一关系。现在需要取出User表中的id(主键),name,gender与User_ext表中的addr,email,tel。一共六个字段的数据,同步到数据库B中的一张名为User的表,这张表含有id(主键),name,gender,addr,email,tel几个字段。有办法吗?
zgda1234 2010-04-06
  • 打赏
  • 举报
回复
DTS
iihero 2010-04-06
  • 打赏
  • 举报
回复
SSIS似乎只有在2005及以上版本才有。lz用的是2000,估计DTS也可用。
williamxiao 2010-04-06
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 vanjayhsu 的回复:]
建议你看SQL SERVER目录下帮助文档里面的教程部分,有SSIS的详细介绍与使用指南,你按教程做一遍之后,即可明白SSIS的操作和处理。
当你做好一个工程之后,只需要在SQL SERVER中新建一个代理作业,然后指向你做好的SSIS包,再配置调度计划(如每天3点执行)就可以了。
[/Quote]
请问是要使用DTS数据转换服务吗?SSIS没有用过,有资料吗?
vanjayhsu 2010-04-02
  • 打赏
  • 举报
回复
建议你看SQL SERVER目录下帮助文档里面的教程部分,有SSIS的详细介绍与使用指南,你按教程做一遍之后,即可明白SSIS的操作和处理。
当你做好一个工程之后,只需要在SQL SERVER中新建一个代理作业,然后指向你做好的SSIS包,再配置调度计划(如每天3点执行)就可以了。
williamxiao 2010-04-02
  • 打赏
  • 举报
回复
我需要实现按天同步。

能尽量详细点吗?谢谢~
vanjayhsu 2010-04-02
  • 打赏
  • 举报
回复
你的同步是需要实时同步还是按天同步还是按月同步。

其实这种情况,与SQL Server同步到Oracle是一样的。使用SSIS建一个工程,编辑一个数据导入的包,然后加入SQL SERVER代理做调度就可以了。不过这种方式无法实现实时更新。

17,086

社区成员

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

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