當(dāng)安裝 Microsoft Jet 3,5 引擎數(shù)據(jù)庫(kù)的驅(qū)動(dòng)程序時(shí),設(shè)置程序會(huì)在引擎的 Windows 注冊(cè)表和 ISAM Formats 子鍵寫入一些缺省值。不應(yīng)直接修改這些設(shè)置;而應(yīng)使用應(yīng)用程序的設(shè)置程序來(lái)添加、刪除、或更改這些設(shè)置。下列部分描述 Microsoft Jet 2.5 引擎數(shù)據(jù)庫(kù)驅(qū)動(dòng)程序的初始化和 ISAM Formats 設(shè)置。
Jet\4.0\Engines\Jet 3.x文件夾包含msrd3x40.dll驅(qū)動(dòng)程序的初始化設(shè)置,用來(lái)訪問(wèn)Microsoft Access 97工作表。文件夾中項(xiàng)目的典型設(shè)置顯示於下列示例。
win32=<path>\ msrd3x40.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
SortMemorySource=0
Microsoft Jet 數(shù)據(jù)庫(kù)引擎使用下列項(xiàng)目。
項(xiàng)目 |
說(shuō)明 |
win32 |
數(shù)據(jù)庫(kù)引擎驅(qū)動(dòng)程序( dll)的位置。完整路徑在安裝時(shí)就已確定。在 Windows 95 和Windows NT 4.0 中的值是字符串類型,而在 Windows NT 3.51 中是 REG_SZ 類型。 |
PageTimeout |
非讀入鎖定的數(shù)據(jù)從放入內(nèi)部高速緩沖起到它變?yōu)闊o(wú)效之間的時(shí)間長(zhǎng)度,以毫秒為單位。缺省值是 5000 毫秒或 5 秒。在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在Windows NT 3.51 中是 REG_DWORD 類型。 |
FlushTransactionTimeout |
此項(xiàng)目禁止 ExclusiveAsyncDelay 和 SharedAsyncDelay 注冊(cè)表項(xiàng)。若要使這兩項(xiàng)目有效,必須輸入零值。FlushTransactionTimeout 更改 Microsoft Jet 數(shù)據(jù)庫(kù)引擎往數(shù)據(jù)庫(kù)文件中異步寫入的方法。從前,Microsoft Jet 數(shù)據(jù)庫(kù)引擎使用 ExclusiveAsyncDelay 或 SharedAsyncDelay 來(lái)決定在強(qiáng)制異步寫入前,要等待多久。然而,現(xiàn)在 FlushTransactionTimeout 改變了這種情況,因?yàn)?FlushTransactionTimeout 有一個(gè)值,它只在指定的時(shí)間量被超出之后,并且沒(méi)有頁(yè)添加至高速緩沖的條件下,會(huì)啟動(dòng)異步寫入。唯一的例外是,如果高速緩沖超出了 MaxBufferSize,在那一點(diǎn)上高速緩沖會(huì)啟動(dòng)異步寫入,而不管時(shí)間是否已經(jīng)超過(guò)。因此 Microsoft Jet 3.5 數(shù)據(jù)庫(kù)引擎在啟動(dòng)異步寫入前將非活動(dòng)地等待 500 毫秒,或等到高速緩沖大小已被超出。 |
LockDelay |
此設(shè)置可和 LockRetry 設(shè)置聯(lián)合工作,它會(huì)使每一個(gè) LockRetry 在發(fā)出另一個(gè)鎖定請(qǐng)求前等待 100 毫秒。添加 LockDelay 設(shè)置是為了防止某些網(wǎng)絡(luò)操作系統(tǒng)會(huì)發(fā)生的“激增”現(xiàn)象。 |
MaxLocksPerFile |
此設(shè)置防止 Microsoft Jet 的處理超出指定值。如果處理中的鎖定企圖超出此值,處理將分裂成兩個(gè)或更多個(gè)部分且部分地交付。添加該設(shè)置來(lái)防止當(dāng)超出指定的 Netware 鎖定限制時(shí),Netware 3.1 服務(wù)器會(huì)發(fā)生的毀損,及改善 Netware 和 NT 的性能。 |
LockRetry |
在返回鎖定沖突消息之前,重復(fù)嘗試訪問(wèn)一鎖定頁(yè)的次數(shù)。缺省值是 20。 在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在 Windows NT 3.51 中是 REG_DWORD 類型。 |
RecycleLVs |
此設(shè)置為有效時(shí)將使 Microsoft Jet 循環(huán)利用 long 值 (LV) 頁(yè) (Memo, Long Binary [OLE對(duì)象]、和 Binary 數(shù)據(jù)類型) 。在最后一個(gè)用戶關(guān)閉數(shù)據(jù)庫(kù)之前,Microsoft Jet 3.0 不循環(huán)利用這些類型的頁(yè)。如果 RecyleLVs 設(shè)置為有效,當(dāng)追加數(shù)據(jù)庫(kù)時(shí)(即,當(dāng)添加幾個(gè)頁(yè)的組時(shí)),Microsoft Jet 3.5 將開始循環(huán)利用大部分的 LV 頁(yè)。 注意 使用此特性時(shí),用戶會(huì)注意到處理 long 值數(shù)據(jù)時(shí)的性能下降。Microsoft Access 97在操作模塊、窗體以及報(bào)告時(shí)會(huì)自動(dòng)啟動(dòng)和禁止該特性,因此在修改這些對(duì)象時(shí)不需要打開此項(xiàng)目。缺省值是 0。 在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在 Windows NT 3.51 中是 REG_DWORD 類型。 |
MaxBufferSize |
數(shù)據(jù)庫(kù)引擎內(nèi)部高速緩存的大小,以一千字節(jié)(K)為單位。MaxBufferSize 必須是大于等于 512 的整型值。 缺省值根據(jù)下列公式: ((TotalRAM in MB -12 MB) / 4) + 512 KB 例如,在有 32 MB RAM 的系統(tǒng)上,缺省緩沖區(qū)大小是((32 MB - 12 MB) / 4) + 512 KB 或 5632 KB。若要將值設(shè)為缺省值,請(qǐng)?jiān)O(shè)置注冊(cè)鍵為 MaxBufferSize= 在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在Windows NT 3.51 中是 REG_DWORD 類型。 |
Threads |
Microsoft Jet 數(shù)據(jù)庫(kù)引擎可用的背景線程數(shù)。缺省值是 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 |
指定延遲獨(dú)占數(shù)據(jù)庫(kù)的異步刷新的時(shí)間長(zhǎng)度,以毫秒為單位。缺省值是 2000 或 2 秒。在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在Windows NT 3.51 中是 REG_DWORD 類型。 |
SharedAsyncDelay |
指定延遲共享數(shù)據(jù)庫(kù)的異步刷新的時(shí)間長(zhǎng)度,以毫秒為單位。缺省值是 0。 在 Windows 95 和 Windows NT 4.0 中的值是 DWORD 類型,而在 Windows NT 3.51 中是 REG_DWORD 類型。 |
SortMemorySource |
說(shuō)明Microsoft Jet如何獲得排序使用的內(nèi)存。0表示內(nèi)存取自于堆。1表示內(nèi)存可通過(guò)malloc函數(shù)取自總內(nèi)存。 |
Jet\3.5\ISAM Formats\Paradox 3.x 文件夾包含下列項(xiàng)目。
項(xiàng)目 |
Windows NT 3.51 類型 |
Windows 95 and Windows NT 4.0 類型 |
值 |
Engine |
REG_SZ |
String |
Jet 3.x |
OneTablePerFile |
REG_BINARY |
Binary |
00 |
IndexDialog |
REG_BINARY |
Binary |
00 |
CreateDBOnExport |
REG_BINARY |
Binary |
00 |
IsamType |
REG_DWORD |
DWORD |
0 |
注意 當(dāng)更改 Windows 注冊(cè)表設(shè)置時(shí),要使新設(shè)置生效,必須先退出,然后重新激活數(shù)據(jù)庫(kù)引擎。
定制 Microsoft Jet 的 Windows 注冊(cè)環(huán)境