管理及程式設計指南

設置 Oracle 語言環境

使用下列步驟,從 Net.Data 巨集存取 Oracle 資料庫:

  1. 確定 Oracle 適當元件已安裝且運作如下:
    1. 將 SQL*Net 安裝在已安裝 Net.Data 的機器上,若尚未安裝它的話。 詳細資訊,請參閱下列 URL:
      http://www.oracle.com/products/networking/html/stnd_sqlnet.html
      
    2. 驗證 Oracle tnsping 函數是否可使用您的 Web 使用的 同一安全授權。若要驗證,請以 Web 伺服器使用者 ID 登入,並輸入:
      tnsping oracle-instance-name
      

      其中 oracle-instance-name 是您的 Net.Data 巨集將存取的 Oracle 系統的名稱。

      如果是在系統權限下執行您的 Web 伺服器,則您可能無法在 Windows NT 上驗證 tnsping 函數。 若是如此,請跳過這個步驟。

    3. 驗證可用您的 Web 伺服器使用的同一安全授權來存取 Oracle 表格。 若要驗證,請使用 SQL*Plus 行指令工具輸入 SQL SELECT 陳述式,以具有您的 Web 伺服器的權限的 SQL SELECT 陳述式,來存取 Oracle 表格。例如:
      SELECT * FROM tablename
      

      如果是在系統權限下執行您的 Web 伺服器,則您可能無法在 Windows NT 上驗證表格存取。 若是如此,請跳過這個步驟。

    疑難排解:如果上述步驟失敗,請不要繼續執行。 如果任一步驟失敗,請檢查您的 Oracle 架構。

  2. 確定已在您的 Web 伺服器處理中設定了正確的 Oracle 環境變數。

    提示:您可能需要額外的行來放置其它 Oracle 環境變數, 取決於您計劃使用的 Oracle 機能,如國家語言支援及兩段式確定。 請參閱 Oracle 管理文件,以取得這些環境變數的詳細資訊。

  3. 測試從 Net.Data 連接到 Oracle 的情況。在您的 Net.Data 巨集中, 請在 LOGIN 及 PASSWORD 變數中指定適當的值。 當存取 Oracle 資料庫時,請不要定義 Net.Data DATABASE 變數。 下列是巨集中連接陳述式的範例:
    %DEFINE LOGIN=user_ID@remote-oracle-instance-name
    %DEFINE PASSWORD=password 
    

    區域 Oracle 範例:

    如果您僅存取區域 Oracle 範例,請不要指定 remote-oracle-instance 名稱, 作為登入使用者 ID 的一部份,範例如下:

    %DEFINE LOGIN=user_ID
    %DEFINE PASSWORD=password
    

    現場連線

    如果您使用「現場連線」,則您可以在「現場連線」架構檔中指定 LOGIN 及 PASSWORD, 但基於安全目的,不建議您使用它。例如:

    CLIETTE DTW_ORA:{
         MIN_PROCESS=1
         MAX_PROCESS=3
    EXEC_NAME=./dtwora8
    DATABASE=not_used
    LOGIN=userid@remote_oracle_instance_name
    PASSWORD=password
    }
    

    提示:不要對 Oracle 指定 DATABASE 變數。

  4. 執行 CGI shell script 來測試您的架構,以確保可從您的 Web 伺服器存取 Oracle 範例, 範例如下:
    #! /bin/sh
    echo "content-type; text/html
    echo
    echo "< html>< pre>"
    set
    echo "</pre><p>&nbsp;</p><pre>"
    tnsping oracle-instance-name
    echo
    

    另一種方式,您可以直接從 Net.Data 巨集執行 tnsping,範例如下:

    %DEFINE testora = %exec "tnsping oracle-instance-name"
    %HTML(report){
    < P>將以 tnsping 測試 Oracle 存取。
    <hr>
    $(testora)
    <hr>
    < P>Oracle 測試已完成。
    %}
    

    疑難排解:

    如果驗證步驟失敗,請驗證下列項目,檢查所有先前步驟是否已順利完成:

    如果驗證步驟仍然失敗,請聯絡「IBM 服務人員」。

範例:

在您完成了存取驗證步驟後,您可以用巨集中的函數來呼叫 Oracle 語言環境,範例如下:

%FUNCTION(DTW_ORA) STL1() {
insert into $(tablename) (int1,int2) values (111,NULL)
%}


[ 頁面頂端 | 前一頁 | 下一頁 | 目錄 | 索引 ]