SQLServer链接服务器至Oracle
1.???????? 我方服务器必须安装msdtc服务,并进行相应配置。 2.???????? 我方服务器必须安装oracle client,这个要对应中心站oracle版本的客户端。 3.???????? 我方服务器必须安装Oracle Services For Microsoft Transaction Server [版本] ?? Oracle Provider for OLE DB [版本] 这2个可以在Oracle官方网站下载 [http://www.oracle.com/technology/software/tech/windows/odpnet/index.html] 此文件为分布式事务必须的插件。 4.???????? Oracle给我们分配一个Oracle的用户名和密码,具有写入/读取表的权限。 5.???????? 在我方系统的SQLServer服务器上建立链接服务器,指向Oracle数据库,链接服务器访问接口必须为[Oracle Provider for OLE DB](否则无法启动分布式事务)。 1.???????? 在写存储过程向oracle数据库中 insert、delete、update的时候,一定要加上 SET XACT_ABORT ON 此为开启镶嵌事务标志,否则分布式事务会失败。 2.???????? 对于从oracle或sqlserver中select数据的时候没有必要加入事务范围内,会锁表浪费时间。 3.???????? 查询语句格式为: SELECT * FROM openquery(ORA_DBENSIS,'select ID from TEST_TRANS') 或者 SELECT * FROM ORA_DATABASE..TEST_USER.TEST_TRANS 用户名TEST_USER、表名TEST_TRANS必须大写 4.???????? 插入语句格式为: INSERT openquery(ORAENSIS,'select ID from TEST_TRANS where 1=0') values (1) 在SQL SERVER中访问ORACLE表的方法在SQL SERVER中,能否访问ORACLE表,进行查询操作呢?答案无疑是可以的,下面就为你介绍在SQL SERVER中访问ORACLE表的实现方法,供您参考。 一、配置 方法一:通过oracle的sql*net客户端与Oracle数据库直接相连 1、在SQL SERVER所在服务器上安装Oracle客户端,并配置好客户端,能用sqlplus SELECT * FROM ORCL..SMS.EMP 方法二:通过ODBC与Oracle数据库相连 1、在SQL SERVER所在服务器上安装Oracle客户端,能用sqlplus 二、关于查询中不能使用到索引的问题 在SQLSERVER中查询一个oracles上的表: 当使用链接服务器访问ORACLE表,查询oracle的表时,where子句中字段如果是number类型,则该 如果是char类型,则可以传到oracle服务器上,但是必须在创建链接服务器时一定要把选项"与排序规则兼容"选上,否则也不会传到oracle服务器上的; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |