环境介绍
Sqlserver :2008版本
Oracle:10g
Sqlserver配置
1. 要安装Sql server数据库
2. 要有Oracle客户端
3. 配置tnsnames.ora文件(db_1\NETWORK\ADMIN目录下)
mytest=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = *.*.*.22)(PORT = 1521))
(LOAD_BALANCE = yes)
(FAILOVER=ON)
)
(CONNECT_DATA =
(FAILOVER_MODE=(TYPE=select)(METHOD=basic))
(SERVER = DEDICATED)
(SERVICE_NAME = mysid) //sid
)
)
4. 测试tns是否配置成功
看到以下信息就知道配置成功了:
5. 创建链接服务器
打开Sqlserver界面管理器,->服务器对象-> 链接服务器,右键新建一个链接服务器
常规属性配置:
安全性配置:
6. 测试访问Oracle
select * from DEMO..USERNAME.TABLENAME; (注意红色要大写,若查询某个字段要用大写。链接服务器后两点)
或者用以下方式查询
select * from openquery(DEMO,'SELECT * FROM USERNAME.TABLENAME')
说明:DEMO..USERNAME.TABLENAME = 链接服务器..用户名.表名
这样配置好后,就可以在Sqlserver上直接对Oracle的表进行增删改查了。
常见错误
1. 无法从表 ""JIFA_BPAF"."DEMO_ITEM"" 删除数据。出现可恢复的、特定于提供程序的错误,如 RPC 失败。
问题分析:权限不足。在创建链接服务器的第二步安全性设置,用于连接Oracle的用户没有删除Oracle数据库下JIFA_BPAF该用户的DEMO_ITEM表的权限
问题解决:JIFA_BPAF用户下的DEMO_ITEM表删除权限授权给指定用户。
grant delete on demo_item to user;
或者再创建新的链接服务器,用该用户登陆连接即可
2. 链接服务器 "WEBESTAT" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 返回了 "NON-CLUSTERED and NOT INTEGRATED" 索引 "PK_RESOURCEID",其中有不正确的书签序号 0。
问题分析:Oracle的table表建立了一个索引“PK_RESOURCEID”,然后Sqlserver访问Oracle时用了自身的地址做为访问Oracle的索引路径。
问题解决: 服务器对象->链接服务器->访问接口->OraOLEDB.Oracle
分享到:
相关推荐
SQL SERVER 连接 Oracle 数据库几种方法 在实际开发中,我们经常需要在 SQL Server 中连接 Oracle 数据库,以便实现数据交换和集成。那么,如何在 SQL Server 中连接 Oracle 数据库呢?下面我们将介绍几种常见的...
SqlServer2008通过Oracle provider for OLEDB访问远程Oracle数据库 包括链接服务器环境安装、链接服务器创建、远程建表、修改表,增删改查数据,创建、执行带参与无参存储过程的方法等,资料为作者参考网络资料整理...
### SQL Server 2012 连接 Oracle 数据库操作说明 #### 一、概述 在实际工作中,经常需要在不同的数据库系统之间进行数据交互。本文档将详细介绍如何使用 SQL Server 2012 实现与 Oracle 数据库的连接,并进行数据...
完成上述配置后,下一步是在Oracle数据库中创建数据库链接(DATABASE LINK),以实现从Oracle数据库直接访问SQL Server数据库的功能。 1. **创建公共数据库链接**:使用以下SQL命令创建公共数据库链接ET2000: ```...
最后,本文档中提到的OLE DB技术,Microsoft SQL Server访问Oracle数据库的方法,以及ODAC(Oracle Data Access Components)的安装和配置,对数据库管理员、开发者和企业IT支持人员来说,提供了专业指导和实践参考...
本篇文章将详细讲解如何配置SQL Server 2000以便访问Oracle数据库,实现数据的共享和同步。 首先,我们需要理解SQL Server 2000访问Oracle数据库的基本原理。SQL Server 2000提供了“开放数据库连接”(ODBC)和...
Oracle数据库的ODBC驱动,又称为Oracle ODBC Driver,允许用户在非Oracle环境中通过ODBC接口与Oracle数据库进行通信。这个驱动提供了高效、稳定的数据访问,并且支持PL/SQL和Oracle特定的功能。对于Java开发者,可以...
注意:在使用 SQL Server 访问 Oracle 数据库时,如果 Oracle 表有 NUMBER 列时会出现转化错误,可以将 NUMBER 类型转化为字符串,也可以将该列属性修改成 NUMBER(10),为 NUMBER 列设定好位数。 使用 OPENQUERY ...
本主题将深入探讨如何将数据从SQL Server导入到Oracle数据库,这涉及到多个步骤和技术。以下是对这个过程的详细解析: 首先,理解SQL Server和Oracle是两种不同的关系型数据库管理系统(RDBMS)。SQL Server由微软...
标题与描述均指向了一个具体的技术操作过程:“SQLSERVER导入ORACLE数据库”。这涉及到跨数据库系统的数据迁移,是一项在企业级数据库管理中常见的需求,尤其是在不同的技术栈或业务整合时。以下将深入解析这一过程...
为了实现Oracle数据库与SQLServer数据库之间的数据交换,可以通过多种方式实现连接,其中一种较为简便的方法是利用Oracle提供的ODBC(Open Database Connectivity)机制来建立DBLink。这种方式相较于使用透明网关...
它为Oracle数据库提供了一个统一的接口,使得开发人员能够像处理Oracle数据库一样处理其他类型的数据源。在Oracle 9i版本中,透明网关是作为数据库安装的一部分提供的。然而,在Oracle 10g中,透明网关被独立出来,...
MySQL、SQL Server和Oracle是三大主流的关系型数据库管理系统(RDBMS),在各种规模的企业和项目中广泛应用。这些数据库系统提供了不同的特性和功能,以满足不同用户的需求。本压缩包包含这三个数据库系统的Java驱动...
在 SQL Server 中访问 Oracle 数据库返回 1 行数据的问题,通常涉及到多方面的因素。通过对 ODBC 驱动程序的检查、查询语句的修正以及对 Oracle 数据源的审查,大多数情况下都能够找到合适的解决方案。此外,良好的...
在 sqlserver 服务器上解压 ODAC1120320Xcopy_x64.zip,然后运行 cmd,找到解压目录;如:install.bat all {目标路径:也就是最后要被安装的目录} odac。然后将其加入到系统环境变量中。 配置数据库监听 配置...
在本场景中,我们探讨的是如何在Oracle 19C RAC环境中通过Oracle数据库网关(Gateway)连接到SQL Server 2012数据库。Oracle Gateway使得不同数据库系统间的数据交互成为可能,实现异构数据库间的透明访问。 首先,...
首先,Oracle Provider for OLE DB是一种数据提供程序,它允许SQL Server或其他支持OLE DB的应用程序访问Oracle数据库。这个驱动程序是Oracle客户端的一部分,它提供了对Oracle数据源的全面访问,包括数据查询、更新...
oracle通过ODBC建立dblink访问SqlServer数据库配置