4.3 驅動程式參數

下表概述的是所有驅動程式層級參數及其內容:

Table 4-4 驅動程式參數和內容

顯示名稱

標籤名稱

範例值

預設值

必要

協力廠商 JDBC 驅動程式類別名稱

jdbc-class

oracle.jdbc.driver.OracleDriver

(無)

時間語法

time-syntax

1 (整數)

1 (整數)

同步化過濾器

sync-filter

schema (包含於綱要成員資格)

(無)

綱要名稱

sync-schema

indirect

(無)

1

包含過濾器運算式

include-table-filter

IDM_.*

(無)

排除過濾器運算式

exclude-table-filter

BIN\$.{22}==\$0

(無)

表格/檢視窗名稱

sync-tables

usr

(無)

1

連接啟始化陳述式

connection-init

USE idm

(無)

使用最少的連接?

use-single-connection

0 (否)

(動態3)

連接內容

use-single-connection

USER={$username}; PASSWORD={$password}

(動態3)

狀態目錄

state-dir

. (目前目錄)

. (目前目錄)

JDBC 驅動程式描述元檔名

jdbc-driver-descriptor

ora_client_thin.xml

(無)

資料庫描述元檔名

database-descriptor

ora_10g.xml

(無)

使用手動異動?

use-manual-transactions

1 (是)

(動態2)

異動隔離層級

transaction-isolation-level

read committed

(動態3)

重複使用陳述式?

reuse-statements

1 (重複使用)

(動態3)

傳回的結果集數目

handle-stmt-results

one

(動態3)

啟用陳述式層級鎖定?

enable-locking

1 (是)

0 (否)

鎖定陳述式產生器類別

lock-generator-class

com.novell.nds.dirxml.driver.jdbc.db.lock.OraLockGenerator

(動態3)

啟用參考屬性支援?

enable-refs

1 (是)

1 (是)

啟用中繼識別碼支援?

enable-meta-identifiers

1 (是)

1 (是)

強制使用者名稱大小寫

force-username-case

upper (大寫)

(無)

左外部結合運算子

left-outer-join-operator

(+)

(動態3)

取回最少中繼資料

minimal-metadata

0 (否)

(動態3)

函數傳回方法

function-return-method

result set

(動態3)

支援中繼資料取回中的綱要?

supports-schemas-in-metadata-retrieval

1 (是)

(動態3)

欄名稱排序方式

column-position-comparator

com.novell.nds.dirxml.driver.jdbc.util.config.comp.StringByteComparator (十六進位值)

(動態3)

1 如果「同步化過濾器」參數不存在,則其中一個互斥參數必須存在。 請參閱同步化過濾器2 此預設值會在執行時期以動態的方式從描述元檔案和資料庫中繼資料衍生。 3 此預設值會在執行時期以動態的方式從描述元檔案衍生。

驅動程式參數歸屬於下列子類別:

4.3.1 未分類的參數

協力廠商 JDBC 驅動程式類別名稱

此參數是協力廠商 JDBC 驅動程式的完整 Java 類別名稱。

下表列出此參數的內容:

Table 4-5 協力廠商 JDBC 驅動程式類別名稱: 內容

內容

標籤名稱

jdbc-class

必要?

區分大小寫?

範例值

oracle.jdbc.driver.OracleDriver

預設值

(無)

如需受支援的協力廠商 JDBC 驅動程式類別名稱的清單,請參閱JDBC 驅動程式類別名稱

時間語法

「時間語法」參數可指定驅動程式傳回之時間相關資料類型的格式。 該格式可以是下列任何選項:

格式: 帶正負號的整數。 可將資料庫「時間」、「日期」和「時戳」值做為帶正負號的 32 位元整數傳回,並將其映射至類型為「時間」或「時戳」的 eDirectory™ 屬性。

eDirectory 的「時間」和「時戳」語法由不帶正負號的 32 位元整數組成,表示自 1970 年 1 月 1 日中午 12 點 (UTC) 開始經過的整秒數。 此資料類型的範圍上限大約是 136 年。 當解譯為不帶正負號的整數時 (如最初預期一樣),這些語法便能將範圍在 1970 年至 2106 年之間的日期和時間表示到秒。而當解譯為帶正負號的整數時,這些語法便能將範圍在 1901 年至 2038 年之間的日期和時間表示到秒。

此選項為預設值。 它具有兩個問題:

  • Identity Vault 的「時間」和「時戳」語法所表示的日期範圍無法大於資料庫「日期」或「時戳」語法所表示的日期範圍。
  • Identity Vault「時間」和「時戳」語法精確到秒。 資料庫「時戳」語法經常精確到毫微秒 (十億分之一秒)。

第二和第三個選項可以克服這兩項限制。

格式:規範字串。 可將資料庫「時間」、「日期」和「時戳」值做為規範字串傳回,並將其映射至類型為「數值字串」的屬性。

下表顯示的是抽象資料庫資料類型及其對應的規範字串表示:

Table 4-6 資料庫類型和規範字串表示

JDBC 資料類型

規範字串格式1

java.sql.Time

HHMMSS

java.sql.Date

CCYYMMDD

java.sql.Timestamp

CCYYMMDDHHMMSSNNNNNNNNN

1 C = 世紀、Y = 年、M = 月、 D = 天、H = 小時、M= 分鐘、S = 秒、N = 毫微秒

這些長度固定的格式在任何平台上的任何地區設定中都會按時間順序排列。 即使毫微秒的精度會依資料庫而不同,「時戳」的長度也不會發生變化。

格式:Java 字串表示。 可如透過方法 toString():java.lang.String 傳回一樣,以「Java 字串」表示傳回資料庫「時間」、「日期」和「時戳」值,並將其映射至類型為「大小寫忽略」/「大小寫相符字串」的屬性。

下表顯示的是抽象資料庫資料類型及其對應的「Java 字串」表示:

Table 4-7 資料庫類型和 Java 字串格式

JDBC 資料類型

Java 字串格式1

java.sql.Time

hh:mm:ss

java.sql.Date

yyyy-mm-dd

java.sql.Timestamp

yyyy-mm-dd hh:mm:ss.fffffffff

1 y= 年、m= 月、d= 天、h= 小時、m= 分鐘、s= 秒、f= 毫微秒

這些長度固定的格式在任何平台上的任何地區設定中都會按時間順序排列。 毫微秒的精度會依資料庫而不同,因此「時戳」長度也會依資料庫而不同。

下表列出「時間語法」參數的內容:

Table 4-8 時間語法:內容

內容

標籤名稱

time-syntax

必要?

no

預設值

1 (整數)

正確的值

1 (整數) 2 (規範字串) 3 (java 字串)

與綱要相依?

True

狀態目錄

「狀態目錄」參數可指定驅動程式例項應儲存狀態資料的位置。 狀態資料目前用於無觸發發行。 請參閱無觸發發行參數。 未來可能會使用狀態資料儲存其他狀態資訊。

每個驅動程式例項都具有兩個狀態檔案。 狀態檔名是遵循 jdbc_驅動程式例項 GUID.db 和 jdbc_驅動程式例項 GUID.lg 的格式。 例如,jdbc_bd2a3dd5-d571-4171-a195-28869577b87e.db 和 jdbc_bd2a3dd5-d571-4171-a195-28869577b87e.lg 都是狀態檔名。 如果您需要手動識別並刪除驅動程式例項的狀態檔案,啟動時就會追蹤每個驅動程式例項的 GUID。 每次啟動具有相同狀態目錄的驅動程式例項時,都會刪除目前狀態目錄中的 defunct 狀態檔案 (那些屬於刪除之驅動程式的檔案)。

下表列出此參數的內容:

Table 4-9 狀態目錄:內容

內容

標籤名稱

state-dir

必要?

no

區分大小寫?

platform-dependent

範例值

c:\novell\nds\DIBFiles

預設值

. (目前目錄)

4.3.2 資料庫範圍設定參數

同步化過濾器

「同步化過濾器」參數可決定哪些資料庫物件 (例如表格和檢視窗) 是同步化綱要的成員 (在執行時期驅動程式可看到的表格/檢視窗集)。 新增此參數之後,驅動程式現在可以兩種模式執行: 可識別綱要或不可識別綱要。

不可識別綱要模式。 當「同步化過濾器」參數存在,並設為 empty (排除所有表格/檢視窗) 時,驅動程式為不可識別綱要。 它在啟動時不會取回表格/檢視窗中繼資料, 因此無需任何中繼資料方法。 請參閱Section D.0, java.sql.DatabaseMetaData 方法

當為不可識別綱要時,同步化綱要可以為 empty。 「綱要名稱」和「同步化表格/檢視窗」參數都會完全忽略。 兩者皆不是必要的, 可以存在或不存在,具有值或不具有值。 請參閱綱要名稱表格/檢視窗名稱

在不可識別綱要模式中,驅動程式會扮演內嵌式 SQL 的傳遞代辦。 在此狀態中,標準 XDS 事件 (例如,「新增」、「修改」和「刪除」) 會忽略。 請參閱在 XDS 事件中內嵌 SQL 陳述式。 同時,觸發或無觸發的發行會不再有效。

可識別綱要模式。 當「同步化過濾器」參數不存在,或設為 empty (排除所有表格/檢視窗) 以外的值時,驅動程式為可識別綱要。 它會取回有限數量之表格/檢視窗上的表格/檢視窗中繼資料,以便於資料同步化。 您可以快取單一資料庫使用者 (包含於綱要成員資格) 擁有之所有表格/檢視窗上的中繼資料,或快取表格/檢視窗名稱 (包含於表格/檢視窗名稱) 明確清單上的中繼資料。 當為可識別綱要時,驅動程式會在啟動時取回資料庫表格/檢視窗中繼資料。 如需必要中繼資料方法的清單,請參閱Section D.0, java.sql.DatabaseMetaData 方法

當為可識別綱要時,參數「綱要名稱」或「表格/檢視窗名稱」必須存在且具有值。 因為這兩個參數互斥,所以只有一個參數可以具有值。 請參閱綱要名稱表格/檢視窗名稱

下表列出需要驅動程式為可識別綱要的參數。 當驅動程式為不可識別綱要時,這些參數對驅動程式行為便不會有任何影響。

Table 4-10 與綱要相依參數

參數

鎖定陳述式產生器類別

啟用參考屬性支援?

啟用中繼識別碼支援?

左外部結合運算子

取回最少中繼資料

支援中繼資料取回中的綱要?

欄名稱排序方式

停用陳述式層級鎖定

檢查更新計數?

插入時新增預設值?

產生/取回方法 (全域表格)

取回時機 (全域表格)

取回時機

停用發行者?

停用陳述式層級鎖定?

發行模式

啟用未來事件處理?

事件記錄表格名稱

刪除已處理的列?

允許迴路?

啟動選項

輪詢間隔 (以秒為單位)

每日發行時間

輪詢後陳述式

批次大小

下表列出此參數的內容:

Table 4-11 同步化過濾器:內容

內容

標籤名稱

sync-filter

必要?

no

區分大小寫?

no

範例值

indirect

正確的值

empty (排除所有表格/檢視窗) schema (包含於綱要成員資格) list (包含於表格/檢視窗名稱)

預設值:

(無)

綱要名稱

「綱要名稱」參數識別所同步化的資料庫綱要。 資料庫綱要與所同步化之表格或檢視窗的擁有者名稱類似。 例如,若要同步化歸屬於資料庫使用者 idmusrgrp 兩個表格,您需要輸入idm 做為此參數的值。

在使用此參數而不是「表格/檢視窗名稱」時,驅動程式會隱含地使資料庫物件的名稱符合綱要。 因此,除非參考預存程序、函數或表格名稱的參數位於此處指定之綱要以外的綱要中,否則它們無需符合綱要。 特別是「方法和時機 (本地表格)」和「事件記錄表格名稱」會受到影響。 請參閱表格/檢視窗名稱 方法和時機 (本地表格)事件記錄表格名稱

下表列出此參數的內容:

Table 4-12 綱要名稱:內容

內容

標籤名稱

sync-schema

必要?

yes1

區分大小寫?

請參閱未分隔的識別碼區分大小寫

範例值

indirect

預設值:

(無)

1 在沒有「同步化過濾器」參數的情況下使用「綱要名稱」參數時,「表格/檢視窗名稱」參數必須保留為 empty 或從組態中省略。 請參閱同步化過濾器表格/檢視窗名稱

IMPORTANT:使用無觸發發行時,變更「綱要名稱」參數的值會強制重新同步化所有物件。

包含過濾器運算式

僅當使用「綱要名稱」參數時,才可操作「包含過濾器運算式」參數。 請參閱綱要名稱

下表列出此參數的內容:

Table 4-13 包含過濾器運算式:內容

內容

標籤名稱

include-table-filter

必要?

no

區分大小寫?

yes

範例值

idm_*. (以 “idm_” 開頭的所有表格/檢視窗名稱)

預設值

(無)

正確的值

(任何正確的 Java 一般運算式)

排除過濾器運算式

僅當使用「綱要名稱」參數時,此參數才會運作。 請參閱綱要名稱

下表列出此參數的內容:

Table 4-14 排除過濾器運算式:內容

內容

標籤名稱

exclude-table-filter

必要?

no

區分大小寫?

yes

範例值

bin*. (以 “bin” 開頭的所有表格/檢視窗名稱)

預設值

(無)

正確的值

(任何正確的 Java 一般運算式)

表格/檢視窗名稱

「表格/檢視窗名稱」參數可讓您藉由列出要同步化之邏輯資料庫類別的名稱,來建立邏輯資料庫綱要。 邏輯資料庫類別名稱是父表格和檢視窗的名稱。 列出子表格名稱是錯誤的。

此參數對於同步化不支援綱要概念的資料庫 (例如 MySQL),或當資料庫綱要包含大量表格或檢視窗 (但其中只有幾個相關) 時,特別有用。 減少由驅動程式快取之表格/檢視窗定義的數目可以縮短啟動時間,以及減少執行時期記憶體使用。

使用此參數而非「綱要名稱」時,您可能需要使參考預存程序、函數或表格名稱的其他參數符合綱要。 特別是「方法和時機 (本地表格)」和「事件記錄表格名稱」參數會受到影響。 請參閱綱要名稱方法和時機 (本地表格)事件記錄表格名稱

下表列出此參數的內容:

Table 4-15 表格/檢視窗名稱:內容

內容

標籤名稱

sync-tables

必要?

yes1

區分大小寫?

請參閱未分隔的識別碼區分大小寫

分隔符

分號、空白字元、逗號

範例值

indirect.usr; indirect.grp

預設值

(無)

1 在沒有「同步化過濾器」參數的情況下使用此參數時,「綱要名稱」參數必須保留為 empty 或從組態中省略。 請參閱同步化過濾器綱要名稱

4.3.3 連接性參數

使用最少的連接?

使用最少的連接? 參數可指定驅動程式是否應使用兩個而非三個資料庫連接。

在預設狀態下,驅動程式會使用三個連接: 一個用於訂閱,而另兩個用於發行。 「訂閱者」通道會使用其兩個連接中的其中一個來查詢事件,使用另一個來協助執行查詢回覆操作。

當此參數設為布林值 True 時,所需的資料庫連接數目會減少為兩個。 其中一個連接會在「訂閱者」和「發行者」通道之間共用, 並用於處理訂閱和發行查詢回覆事件。 另一個連接則用於查詢發行事件。

在先前版本中,驅動程式可以藉由使用單一連接來支援雙向同步化。 發行演算法已經過重新設計,可用於增進效能、使其能支援未來事件的處理,並以需要額外一個連接來換取克服先前版本的限制。

Table 4-16 使用最少的連接?:內容

內容

標籤名稱

use-single-connection

必要?

no

預設值

(動態1)

正確的值

1、yes、true (是) 0、no、false (否)

與綱要相依

False

1 此預設值會在執行時期以動態的方式自描述元檔案衍生。 否則,預設值為布林值 False。

NOTE:將此參數設為布林值 True 會降低效能。

連接啟始化陳述式

「連接啟始化陳述式」參數可指定連接至目標資料庫之後應立即執行的 SQL 陳述式 (如果有的話)。 連接啟始化陳述式對於變更資料庫網路位置和設定會期內容而言很管用。 每當驅動程式 (不考慮通道) 連接或重新連接至目標資料庫時,都會執行這些陳述式。

下表列出此參數的內容:

Table 4-17 連接啟始化陳述式:內容

內容

標籤名稱

connection-init

必要?

no

區分大小寫?

請參閱未分隔的識別碼區分大小寫

分隔符

分號

範例值

USE idm; SET CHAINED OFF

預設值

(無)

與綱要相依

False

連接內容

「連接內容」參數可指定驗證內容。 此參數對於指定無法透過在「驗證網路位置」參數中指定之 JDBC URL 設定的內容而言很管用。 請參閱驗證網路位置

此參數的主要目的是針對協力廠商 JDBC 驅動程式啟用加密傳輸。 如需相關連接內容的清單,請參閱Sybase Adaptive Server Enterprise JConnect JDBC 驅動程式Oracle Thin Client JDBC 驅動程式

連接內容會指定為鍵值配對。 鍵會指定為 “=” 字元左邊的值。 值是 “=” 字元右邊的值。 您可以指定多個鍵值配對,但是必須以 “;” 字元分隔每個配對。

當您使用「連接內容」參數時,驗證資訊便可透過在「驗證網路位置」參數或在此處指定的 JDBC URL 傳遞。 請參閱驗證網路位置

如果指定為連接內容,值記號便可做為在「驗證 ID」參數中指定的資料庫使用者名稱預留位置,以及在「應用程式密碼」參數中指定的密碼預留位置使用。 請參閱驗證 ID應用程式密碼。 對於使用者名稱,記號是 {$username}。對於密碼,記號是 {$password}

下表列出此參數的內容:

Table 4-18 連接內容: 內容

內容

標籤名稱

connection-properties

必要?

no

區分大小寫?

third-party JDBC driver-dependent

分隔符

分號 (;)

範例值

USER={$username}; PASSWORD={$password}; SYBSOCKET_FACTORY=DEFAULT

預設值

(無)

與綱要相依

False

4.3.4 相容性參數

JDBC 驅動程式描述元檔名

「JDBC 驅動程式描述元檔名」參數可指定要使用的協力廠商 JDBC 描述元檔案。 描述元檔名不能以底線字元 (例如,_mysql_jdriver.xml) 為字首,因為此類檔名是保留的。 將描述元檔案置於以區分大小寫之 “jdbc” 為字首的 jar 檔案 (例如 JDBCCustomConfig.jar) 和 jar 檔案的 com/novell/nds/dirxml/driver/jdbc/db/descriptor/driver 目錄中。

下表列出此參數的內容:

Table 4-19 JDBC 驅動程式描述元檔名:內容

內容

標籤名稱

jdbc-driver-descriptor

必要?

no

區分大小寫?

platform-dependent

範例值

my_custom_jdbc_driver_descriptor.xml

預設值

(無)

與綱要相依

False

資料庫描述元檔名

「資料庫描述元檔名」參數可指定要使用的資料庫描述元檔案。 請勿在「描述元」檔名的字首中使用底線字元 (例如,_mysql.xml)。 此類名稱是保留的。 將「描述元」檔案置於以區分大小寫之 “jdbc” 為字首的 jar 檔案 (例如 JDBCCustomConfig.jar)。 同時,將「描述元」檔案置於 jar 檔案的 com/novell/nds/dirxml/driver/jdbc/db/descriptor/db 目錄。

下表列出此參數的內容:

Table 4-20 資料庫描述元檔名:內容

內容

標籤名稱

jdbc-driver-descriptor

必要?

no

區分大小寫?

platform-dependent

範例值

my_custom_database_descriptor.xml

預設值

(無)

與綱要相依

False

使用手動異動?

「使用手動異動?」參數可指定是否使用手動或使用者定義的異動。

此參數主要用於啟用與不支援異動之 MySQL MyISAM 表格類型之間的互通。

當設為布林值 True 時,驅動程式使用手動異動。 當設為布林值 False 時,由驅動程式執行的每個陳述式都會以自發的方式執行 (自動)。

下表列出此參數的內容:

Table 4-21 使用手動異動?:內容

內容

標籤名稱

use-manual-transactions

必要?

no

區分大小寫?

預設值

(動態1)

正確的值

1、yes、true (是) 0、no、false (否)

與綱要相依

False

1此預設值會在執行時期以動態的方式自描述元檔案和資料庫中繼資料衍生。

NOTE:若要確保資料完整性,請盡可能隨時將此參數設為布林值 True。

異動隔離層級

「異動隔離層級」參數可針對驅動程式所使用的連接設定異動隔離層級。 有下列 6 個值存在:

  • unsupported
  • none
  • read uncommitted
  • read committed
  • repeatable read
  • serializable

其中 5 個值對應於在 java.sql 介面連接中定義的公用常數。

因為部份協力廠商驅動程式不支援將連接的異動隔離層級設為 none,所以驅動程式還支援其他非標準化值 unsupportedPostgreSQL 線上文件具有一個關於每個隔離層級實際意義之較好的簡要描述。

IMPORTANT:由於資料庫不同,受支援的隔離層級的清單也會不同。 如需受支援資料庫的受支援異動隔離層級清單,請參閱受支援的異動隔離層級

建議您使用 read committed 異動隔離層級,因為它是防止驅動程式查看未確認變更 (改動讀取) 的最低隔離層級。

下表列出此參數的內容:

Table 4-22 異動隔離層級:內容

內容

標籤名稱

transaction-isolation-level

必要?

no

區分大小寫?

no

預設值

(動態1)

正確的值

unsupported none read uncommitted read committed repeatable read serializable

與綱要相依

False

1此預設值會在執行時期以動態的方式自描述元檔案衍生。 否則,預設值為 read committed。

重複使用陳述式?

「重複使用陳述式?」參數可指定在給定的連接上是否可以一次使用一或多個 java.sql.Statement 項目。 請參閱 java.sql.Statement

此參數主要用於啟用與 Microsoft SQL Server 2000 Driver for JDBC 的互通。

當設為布林值 True 時,驅動程式會配置一次「Java SQL 陳述式」並重複使用它。 當設為布林值 False 時,驅動程式會在每次使用陳述式物件時配置/取消配置它們,以確定在給定的連接上一次只使用一個陳述式。

下表列出此參數的內容:

Table 4-23 重複使用陳述式?:內容

內容

標籤名稱

reuse-statements

必要?

no

區分大小寫?

no

預設值

(動態1)

正確的值

1、yes、true (是) 0、no、false (否)

與綱要相依

False

1此預設值會在執行時期以動態的方式自描述元檔案衍生。 否則,預設值為布林值 True。

NOTE:將此參數設為布林值 False 會降低效能。

傳回的結果集數目

「傳回的結果集數目」參數可指定能夠從任意 SQL 陳述式傳回的 java.sql.Result 物件數量。 請參閱 java.sql.ResultSet

此參數主要用於在評估任意 SQL 陳述式的結果時,避免Oracle Thin Client JDBC 驅動程式中發生無限迴路情況。

下表列出此參數的內容:

Table 4-24 傳回的結果集數目:內容

內容

標籤名稱

handle-stmt-results

必要?

no

範例值

one

預設值

(動態1)

正確的值

none、no (無) single、one (一個) multiple、many、yes (多個)

與綱要相依

False

1此預設值會在執行時期以動態的方式自描述元檔案衍生。 否則,預設值為 multiple、many 或 yes。

啟用陳述式層級鎖定?

「啟用陳述式層級鎖定?」參數可指定驅動程式在執行 SQL 陳述式之前,是否明確地鎖定資料庫資源。

下表列出此參數的內容:

Table 4-25 啟用陳述式層級鎖定?:內容

內容

標籤名稱

enable-locking

必要?

no

預設值

0 (否)

正確的值

1、yes、true (是) 0、no、false (否)

與綱要相依

True

鎖定陳述式產生器類別

「鎖定陳述式產生器類別」參數可指定為了產生明確鎖定待處理 SQL 陳述式之資料庫資源所需要的 SQL 陳述式,所使用的 DBLockStatementGenerator 實作。 DBLockStatementGenerator 介面上的資訊位於隨附於驅動程式的 Java 文件中。

下表列出此參數的內容:

Table 4-26 鎖定陳述式產生器類別:內容

內容

標籤名稱

lock-generator-class

必要?

no

範例值

com.novell.nds.dirxml.driver.jdbc.db.lock.OraLockGenerator

預設值

(動態1)

正確的值

1、yes、true (是) 0、no、false (否)

與綱要相依

True

1此預設值會在執行時期以動態的方式自描述元檔案衍生。 否則,預設值為 com.novell.nds.dirxml.driver.jdbc.db.lock.DBLockGenerator。

啟用參考屬性支援?

「啟用參考屬性支援?」參數會切換驅動程式是否要辨識邏輯資料庫類別之間的外部索引鍵條件約束。 這些參數用於表示內含項目。 邏輯資料庫類別內,父表格和子表格之間的外部索引鍵條件約束不會受到影響。

當設為布林值 True 時,外部索引鍵欄會解譯為參考。 當設為布林值 False 時,外部索引鍵欄會解譯為非參考。

此參數的主要目的是確保驅動程式 1.0 版的反向相容性。 如需 1.0 版的相容性,請將此參數設為布林值 False

下表列出此參數的內容:

Table 4-27 啟用參考屬性支援?:內容

內容

標籤名稱

enable-refs

必要?

no

預設值

1 (是)

正確的值

1、yes、true (是) 0、no、false (否)

與綱要相依

True

啟用中繼識別碼支援?

「啟用中繼識別碼支援?」參數會切換驅動程式是否要將檢視欄名稱字首 (例如 “pk_” 和 “fk_”) 嚴格解譯為中繼資料。 當解譯為中繼資料時,此類字首不會視為檢視欄名稱的一部份。

例如,當啟用中繼識別碼支援時,欄 “pk_idu” 具有有效的欄名 “idu”,以禁止在同一檢視窗中存在具有相同有效名稱的欄。 當停用中繼識別碼支援時,欄 “pk_idu” 具有有效的欄名 “pk_idu,”,以允許存在其他名為 “idu” 的欄。 而且,當啟用中繼識別碼支援時,具有名為 “pk_idu” 之主索引鍵的檢視窗會與具有名為 “idu” 之主索引鍵欄的表格衝突。 當停用中繼識別碼支援時,它們就不會衝突。

當設為布林值 True 時,檢視欄字首會解譯為中繼資料。 當設為布林值 False 時,檢視欄名稱字首會解譯為正確欄名的一部份。

此參數的主要目的是確保驅動程式 1.5 版的反向相容性。 如需 1.5 版的相容性,請將此參數設為布林值 False

下表列出此參數的內容:

Table 4-28 啟用中繼識別碼支援?:內容

內容

標籤名稱

enable-meta-identifiers

必要?

no

預設值

1 (是)

正確的值

1、yes、true (是) 0、no、false (否)

與綱要相依

True

強制使用者名稱大小寫

「強制使用者名稱大小寫」參數會變更用於驗證目標資料庫的驅動程式使用者名稱大小寫。

此參數的主要目的是當針對 ANSI 相容的資料庫使用該參數時,啟用與「Informix JDBC 驅動程式」的互通。 請參閱Informix JDBC 驅動程式

下表列出此參數的內容:

Table 4-29 強制使用者名稱大小寫:內容

內容

標籤名稱

force-username-case

必要?

no

預設值

(不強制)

正確的值

lower (針對小寫) mixed (針對大小寫混合) upper (針對大寫)

與綱要相依

False

左外部結合運算子

「左外部結合運算子」參數可指定用於無觸發發行查詢的左外部結合運算子, 將來可能會有其他用途。

下表列出此參數的內容:

Table 4-30 左外部結合運算子:內容

內容

標籤名稱

left-outer-join-operator

必要?

no

預設值

(動態1)

正確的值

*= (+) LEFT OUTER JOIN

與綱要相依

True

1此預設值會在執行時期以動態的方式自描述元檔案衍生。 否則,預設值為 LEFT OUTER JOIN。

取回最少中繼資料

當設為布林值 True 時,驅動程式只會呼叫必要的中繼資料方法。 當設為布林值 False 時,驅動程式會呼叫必要的和選擇性的中繼資料方法。 如需必要的和選擇性的中繼資料方法清單,請參閱Section D.0, java.sql.DatabaseMetaData 方法 。 多值和參考屬性同步化需要選擇性中繼資料方法。

Table 4-31 取回最少中繼資料:內容

內容

標籤名稱

minimal-metadata

必要?

no

預設值

(動態1)

正確的值

1、yes、true (是) 0、no、false (否)

與綱要相依

True

1此預設值會在執行時期以動態的方式自描述元檔案衍生。 否則,預設值為布林值 False。

NOTE:將此值設為布林值 True 會改進啟動時間和協力廠商 JDBC 驅動程式相容性,但同時也會影響功能。

函數傳回方法

「函數傳回方法」參數可指定如何從資料庫函數中取回資料。

此參數的主要目的是啟用與 Informix JDBC 驅動程式的互通。 請參閱Informix JDBC 驅動程式

當設為 result set 時,函數結果便會透過結果集取回。 當設為 return value 時,函數結果會做為單一的純量傳回值取回。

Table 4-32 函數傳回方法:內容

內容

標籤名稱

function-return-method

必要?

no

預設值

(動態1)

正確的值

result set return value (純量傳回值)

與綱要相依

False

1此預設值會在執行時期以動態的方式自描述元檔案衍生。

支援中繼資料取回中的綱要?

「支援中繼資料取回中的綱要?」參數可指定當取回資料庫中繼資料時,是否應該使用綱要名稱。

此參數的主要目的是當針對 ANSI 相容的資料庫使用該參數時,啟用與「Informix JDBC 驅動程式」的互通。 請參閱Informix JDBC 驅動程式

當設為布林值 True 時,會使用綱要名稱。 當設為布林值 False 時,則不會使用它們。

Table 4-33 支援中繼資料取回中的綱要?:內容

內容

標籤名稱

supports-schemas-in-metadata-retrieval

必要?

no

預設值

(動態1)

正確的值

1、yes、true (是) 0、no、false (否)

與綱要相依

False

1此預設值會在執行時期以動態的方式自描述元檔案衍生。 否則,預設值為布林值 True。

欄名稱排序方式

「欄名稱排序方式」參數可指定如何決定不支援依欄名排序之舊資料庫的欄位置。

此參數的主要目的是啟用與舊資料庫 (例如 DB2/AS400) 的互通。

依十六進位值排序欄名可確保如果驅動程式例項重新定位至不同的伺服器時,它可以繼續運作而無需修改。 依平台或地區設定字串定序順序來排序欄名會更直觀,但如果驅動程式重新定位至不同的伺服器,則可能需要變更組態。 特別是記錄表格欄順序和複合欄名順序可能會變更。 在後一種情況下,可能需要更新「綱要映射」規則和物件關聯值。 在前一種情況下,則可能要重新命名記錄表格欄。

只要發生下列情況,就可能需要指定所有完整的 Java 類別名稱:

Table 4-34 欄名稱排序方式:內容

內容

標籤名稱

column-position-comparator

必要?

no

預設值

(動態1)

正確的值

com.novell.nds.dirxml.driver.jdbc.util.config.comp.StringByteComparator (十六進位值) com.novell.nds.dirxml.driver.jdbc.util.config.comp.StringComparator (字串定序順序) (接受 java.lang.String 引數的所有 java.util.Comparator)

與綱要相依

True

1此預設值會在執行時期以動態的方式自描述元檔案衍生。 否則,預設值為 com.novell.nds.dirxml.driver.jdbc.util.config.comp.StringByteComparator。

IMPORTANT:在您針對給定的組態設定此參數之後,請勿變更該參數。