Oracle与SQL Server的互连

时间:2007-10-27 10:32:18  来源:站长资讯收集整理  作者:

  
  数据库链接已创建。
  
  SQL> select * from t@tosql2k;
  
  c
  
  abc
  
  aaa
  
  bbb
  
  cyx
  
  gototop
  
  ncn
  
  11111
  
  已选择7行。
  
  SQL> insert into t@tosql2k values('ncn.cn');
  
  已创建 1 行。
  
  SQL> commit;
  
  提交完成。
  
  SQL> select * from t@tosql2k;
  
  c
  
  abc
  
  aaa
  
  bbb
  
  cyx
  
  gototop
  
  ncn
  
  11111
  
  ncn.cn
  
  已选择8行。
  
  以上示例,oracle server和透明网关server都是在同一台机器上,像在开始说明的那样,我们同样可以在其他下面oracle server中通过透明网关来访问sql server的数据。下面是示例:
  
  现在这个oracle server上添加tnsname。
  
  hawk3$sqlplus cyx
  
  SQL*Plus: Release 8.1.7.0.0 - Production on Wed Jun 25 14:00:34 2003
  
  (c) Copyright 2000 Oracle Corporation. All rights reserved.
  
  Enter password:
  
  Connected to:
  
  Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production
  
  With the Partitioning option
  
  JServer Release 8.1.7.0.0 - Production
  
  SQL> create database link hawk3_sql2k connect to cyx identified by cyx
  
  2 using 'sql2k';
  
  Database link created.
  
  SQL> select * from t@hawk3_sql2k;
  
  c
  
  abc
  
  aaa
  
  bbb
  
  cyx
  
  gototop
  
  ncn
  
  11111
  
  ncn.cn
  
  8 rows selected.
  
  注:很多朋友问到关于透明网关的一些问题,在此加以说明如下:
  
  1、Oracle For SQL Server的透明网关在UNIX下无法实现,目前只支持WIN; 原因很简单,SQL Server本身不支持UNIX,所以Oracle也无法直接在UNIX下访问SQL Server。
  
  2、Oracle For其它数据库的透明网关,如SYBASE等有UNIX本版本的数据库在UNIX可以实现。
  
  3、Oracle透明网关软件在Oracle 8i时是需要花钱另买的,大约1万$;到Oracle 9i时是作为数据库的一个组件免费发布的。安装时在组件种选择即可。
  
  4、针对我们的实际应用,如果有需要实现Oracle 到SQL Server的互连,我们需要另外用一台WIN下的Oracle 9i来做透明网关服务器,其它UNIX下的Oracle通过这个透明网关来访问SQL Server。
  
  5、不同数据库间的数据处理需使用标准SQL来实现。
  
  6、各数据库中特殊的数据类型,需要在程序中实现转换,应尽量避免使用无法转换的数据类型。
  

上一篇:Oracle基本知识

文章评论

共有 位CH网友发表了评论 查看完整内容