程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SyBase數據庫 >> SyBase綜合文章 >> Oracle通過ODBC透明網關連接Sybase

Oracle通過ODBC透明網關連接Sybase

編輯:SyBase綜合文章

我的機器上安裝了oracle服務端(Oracle 9i),機器名為:huanghua,另外一台機器上安裝了Sybase的服務器端(sbyase12.5),ip地址為:192.168.0.111,Sybase端口號:5000,我想在Oracle中直接建立dblink訪問Sybase中的數據,以下是我測試的步驟;
1、 安裝Sybase clIEnt端;l
2、 在dsEdit中添加服務,服務名為:Sybase,使用tcp連接,端口號:5000;

  3、 在控制面板\管理工具中打開“數據源(ODBC)”,選擇“系統DSN”,注意這裡不能選擇“用戶DSN”,點擊“添加”按鈕,選擇“Sybase system”,點擊“完成”,在general頁上輸入“odbc 的別名”,Sybase的服務名和數據庫的名稱;ds的name設為hsodbc,請一定要用這個名字,不要問為什麼,這麼用就行了;
 

4、 在oracle的安裝目錄下找到 hs\admin\目錄,打開inithsodbc.ora文件,一般Oracle9i中都有這個文件,設置參數:
# This is a sample agent init file that contains the HS parameters that are
# needed for an ODBC Agent. #
# HS init parameters HS_FDS_CONNECT_INFO = hsodbc
HS_FDS_TRACE_LEVEL = 0

# Environment variables required for the non-Oracle system #set <envvar>=<value>
     以上是文件的內容,其中hsodbc就是odbc連接Sybase的別名;
5、 在Oracle的安裝目錄下找到 network\admin \目錄,打開listener.ora文件,在文件中添加
 SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = E:\Oracle\ora92)
      (PROGRAM = extproc)     (SID_DESC =
      (GLOBAL_DBNAME = myserver)
      (ORACLE_HOME = E:\Oracle\ora92)
      (SID_NAME = myserver)    (SID_DESC =
      (SID_NAME = hsodbc)
      (ORACLE_HOME = E:\Oracle\ora92)
      (PROGRAM = hsodbc)   )
其中紅色的為你所添加的內容,SID_NAME和PROGRAM都設為hsodbc;

6、 打開tnsnames.ora文件在其中添加:
hsodbc  =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = huanghua)(PORT = 1521))     (CONNECT_DATA = (SID = hsodbc))
    (HS= OK)   )
其中huanghua是我的機器名;注意以上的=號後面的名稱前要留下一個空格,這個我也不知道是什麼原因;

7、 這裡重啟動一下你的機器;有資料說重啟動一下Oracle監聽器;
8、 啟動Oracle和監聽器;
9、 創建dblink,注意用戶名和密碼一定要加上”,因為Oracle是不分大小寫的,所有的小寫都會轉成大寫,而Sybase是區分大小寫的;
create database link HSODBC
    connect to “sa” identifIEd by “Sybase”
   using 'hsodbc';
10、 執行查詢語句 :select * from “ts”@hsodbc;這裡表名和字段如果是小寫的也要加上“;
11、 

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