1.下载轻量级的ODAC安装包
2.解压ODAC112030Xcopy_x64.zip(我解压到了C盘下):
3. 在命令行界面进入解压文件夹后运行“install.bat oledb c:\oracle odac”安装:
4. 在系统环境变量中,为Path添加“C:\oracle;C:\oracle\bin;”
(计算机属性-高级系统设置-高级-环境变量-系统环境变量-Path):
选中“环境变量”中“系统变量”中的“Path”,点击“编辑”按钮,
在最前面添加“C:\oracle;C:\oracle\bin;”
5.重启计算机。
做完以上操作后,打开本机SQL Server Management Studio,新建链接服务器时,
“访问接口”下拉框会出现“Oracle Provider for OLE DB”。
Part2.新建链接服务器:
- 打开本机SQL Server Management Studio连接到本机数据库;
- 展开“服务器对象”;
- 选择“链接服务器”-右键-“新建链接服务器”;
- 在“新建链接服务器”的窗口里,选择“常规”;
- 输入“链接服务器名称”(检验用英文字符名称);
- “服务器类型”选择“其他数据源”;
- “访问接口”选择“Oracle Provider for OLE DB”;
- “产品名称”输入“oracle”;
- “数据源”输入:(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.xxx.xxx)(PORT = 1521))(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = orcl)))
其中host是oracle数据库所在的服务器的ip;
10.在“安全性”界面,勾选“使用此安全上下文建立连接”,输入“远程登录”和“使用密码”(oracle的登录名和密码):
11.“服务器选项”的界面的设置如下图:
查询测试“链接服务器”是否成功创建,如下图:
sql server数据库使用链接服务器查询oracle数据库的语法:
SELECT * FROM OPENQUERY(SWAPDB,'select xxx from 表名')
无法创建链接服务器 "xxx" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 的实例。 (Microsoft SQL Server,错误: 7302)
出现这个错误,有两个最常见的两个原因
1.注册表
<1>按下WIN+R,打开“运行”窗口,输入“regedit”,回车
<2>在打开的注册表编辑器的左侧按如下路径依次展开:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.1\Providers
在Providers下面一般来说是看不到OraOLEDB.Oracle这一项的,于是新建这一项。
在Providers上面右键选择New -> Key,把新增加的项改名为“OraOLEDB.Oracle”
<3>为“OraOLEDB.Oracle”这个键新增一个DWORD Value,把名字改为“AllowInProcess”
<4>把“AllowInProcess”的值改为“00000001”
2.访问接口的设置
右键oracle接口,如下图:勾选”允许进程内“。
推荐优先使用第二种方法后再创建链接服务器。