Sql Server 2008 R2鏈接服務(wù)器Oracle數(shù)據(jù)庫(kù)
//來源:https://blog.csdn.net/weixin_43028012/article/details/81908020
項(xiàng)目需要對(duì)接其他平臺(tái)的數(shù)據(jù),并在網(wǎng)頁(yè)上進(jìn)行展示。
利用公司CMS框架,最簡(jiǎn)單的制作方式,就是在sql server 2008 r2數(shù)據(jù)庫(kù)中添加oracle的鏈接服務(wù)器。(不用寫一行代碼哦~)
操
作如下
確保網(wǎng)絡(luò)通暢
注:一定要確保數(shù)據(jù)庫(kù)服務(wù)器網(wǎng)絡(luò)環(huán)境是否連通
安裝Oracle Client
裝完之后,訪問接口選項(xiàng)中才會(huì)出現(xiàn)Oracle Provider for OLE DB選項(xiàng)

訪問接口設(shè)置


注:之前勾選了很多項(xiàng),寫sql查詢語(yǔ)句時(shí)報(bào)錯(cuò)(如下圖),又恢復(fù)只勾選“允許進(jìn)程內(nèi)”就好了,不清楚報(bào)錯(cuò)與這些選項(xiàng)有什么關(guān)聯(lián)。

新增鏈接服務(wù)器并配置



編寫sql語(yǔ)句
select * from LinkServerName..DBName.TableName
SELECT * FROM OPENQUERY(LinkServerName, 'SELECT distinct * FROM TableName')
當(dāng) 用,Provider=OraOLEDB.Oracle方式訪問ORACLE11g數(shù)據(jù)庫(kù)。出現(xiàn) 未在本地計(jì)算機(jī)注冊(cè)“OraOLEDB.Oracle”提供程序提示。解決方案如下:
客戶端環(huán)境:Win7 64 bit
安裝:Oracle - OraClient11g_home1(64bit)安裝在E:\
Oracle - OraClient11g_home2(32bit) 安裝在D:\
由于本地PLSQL Developer鏈接問題,所以安裝了2個(gè)版本的orcle客戶端
找到安裝目錄執(zhí)行:以我的安裝目錄為例:分別執(zhí)行2個(gè)版本
regsvr32 E:\app32\tm\product\11.2.0\client_1\BIN\OraOLEDB11.dll
--提示注冊(cè)成功
regsvr32 D:\app32\tm\product\11.2.0\client_1\BIN\OraOLEDB11.dll
--提示注冊(cè)成功
鏈接字符串測(cè)試:
Provider=OraOLEDB.Oracle;Data Source=orcl;User Id=test;Password=test
orcl:本地監(jiān)聽名
successful!
注:Oracle語(yǔ)句是區(qū)分大小寫的
我直接用公司CMS框架,在模版中寫SQL的時(shí)候也是區(qū)分大小寫,但是發(fā)現(xiàn)靜態(tài)生成報(bào)錯(cuò),靜態(tài)生成時(shí)把SQL默認(rèn)全部轉(zhuǎn)為小寫字母,所以就會(huì)出現(xiàn)“該表不存在”等SQL語(yǔ)句報(bào)錯(cuò)問題。
解決方法:
在自己的數(shù)據(jù)庫(kù)中創(chuàng)建View
優(yōu)點(diǎn):
1、Oracle數(shù)據(jù)字段為中文,可以as成英文。
2、業(yè)務(wù)邏輯梳理
3、解決CMS框架中會(huì)直接把SQL語(yǔ)句轉(zhuǎn)為小寫字母的問題。
直接Sql Server中使用鏈接服務(wù)器遠(yuǎn)程連接Oracle數(shù)據(jù)庫(kù)的弊端就是SQL語(yǔ)句執(zhí)行的真的好慢,但是CMS靜態(tài)生成可以暫時(shí)不考慮這個(gè)問題。哈哈哈哈哈哈哈哈~
————————————————
版權(quán)聲明:本文為CSDN博主「April小小」的原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/weixin_43028012/java/article/details/8190802

浙公網(wǎng)安備 33010602011771號(hào)