The Microsoft Jet Database engine is exposed through the Data Access Objects (DAO) interface as the DBEngine object.
|(Declarations)||Declarations||Declarations and private variables for the modJetEngine module.|
|ISAMCacheReads||Procedure||Get the number of Jet Engine cache reads since the last reset. Use the ResetISAMCacheReads method to reset this value to 0. This value returns the number of times the Jet Engine has read data from its internal cache. This number does not include the number of reads from the read-ahead cache (see the ISAMRACacheReads property for information on the read-ahead cache). Use the ResetISAMCacheReads method to reset this value to 0.|
|ISAMDiskReads||Procedure||Get the number of Jet Engine disk reads since the last reset. Use the ResetISAMCacheReads method to reset this value to 0. This value returns the number of times the Jet Engine has read data from its internal cache. This number does not include the number of reads from the read-ahead cache (see the ISAMRACacheReads property for information on the read-ahead cache).|
|ISAMDiskWrites||Procedure||Get the number of Jet Engine disk writes since the last reset. Use the ResetISAMDiskWrites method to reset this value to 0. This value returns the number of times the Jet Engine has written data to a local or network disk. This figure includes all writes, including background read-ahead cache reads that happen in separate threads. One write doesn't necessarily equal one page, as is often the case when using transactions.|
|ISAMLocksPlaced||Procedure||Get the number of Jet Engine locks placed since the last reset. Use the ResetISAMLocksPlaced method to reset this value to 0.|
|ISAMLocksReleased||Procedure||Get the number of Jet Engine locks released since the last reset. Use the ResetISAMLocksReleased method to reset this value
Note: The number of locks placed and locks released may not match. This is because a single call to release a lock may result in the release of more than one lock.
|ISAMRACacheReads||Procedure||Get the number of Jet Engine read-ahead cache reads since the last reset. Use the ResetISAMRACacheReads method to reset this value to 0. This value returns the number of times the read-ahead cache has been read. In some cases, the Jet Engine reads more pages of data than are requested--this additional data is stored in the read-ahead cache so that it is readily available when needed.|
|TuneExclusiveAsyncDelay||Procedure||Set the Jet Engine's ExclusiveAsyncDelay tuning value, which controls the length of time to defer an asynchronous flush of an exclusive database. The default when Jet is started is 2000 milliseconds.|
|TuneFlushTransactionTimeout||Procedure||Set the Jet Engine's FlushTransactionTimeout tuning value. This entry disables both the ExclusiveAsyncDelay and SharedAsyncDelay settings. To enable those settings, a value of zero must be entered. FlushTransactionTimeout changes the Jet's method for doing asynchronous writes to a database file.|
|TuneImplicitCommitSync||Procedure||Set the Jet Engine's ImplicitCommitSync tuning value which controls whether the system waits for a commit to finish. A value of False instructs the system to proceed without waiting for the commit to finish; a value of True instructs the system to wait for the commit to finish. The default when Jet is started is False.|
|TuneLockDelay||Procedure||Set the Jet Engine's LockDelay tuning value. This setting works in conjunction with the LockRetry setting in that it causes each LockRetry to wait 100 milliseconds before issuing another lock request.|
|TuneLockRetry||Procedure||Set the Jet Engine's LockRetry tuning value which controls the number of times to repeat attempts to access a locked page before returning a lock conflict message. The default when Jet is started is 20.|
|TuneMaxLocksPerFile||Procedure||Set the Jet Engine's MaxLocksPerFile tuning value which prevents transactions in Jet from exceeding the specified value. If the locks in a transaction attempts to exceed this value, then the transaction is separated into two or more parts and partially committed.|
|TunePageTimeout||Procedure||Set the Jet Engine's PageTimeout tuning value which controls the length of time between the time when data that is not read-locked is placed in an internal cache and when it's invalidated, expressed in milliseconds. The default when Jet is started is 5000 milliseconds.|
|TuneRecycleLVs||Procedure||Set the Jet Engine's RecycleLongValues tuning value. This setting, when enabled, causes Jet to recycle long value (LV) pages (Memo, Long Binary [OLE object], and Binary data types). Jet 3.0 would not recycle those types of pages until the last user closed the database. If the RecyleLVs setting is enabled, Jet 3.5 will start to recycle most LV pages when the database is expanded (that is, when groups of pages are added).|
' Example of modJetEngine ' ' To use this example, create a new module and paste this code into it. ' Then run the procedure by putting the cursor in the procedure and pressing: ' F5 to run it, or ' F8 to step through it line-by-line (see the Debug menu for more options) Private Sub Example_modJetEngine() ' Comments: Examples of using the modJetEngine module to manage Access database characteristics such as passwords, encryption, compact, workspaces and tuning through DAO in VBA and VB6. ' Show the engine statistics so far Debug.Print "ISAM Cache Reads: " & ISAMCacheReads() Debug.Print "ISAM Disk Reads: " & ISAMDiskReads() Debug.Print "ISAM Disk Writes: " & ISAMDiskWrites() Debug.Print "ISAM Locks Placed: " & ISAMLocksPlaced() Debug.Print "ISAM Locks Released: " & ISAMLocksReleased() Debug.Print "ISAM Read-Ahead Cache Reads: " & ISAMRACacheReads() ' The following lines show how to set tuning parameters. Uncomment the lines to try them. 'TuneExclusiveAsyncDelay 100 'TuneFlushTransactionTimeout 300 'TuneImplicitCommitSync True 'TuneLockDelay 100 'TuneLockRetry 10 'TuneMaxLocksPerFile 10000 'TunePageTimeout 7000 'TuneRecycleLVs 1 End Sub
The source code in Total Visual Sourcebook includes modules and classes for Microsoft Access, Visual Basic 6 (VB6), and Visual Basic for Applications (VBA) developers. Easily add this professionally written, tested, and documented royalty-free code into your applications to simplify your application development efforts.
Total Visual SourceBook is written for the needs of a developer using a source code library covering the many challenges you face. Countless developers over the years have told us they learned some or much of their development skills and tricks from our code. You can too!
Supports Access/Office 2016, 2013, 2010 and 2007, and Visual Basic 6.0!
"The code is exactly how I would like to write code and the algorithms used are very efficient and well-documented."
Van T. Dinh, Microsoft MVP