惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
博客园 - 司徒正美
宝玉的分享
宝玉的分享
阮一峰的网络日志
阮一峰的网络日志
The Cloudflare Blog
月光博客
月光博客
博客园 - 【当耐特】
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 三生石上(FineUI控件)
博客园 - 聂微东
小众软件
小众软件
Hugging Face - Blog
Hugging Face - Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Apple Machine Learning Research
Apple Machine Learning Research
V
V2EX
Jina AI
Jina AI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
罗磊的独立博客
雷峰网
雷峰网
博客园 - 叶小钗
量子位
IT之家
IT之家

博客园 - ahdung

[转载备份]Transparent windows in WPF CorelDRAW的shell扩展ShellXP.dll导致资源管理器explorer.exe卡死/冻结/无响应/挂起 Windows开的热点手机能连上但上不了网 【手记】桌面变成英文desktop的解决办法 【手记】翻新显卡安装驱动程序 [SQLCLR]跑起unsafe程序集的前提备忘 【手记】让Fiddler捕获到SQLCLR中的网络请求 .Net程序连接SQL Server默认会话选项备查 【手记】Reflexil直接让方法返回true或false 【组件分享】自定义窗口标题菜单 DLL/OCX文件的注册与数据执行保护DEP 偶尔要用的git命令备忘 【手记】解决Graphics.DrawImage带ImageAttributes在XP报内存不足的问题 似乎是VS2017的一个BUG 【SQL】在数据库中发起http请求的小改进 【SQL】从待选项中随机选一个 【手记】解决Intel Management Engine Interface黄色感叹号 【手记】如果Idx/Sub字幕导不进MKVToolNix,看看是否这个原因 【手记】解决涉及office的程序报“Unable to cast COM object of type System._ComObject...”的问题
【SQL】用SSMS连接Oracle手记
ahdung · 2020-04-08 · via 博客园 - ahdung

情况:

  • A机上有SSMS 18.x,
  • B机上有SQL Server 2008 R2数据库,
  • C机上有Oracle Database 11.2.0.4.0数据库

我想在A机用ssms连C机的oracle,一番了解,普遍做法是装ODAC xcopy包,里面有oledb组件,然后就可以在sqlserver的链接服务器里添加oracle数据库。如图:

于是我开始在ssms所在电脑装odac,结果提供程序的下拉列表里死活不出现“Oracle Provider for OLE DB”,后来想想也许应该在sql server所在电脑装才对,果然,有了,但紧接着又是连不上的问题:

按关键字OraOLEDB.Oracle 7302搜,相同问题一堆,有说勾一下【允许进程内】的,有说把sqlserver服务的启动账户改为【LOCAL SERVICE】的,也有通过若干步骤修改一个叫【MSDAINITIALIZE】的dcom组件的权限的,我都试过了,sqlserver服务器也重启了无数次,odac版本也试过若干个,统统不能解决我的问题。绝望之下,我下了【Oracle Database 11g Release 2 Client (11.2.0.1.0) for Microsoft Windows (x64)】,只勾了里面的oledb(具体叫啥我懒得回看了)一个东西,终于连上了。

总结:

  • 一定要有个SQL Server。光ssms和oracle是建立不起连接的,本质上连接oracle的是sql sever,不是ssms本身。
  • oledb要装在sql server所在电脑上。我是装oracle客户端里的oledb才有用,odac里的没用,估计还是版本问题。

示例:

--注意用户和表名大小写敏感
--用T-SQL的语法
SELECT TOP 10 * from 链接服务器别名..用户.表名

--或者。此写法可以解决当xxx中有timestamp列时上面的写法会报错的问题,参考https://andyspecht.github.io/2017-10-03-linked-server-fail/
select * from openquery(链接服务器别名, 'select * from xxx'/*plsql*/)

-文本-

posted on 2020-04-08 14:43  ahdung  阅读(1668)  评论()    收藏  举报