数据库同步工具
sqlserver,Mysql数据同步软件

[oracle数据库实现表内容同步]Oracle与SQL Server如何实现表数据同步

购买事宜请联系QQ:1793040

展开所有

有时由于项目开发的需要,必须将SQLServer2005中的某些表同步到Oracle数据库,而其他系统才能读取这些数据。我们可以使用链接服务器和SQLAgent来实现不同数据库类型之间的数据同步。假设我们有一个合同管理系统(SQLServer2005),该系统的表contract和contract_project需要同步到MIS系统(Oracle9i)。然后,我们可以按照以下步骤来同步数据库。
1.在Oracle中建立相应的contract和contract_project表,我们需要确定哪些字段需要同步到Oracle表。
这里应该指出,Oracle的数据类型和SQLServer的数据类型是不同的,那么它们之间存在什么样的关系?我们可以在SQLServer下运行:
SELECT *
FROM msdb.dbo.MSdatatype_mappings

SELECT *
FROM msdb.dbo.sysdatatypemappings
以查看SQLServer对应关系与其他数据库系统的数据类型。第一个SQL语句查看SQL与Oracle的类型对应关系,而第二个表更详细地显示每个数据库系统的类型对应关系。根据第一个表和SQLServer中的字段类型,我们可以构建Oracle表。

SQLServer和Oracle之间的对应关系

2.建立链接服务器。我们将Oracle系统作为SQLServer的链接服务器添加到SQLServer。
有关详细信息,请参阅我以前的文章http://www.cnblogs.com/studyzy/archive/2006/12/08/690307.html
3.使用SQL语句通过链接服务器将SQLServer数据写入Oracle中
例如,我们建立了链接服务器MIS,Oracle在MIS用户下建立了表contract_project,那么我们的SQL语句是:
从MIS..MIS.CONTRACT_PROJECT中删除
–Oracle表中的空数据
插入MIS..MIS.CONTRACT_PROJECT中-将数据从SQLServer写入Oracle
SELECT contract_id,project_code,actual_money
FROM contract_project

如果报告成功,则我们的数据已写入Oracle使用
SELECT *
FROM MIS..MIS.CONTRACT_PROJECT
检查Oracle数据库中是否已经有数据。
4.建立SQLAgent,将上述同步的SQL语句作为执行语句,然后每天定期对其进行两次同步。
这样我们的同步就完成了。
这里需要注意的是MIS..MIS.CONTRACT_PROJECT必须在这里大写。如果为小写,则同步将失败。

展开所有

我们有一个使用treeSoft实现数据同步的客户。每个项目都有不同的库和表,商业软件更加专业和灵活。

展开所有

可以通过设置透明网关来完成

未经允许不得转载:数据库同步软件|Mysql数据同步软件|sqlserver数据库同步工具|异构同步 » [oracle数据库实现表内容同步]Oracle与SQL Server如何实现表数据同步

分享到:更多 ()

syncnavigator 8.6.2 企业版

联系我们联系我们