程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> SQLserver鏈接服務器到Oracle

SQLserver鏈接服務器到Oracle

編輯:Oracle數據庫基礎
SQL Server 2005 Express 訪問 Oracle 10

  EXEC master.dbo.sp_addlinkedserver

   @server = N'TESTLINK',

   @srvproduct=N'Oracle',

   @provider=N'MSDAORA',

   @datasrc=N'TEST'

  GO

  這一句在 SQLServer 下創建一個數據庫鏈接。

  連接名為TESTLINK

  Oracle 數據源是 TEST

  要求在SQL Server 的機器上面,安裝有Oracle 的客戶端。

  那個Oracle 數據源,配置文件在

  E:\Oracle\product\10.2.0\clIEnt_1\NETWORK\ADMIN

  目錄下。

  內容為:

  # tnsnames.ora Network Configuration File:E:\Oracle\product\10.2.0\clIEnt_1\network\admin\tnsnames.ora

  # Generated by Oracle configuration tools.

  TEST =

   (DESCRIPTION =

   (ADDRESS_LIST =

   (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.210)(PORT = 1521))

   )

   (CONNECT_DATA =

   (SERVICE_NAME = ORCL)

   )

   )

  注: 本機只安裝了 SQL Server EXPRESS 與 Oracle 10 的客戶端。

  Oralce 10 服務器安裝在 另外一台機器上。

  EXEC

   master.dbo.sp_addlinkedsrvlogin

   @rmtsrvname = N'TEST',

   @locallogin = NULL ,

   @useself = N'False',

   @rmtuser = N'test',

   @rmtpassWord = N'test123'

  GO

  這一句是設置默認用什麼用戶名/密碼來訪問Oracle 數據庫。

  上面的例子是用戶名為test 密碼為 test123

  數據庫鏈接創建完畢後,可以嘗試查詢:

  這裡的TESTLINK..TEST.TEST_MAIN。

  第一個TESTLINK是數據庫鏈接名

  第二個TEST 是Oracle 那裡的Test 用戶的方案名

  TEST_MAIN 是Test 用戶下的一個表。

  1> select * from TESTLINK..TEST.TEST_MAIN;

  2> go

  ID VALUE

  --------------------------------------------------

   1 ONE

   2 TWO

   3 TWO

  (3 行受影響)

  注:假如創建鏈接完畢後,執行查詢的時候,提示MSDAORA 找不到Oracle 客戶端的話。如果本機安裝的是Oracle 9 / 10 。那麼有可能是權限的問題,需要額外在操作系統那裡設置一下。

  以本機為例子:

  需要選擇E:\Oracle\product\10.2.0\clIEnt_1這個目錄。

  鼠標右鍵,彈出菜單中,選擇“屬性”。

  然後在“安全”選項中,增加一個EveryOne 用戶。並設置完全控制。

  然後重新啟動計算機。

  重新啟動完畢後,應該就正常了。

SQLserver鏈接服務器到Oracle

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved