SQL Server 访问Oracle数据库
SQL Server 2008R2,Oracle 11.2.0.4 ,需要通过SQL Server查询Oracle的数据(这里只测试查询,更新及建表没有测试)
实现方法: 通过在SQL Server上建立链接来访问Oracle。
首先,需要在SQL Server所在的服务器上安装Oracle Client,并配置tnsnames.ora .
TEST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.28)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = test)
)
)
然后创建链接,链接服务器对应的是链接名称,这里取名ORACLE。访问接口选择“Oracle Provider for OLE DB”,产品名称填写Oracle,数据源是test(注意,这里的test不是tnsnames.ora里面的service name,而是能够进行tnsping test的那个test)
安全选项,填写账号,也就是oracle账号。服务器选项里面,rpc,rpc out设置为true,我这里没有设置,也可以使用。
访问接口选项。选中允许进程内。
设置就完毕了 ,就可以进行访问了 。可以发现,oracle的sh.sales表的time_id返回的值,结果精度和Oracle相比还有有点不一样。
出现的问题,因为类型转换的问题,出现了类似于“链接服务器 "XXX" 的 OLE DB 访问接口 "XXX" 为列提供的元数据不一致,编译时为500,应为1000”之类的错误。原因是nvarchar(500)和varchar(500)的问题。修正后问题解决。
在oracle上查看sqlserver的会话
end
上一篇: Java打印条码,使用佳博条码打印机
下一篇: MySQL学习笔记二
推荐阅读
-
Oracle 低权限数据库账户得到 OS 访问权限 提权利用
-
C#如何实现对sql server数据库的增删改查
-
C#获取所有SQL Server数据库名称的方法
-
深入SQL Server 跨数据库查询的详解
-
SQL Server 数据库分离与附加(图文教程)
-
一个完整的SQL SERVER数据库全文索引的示例介绍
-
C#将图片存放到SQL SERVER数据库中的方法
-
在代码生成工具Database2Sharp中使用ODP.NET(Oracle.ManagedDataAccess.dll)访问Oracle数据库,实现免安装Oracle客户端,兼容32位64位Oracle驱动
-
sql server不存在 sql server拒绝访问第1/3页
-
在asp.net中操作sql server数据库的一些小技巧