當安裝 Microsoft Jet 4,0 引擎數據庫的驅動程序時,設置程序會在引擎的 Windows 注冊表和 ISAM Formats 子鍵寫入一些缺省值。不應直接修改這些設置;而應使用應用程序的設置程序來添加、刪除、或更改這些設置。下列部分描述 Microsoft Jet 2.5 引擎數據庫驅動程序的初始化和 ISAM Formats 設置。
Jet\3.5\Engines\Excel 文件夾包含用來訪問外部 Microsoft Excel 工作表的 Msexcl35.dll 驅動程序的初始化設置。文件夾中項目的典型設置顯示於下列示例。
SystemDB = <path>\System.mdb
CompactBYPkey = 1
PrevFormatCompactWithUNICODECompression=1
Microsoft Jet 數據庫引擎使用下列項目。
項目 |
說明 |
SystemDB |
指定工作組信息文件的完整路徑和文件名。缺省值是適當路徑后面跟隨著文件名 System.mdb。 在 Windows 95 和 Windows NT 4.0 中的值是字符串類型,而在 Windows NT 3.51 中是 REG_SZ 類型。 |
CompactByPKey |
指定當壓縮以主鍵順序復制而成的表時,在表上是否存在主鍵。如果沒有主鍵存在表上,表就以基本表的順序復制。 0 值指示應該以基本表的順序壓縮;非零值指示如果主鍵存在,表應該以主鍵順序壓縮。缺省值是非零值。在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在Windows NT 3.51 中是 REG_DWORD 類型。 注意 此設置只應用于壓縮 Microsoft Jet 數據庫引擎 3.0 或之后的版本所創(chuàng)建的數據庫;當您壓縮由 2.x 版Microsoft Jet 數據庫引擎所創(chuàng)建的數據庫,數據總是以基本表的順序復制。 |
PrevFormatCompactWithUNICODECompression |
Microsoft Jet 4.0數據庫使用Unicode字符設置存儲文本數據。壓縮Unicode數據降低了對頁的讀寫操作,因此極大地提高了數據庫的性能。 該鍵決定數據庫是由Microsoft Jet數據庫引擎3.x版本創(chuàng)建還是應預先由壓縮了的Unicode或未經壓縮的Unicode創(chuàng)建。 注意:該設置不適用于壓縮了的Microsoft Jet 4.0數據庫。 Microsoft Jet 4.0數據庫會默認保持其創(chuàng)建時的壓縮設置。 |
Jet\4.0\Engines\Jet 4.0文件夾包含用來訪問Microsoft Access 2000工作表的msjet40.dll驅動程序的初始化設置。文件夾中項目的典型設置顯示於下列示例。
FlushTransactionTimeout=500
LockDelay=100
LockRetry=20
MaxBufferSize= 0
MaxLocksPerFile= 9500
PageTimeout=5000
Threads=3
UserCommitSync=Yes
ImplicitCommitSync=No
ExclusiveAsyncDelay=2000
SharedAsyncDelay=0
RecycleLVs=0
PagesLockedToTableLock=0
Microsoft Jet 數據庫引擎使用下列項目。
項目 |
說明 |
PageTimeout |
非讀入鎖定的數據從放入內部高速緩沖起到它變?yōu)闊o效之間的時間長度,以毫秒為單位。缺省值是 5000 毫秒或 5 秒。在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在Windows NT 3.51 中是 REG_DWORD 類型。 |
FlushTransaction Timeout |
此項目禁止 ExclusiveAsyncDelay 和 SharedAsyncDelay 注冊表項。若要使這兩項目有效,必須輸入零值。FlushTransactionTimeout 更改 Microsoft Jet 數據庫引擎往數據庫文件中異步寫入的方法。從前,Microsoft Jet 數據庫引擎使用 ExclusiveAsyncDelay 或 SharedAsyncDelay 來決定在強制異步寫入前,要等待多久。然而,現在 FlushTransactionTimeout 改變了這種情況,因為 FlushTransactionTimeout 有一個值,它只在指定的時間量被超出之后,并且沒有頁添加至高速緩沖的條件下,會啟動異步寫入。唯一的例外是,如果高速緩沖超出了 MaxBufferSize,在那一點上高速緩沖會啟動異步寫入,而不管時間是否已經超過。因此 Microsoft Jet 3.5 數據庫引擎在啟動異步寫入前將非活動地等待 500 毫秒,或等到高速緩沖大小已被超出。 |
LockDelay |
此設置可和 LockRetry 設置聯(lián)合工作,它會使每一個 LockRetry 在發(fā)出另一個鎖定請求前等待 100 毫秒。添加 LockDelay 設置是為了防止某些網絡操作系統(tǒng)會發(fā)生的“激增”現象。 |
MaxLocksPerFile |
此設置防止 Microsoft Jet 的處理超出指定值。如果處理中的鎖定企圖超出此值,處理將分裂成兩個或更多個部分且部分地交付。添加該設置來防止當超出指定的 Netware 鎖定限制時,Netware 3.1 服務器會發(fā)生的毀損,及改善 Netware 和 NT 的性能。 |
LockRetry |
在返回鎖定沖突消息之前,重復嘗試訪問一鎖定頁的次數。缺省值是 20。 在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在 Windows NT 3.51 中是 REG_DWORD 類型。 |
RecycleLVs |
此設置為有效時將使 Microsoft Jet 循環(huán)利用 long 值 (LV) 頁 (Memo, Long Binary [OLE對象]、和 Binary 數據類型) 。在最后一個用戶關閉數據庫之前,Microsoft Jet 3.0 不循環(huán)利用這些類型的頁。如果 RecyleLVs 設置為有效,當追加數據庫時(即,當添加幾個頁的組時),Microsoft Jet 3.5 將開始循環(huán)利用大部分的 LV 頁。 注意 使用此特性時,用戶會注意到處理 long 值數據時的性能下降。Microsoft Access 97在操作模塊、窗體以及報告時會自動啟動和禁止該特性,因此在修改這些對象時不需要打開此項目。缺省值是 0。 在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在 Windows NT 3.51 中是 REG_DWORD 類型。 |
MaxBufferSize |
數據庫引擎內部高速緩存的大小,以一千字節(jié)(K)為單位。MaxBufferSize 必須是大于等于 512 的整型值。 缺省值根據下列公式: ((TotalRAM in MB - 12 MB) / 4) + 512 KB 例如,在有 32 MB RAM 的系統(tǒng)上,缺省緩沖區(qū)大小是((32 MB - 12 MB) / 4) + 512 KB 或 5632 KB。若要將值設為缺省值,請設置注冊鍵為 MaxBufferSize= 在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在Windows NT 3.51 中是 REG_DWORD 類型。 |
Threads |
Microsoft Jet 數據庫引擎可用的背景線程數。缺省值是 3。 在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在 Windows NT 3.51 中是 REG_DWORD 類型。 |
UserCommitSync |
指定系統(tǒng)是否等待交付完成。值為Yes,命令系統(tǒng)等待;而 No 則命令系統(tǒng)執(zhí)行異步交付。缺省值為 Yes。在 Windows 95 和Windows NT 4.0 中的值是字符串類型,而在 Windows NT 3.51 中是 REG_SZ 類型。 |
ImplicitCommitSync |
指定系統(tǒng)是否等待交付完成。No,命令系統(tǒng)不要等待交付完成而繼續(xù);Yes則命令系統(tǒng)等待交付完成。缺省值是 512。 在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在 Windows NT 3.51 中是 REG_DWORD 類型。 |
ExclusiveAsyncDelay |
指定延遲獨占數據庫的異步刷新的時間長度,以毫秒為單位。缺省值是 2000 或 2 秒。在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在Windows NT 3.51 中是 REG_DWORD 類型。 |
SharedAsyncDelay |
指定延遲共享數據庫的異步刷新的時間長度,以毫秒為單位。缺省值是 0。 在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在 Windows NT 3.51 中是 REG_DWORD 類型。 |
PagesLockedToTableLock |
在訪問表的大量操作中更有效的是鎖住整個表而不是鎖定表中每一頁。 該設置定義了在鎖頁轉為鎖表前任何一個事務中,Microsofr Jet所允許的被鎖的頁數。 缺省值0表示不要將鎖頁自動轉為鎖表。 注意:小心使用該設置。若需要多用戶訪問數據庫,則鎖住整表會導致其他用戶的鎖定沖突。這一點在設置值較小時特別嚴重。設置值較大時,例如25或50,其他用戶的操作也會變得不可預知。 |
Jet\4.0\Transproter鍵包括由Jet Synchronizer設置的Jet Replication同步的初始值。該設置確定由Synchtonizer同步信號嘗試具體的傳輸。有效值為0-100。0表示不允許傳輸。所有非零值的傳輸類型都會按遞增的鍵值順序被嘗試,直到有一個成功地實現了同步或所有的都失敗。
文件夾中項目的典型設置顯示於下列示例。
Priority_FS=1
Priority_Internet=2
Priority_direct=3
Microsoft Jet 數據庫引擎使用下列優(yōu)先級輸入項。
項目 |
說明 |
Priority_FS |
文件系統(tǒng)(間接)同步化 取決于副本間的一系列的消息轉換。管理各個副本的同步裝置把轉換收集成“信息文件”(*.msg),然后“信息文件”被復制到一個可共享的文件夾──叫做“下拉框”,可供其他同步裝置使用并且可通過文件系統(tǒng)訪問。 |
Priority_Internet |
Internet(間接)同步化 取決于副本間的一系列的消息轉換。只有由Internet服務器上的同步裝置管理的副本有下拉框,可通過HTTP或FTP連接訪問。 |
Priority_direct |
Direct 同步化是交換一個副本集中兩個成員間的數據和設計變化的程序,副本集可以是在單機上也可以是在網絡上直接相連的。兩個數據庫都由同步裝置打開。 |
注意 當更改 Windows 注冊表設置時,要使新設置生效,必須先退出,然后重新激活數據庫引擎。
定制 Microsoft Jet 的 Windows 注冊環(huán)境