西西軟件園多重安全檢測下載網(wǎng)站、值得信賴的軟件下載站!
軟件
軟件
文章
搜索

首頁西西教程數(shù)據(jù)庫教程 → 怎么通過SQL Server 2008 訪問Oracle 10g

怎么通過SQL Server 2008 訪問Oracle 10g

相關(guān)軟件相關(guān)文章發(fā)表評論 來源:本站整理時間:2010/9/7 22:06:33字體大小:A-A+

作者:佚名點(diǎn)擊:545次評論:0次標(biāo)簽: SQL Oracle

  • 類型:電子教程大。8.5M語言:中文 評分:8.3
  • 標(biāo)簽:
立即下載

通過SQL Server 2008  訪問Oracle 10g 的準(zhǔn)備工作

事先在需要訪問Oracle 數(shù)據(jù)庫的主機(jī)上完成以下工作:

1. 安裝SQL Server 數(shù)據(jù)庫:SQL Server 2008 R2 Express

2. 安裝Oracle 客戶端訪問程序:Oracle 10g Client

3. 配置Oracle 客戶端tnsnames.ora 文件,其中需要注意文件中的數(shù)據(jù)庫別名“ORADB”,該名稱在下文創(chuàng)建Linked Server 時將會使用到。

ORADB = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = HOSTIP)(PORT = 1521)) (CONNECT_DATA = (SID = DBNAME)) )

4. 確保主機(jī)可以通過SQLPlus 訪問遠(yuǎn)程Oracle 數(shù)據(jù)庫。

sqlplus

創(chuàng)建Linked Server

打開SQL Server Management Studio 進(jìn)入Server Objects 列表,右鍵Linked Servers,點(diǎn)擊“New Linked Server...”

new

在General 界面中填寫下面幾項(xiàng)內(nèi)容:

Linked server: 填寫Linked Server 名稱

Provider:選擇Microsoft OLE DB Provider for Oracle

Product name:填寫Oracle

Data source:填寫上面提到的數(shù)據(jù)庫別名ORADB

input

     點(diǎn)擊Security ,點(diǎn)選“Be made using this security context”,假設(shè)Oracle 數(shù)據(jù)庫有一個名稱為admin 的用戶ID,在“Remote login”中輸入訪問帳號,點(diǎn)擊“OK”結(jié)束創(chuàng)建。

account

完成后Linked Servers 中會看到剛創(chuàng)建的Oracle 數(shù)據(jù)庫鏈接。

Done

訪問Oracle

接下來就可以在SQL Server 端訪問Oracle 數(shù)據(jù)庫了,查詢語法如下:

SELECT * FROM LINKED_NAME..ACCOUNT_NAME.TABLE_NAME;

結(jié)合上面的實(shí)例,假如要查詢admin 用戶下jobs 表的內(nèi)容,則相應(yīng)SQL 語句應(yīng)為:

SELECT * FROM ORASVR..ADMIN.JOBS;

     使用上述方法進(jìn)行數(shù)據(jù)查詢時,若Oracle 表有NUMBER 列時會出現(xiàn)轉(zhuǎn)化錯誤,這時可以將NUMBER 類型轉(zhuǎn)化為字符串(也有將該列屬性修改成NUMBER(10),為NUMBER 列設(shè)定好位數(shù))?紤]到View 查詢等因素個人感覺還是轉(zhuǎn)為字符串的方式較為通用。

     當(dāng)然如果查詢的列過多,每個NUMBER 列都轉(zhuǎn)為VARCHAR 的話工作量也的確不小,這時最好的方法就是使用OPENQUERY 函數(shù):

SELECT * FROM OPENQUERY(LINKED_NAME,'SELECT * FROM TABLE_NAME');

按照OPENQUERY 的語法上面SQL 語句應(yīng)變?yōu)椋?/p>

SELECT * FROM OPENQUERY(ORASVR,'SELECT * FROM JOBS');

這樣我們就可以在SQL Server 端方便的訪問Oracle 數(shù)據(jù)庫,并做相應(yīng)的數(shù)據(jù)調(diào)整。

    相關(guān)評論

    閱讀本文后您有什么感想? 已有人給出評價!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過難過
    • 5 囧
    • 3 圍觀圍觀
    • 2 無聊無聊

    熱門評論

    最新評論

    發(fā)表評論 查看所有評論(0)

    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字?jǐn)?shù): 0/500 (您的評論需要經(jīng)過審核才能顯示)