在CSDN中搜索一下吧,这样的问题太多了
解决方案 »
- 关于distinct+union all代替union
- 急救
- 有什么地方可以查ORACLE错误信息的
- 请教这个查询该怎么写
- ORACLE中的触发器和游标是在内存中吗?
- 急:ora-12699本机服务内部错误,愿呈上100分
- 在线等待!!如何取得数据库中某表的所有字段名!!
- 触发器触发的时候,调用外部一个java程序,有经验的GGJJ支个招?(在线等待!)
- Oracle9i安装问题!送100分!
- 关于查询的问题
- 我现在想查看一台远程主机(unix系统)的配置文件有个命令是什么记不清了 请高手帮忙
- 关于文章(oralce 连接另一个oralce ,oralce 连接 sqlserver)的问题----急
实现是不一样的。
在SQL SERVER里面叫做LINKED SERVER,通过ODBC实现与其它数据库的互联。
而ORACLE实现异构服务的技术叫做透明网关(Transparent Gateway)。目前ORACLE利用透明网关可以实现和SQL SERVER、SYBASE、DB2等多种数据库的互联。
Oracle透明网关软件在Oracle 8i时是需要花钱另买的,大约1万$;到Oracle 9i时是作为数据库的一个组件免费发布的。安装时在组件种选择即可。(默认是不安装的。)第一步:
安装透明网关for sql server的软件后,可以在$ORACLE_HOME下看到tg4msql目录,编辑$ORACLE_HOME/tg4msql/admin/inittg4msql.sql文件有一行:HS_FDS_CONNECT_INFO="SERVER=192.168.0.1;DATABASE=pubs"
其中:SERVER=192.168.0.1是SQL SERVER的服务名,后面的DATABASE不言而谕,是数据库名。
第二步:
修改 listener.ora
在SID_LIST中加入以下内容:
(SID_NAME = tg4msql) # SID自己命名
(ORACLE_HOME = c:)
(PROGRAM = tg4msql)
第三步:
在tnsnames.ora中填加
sql2k =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521)) )
(CONNECT_DATA = (SID = tg4msql) )
(HS=OK)
)
第四步:
现在你就可以SELECT * FROM TABNAME@sql2k 或
UPDATE TABNAME@sql2k SET ... WHERE ...注意:
ORACLE SERVER的初始化参数global_names设为false