Database Parameters
Applies to: Windows | Windows Server
Database Parameters
This topic contains parameters that are used for the database.
JET_paramCheckFormatWhenOpenFail
44
This parameter, when set, will cause JetInit to return a special error when a database or transaction log from a previous release of the database engine is opened. These errors are:
Error |
Description |
---|---|
JET_errDatabase200Format |
The database and/or transaction log files were created with the database engine in Windows NT 3.51. |
JET_errDatabase400Format |
The database and/or transaction log files were created with the database engine in a test release prior to Windows NT Server 4.0. |
JET_errDatabase500Format |
The database and/or transaction log files were created with the database engine in Windows NT Server 4.0. |
Windows Vista: For Windows Vista and later, this parameter is obsolete and does not affect the operation of the database engine.
Label | Value |
---|---|
Default Value: |
True |
Type: |
Boolean |
Valid Range: |
False, True |
Scope: |
Instance |
Set After JetCreateInstance: |
Yes |
Set after JetInit: |
No |
Affects Physical Layout: |
No |
Affects Reliability: |
No |
Affects Performance: |
No |
Affects Resources: |
No |
Availability: |
All |
JET_paramDatabasePageSize
64
This parameter configures the page size for the database. The page size is the smallest unit of space allocation possible for a database file. The database page size is also very important because it sets the upper limit on the size of an individual record in the database.
Note Only one database page size is supported per process at this time. This means that if you are in a single process that contains different applications that use the database engine then they must all agree on a database page size.
Label | Value |
---|---|
Default Value: |
4096 |
Type: |
Integer |
Valid Range: |
2048, 4096, 8192 |
Scope: |
Global |
Set After JetCreateInstance: |
No |
Set after JetInit: |
No |
Affects Physical Layout: |
Yes |
Affects Reliability: |
No |
Affects Performance: |
Yes |
Affects Resources: |
Yes |
Availability: |
All |
JET_paramDbExtensionSize
18
This parameter controls the amount of space that is added to a database file each time it needs to grow to accommodate more data. The size is in database pages.
Label | Value |
---|---|
Default Value: |
256 |
Type: |
Integer |
Valid Range: |
1 – 2147483647 |
Scope: |
Instance |
Set After JetCreateInstance: |
Yes |
Set after JetInit: |
No Windows Vista: For Windows Vista and later: Yes |
Affects Physical Layout: |
No |
Affects Reliability: |
No |
Affects Performance: |
Yes |
Affects Resources: |
Yes |
Availability: |
All |
JET_paramEnableIndexChecking
45
When this parameter is true, every database is checked at JetAttachDatabase time for indexes over Unicode key columns that were built using an older version of the NLS library in the operating system. This must be done because the database engine persists the sort keys generated by LCMapStringW and the value of these sort keys change from release to release.
If a primary index is detected to be in this state then JetAttachDatabase will always fail with JET_errPrimaryIndexCorrupted.
If any secondary indexes are detected to be in this state then there are two possible outcomes. If JET_bitDbDeleteCorruptIndexes was passed to JetAttachDatabase then these indexes will be deleted and JET_wrnCorruptIndexDeleted will be returned from JetAttachDatabase. These indexes will need to be recreated by your application. If JET_bitDbDeleteCorruptIndexes was not passed to JetAttachDatabase then the call will fail with JET_errSecondaryIndexCorrupted.
Note It is strongly recommended that this parameter be set to True by your application.
Note It is very strongly recommended that applications avoid the use of Unicode key columns in their primary key (clustered) indexes.
Label | Value |
---|---|
Default Value: |
False |
Type: |
Boolean |
Valid Range: |
False, True |
Scope: |
Global Windows Vista: For Windows Vista and later: Instance |
Set After JetCreateInstance: |
No |
Set after JetInit: |
No |
Affects Physical Layout: |
No |
Affects Reliability: |
Yes |
Affects Performance: |
No |
Affects Resources: |
No |
Availability: |
All |
JET_paramEnableIndexCleanup
54
When this parameter is set to true, then the database engine may automatically clean up indexes over Unicode key columns at JetInit time as necessary to avoid database format changes caused by changes to the NLS library in Windows. Such changes are made routinely to the NLS library to add support for new languages, to add missing characters to a language, to add a collation order to a language, or to fix bugs in the collation order of a language. These changes affect the sort keys produced by LCMapStringW which are persisted by the database engine as components of index keys.
It is important to realize that it is possible for the changes to the index to be so great that an incremental cleanup is not possible. In this case, the index will be handled as prescribed by JET_paramEnableIndexChecking.
Note It is strongly recommended that this parameter and JET_paramEnableIndexChecking be set to True by your application.
Label | Value |
---|---|
Default Value: |
True |
Type: |
Boolean |
Valid Range: |
False, True |
Scope: |
Instance |
Set After JetCreateInstance: |
Yes |
Set after JetInit: |
No Windows Vista: For Windows Vista and later: Yes |
Affects Physical Layout: |
No |
Affects Reliability: |
No |
Affects Performance: |
No |
Affects Resources: |
No |
Availability: |
Windows Server 2003 and later releases |
JET_paramOneDatabasePerSession
102
When this parameter is true then only one database is allowed to be opened using JetOpenDatabase by a given session at one time. The temporary database is excluded from this restriction.
Windows XP and Windows Server 2003: This parameter is write only on Windows XP and Windows Server 2003.
Windows Vista: This parameter behaves normally as of Windows Vista.
Note This parameter is write only.
Label | Value |
---|---|
Default Value: |
False |
Type: |
Boolean |
Valid Range: |
False, True |
Scope: |
Global |
Set After JetCreateInstance: |
No Windows Vista: For Windows Vista and later: Yes |
Set after JetInit: |
No |
Affects Physical Layout: |
No |
Affects Reliability: |
No |
Affects Performance: |
No |
Affects Resources: |
No |
Availability: |
Windows XP and later releases |
JET_paramEnableOnlineDefrag
35
This parameter controls the behavior of online defragmentation when initiated using JetDefragment. Please see JetDefragment for more information.
Windows 2000: On Windows 2000, this parameter was a simple Boolean that would gate online defragmentation when initiated by JetDefragment. When set to TRUE, online defragmentation will be performed on the records of each table in the database.
Windows XP: On Windows XP and later releases, this parameter can be set to one or more of the following options:
Option |
Description |
---|---|
JET_OnlineDefragDisable |
Do not perform online defragmentation. This is the binary equivalent to the Windows 2000 setting of False for this parameter. |
JET_OnlineDefragAllOBSOLETE |
Perform full online defragmentation. This is the binary equivalent to the Windows 2000 setting of True for this parameter. |
JET_OnlineDefragDatabases |
Perform online defragmentation of the records of each table in the database. |
JET_OnlineDefragSpaceTrees |
Perform online defragmentation of the space trees of each table in the database. |
JET_OnlineDefragStreamingFiles |
This parameter is used to support the Microsoft Exchange infrastructure and is not intended to be used in your application. |
JET_OnlineDefragAll |
Perform full online defragmentation. This is the conceptual equivalent to the Windows 2000 setting of True for this parameter. |
Label | Value |
---|---|
Default Value: |
Windows 2000: True Windows XP: For Windows XP and later: JET_OnlineDefragAll |
Type: |
Windows 2000: Boolean Windows XP and later: JET_GRBIT (integer) |
Valid Range: |
Windows 2000: False, True Windows XP and later: 0 – JET_OnlineDefragAll |
Scope: |
Instance |
Set After JetCreateInstance: |
Yes |
Set after JetInit: |
Yes |
Affects Physical Layout: |
No |
Affects Reliability: |
Yes |
Affects Performance: |
Yes |
Affects Resources: |
No |
Availability: |
All |
JET_paramPageFragment
20
This parameter is the threshold that the database engine uses to control free space fragmentation. The size is in database pages.
Label | Value |
---|---|
Default Value: |
8 |
Type: |
Integer |
Valid Range: |
0 – 2147483647 |
Scope: |
Instance |
Set After JetCreateInstance: |
Yes |
Set after JetInit: |
No |
Affects Physical Layout: |
No |
Affects Reliability: |
No |
Affects Performance: |
Yes |
Affects Resources: |
Yes |
Availability: |
All |
JET_paramRecordUpgradeDirtyLevel
78
This parameter controls how aggressively the database page cache manager will write a database page that has undergone an in place format conversion. These format conversions occur on the fly as pages are loaded from a database that was created with the Windows 2000 database engine but used by a Windows XP or later release of the database engine.
Label | Value |
---|---|
Default Value: |
1 |
Type: |
Integer |
Valid Range: |
0-3 |
Scope: |
Global |
Set After JetCreateInstance: |
Yes |
Set after JetInit: |
Yes |
Affects Physical Layout: |
Yes |
Affects Reliability: |
No |
Affects Performance: |
Yes |
Affects Resources: |
No |
Availability: |
Windows XP and later releases |
JET_paramWaypointLatency
153
The latency (in logs) behind the tip / highest committed log to defer database page flushes. Enabling this latency can allow database recovery in the case of catastrophic loss of the most recent logfile. See JET_bitReplayIgnoreLostLogs.
Label | Value |
---|---|
Default Value: |
0 |
Type: |
Integer |
Valid Range: |
0-1023 |
Scope: |
Instance |
Set After JetCreateInstance: |
Yes |
Set after JetInit: |
No |
Affects Physical Layout: |
No |
Affects Reliability: |
Yes |
Affects Performance: |
Yes |
Affects Resources: |
No |
Availability: |
Windows 7 |
JET_paramDefragmentSequentialBTrees
160
Turn on/off automatic sequential B-tree defragmentation.
Label | Value |
---|---|
Default Value: |
1 |
Type: |
Boolean |
Valid Range: |
0-1 |
Scope: |
Instance |
Set After JetCreateInstance: |
Yes |
Set after JetInit: |
No |
Affects Physical Layout: |
Yes |
Affects Reliability: |
No |
Affects Performance: |
Yes |
Affects Resources: |
No |
Availability: |
Windows 7 |
JET_paramDefragmentSequentialBTreesDensityCheckFrequency
161
Determines how frequently B-tree density is checked.
Label | Value |
---|---|
Default Value: |
10 |
Type: |
Integer |
Valid Range: |
0-Max Integer |
Scope: |
Instance |
Set After JetCreateInstance: |
Yes |
Set after JetInit: |
No |
Affects Physical Layout: |
Yes |
Affects Reliability: |
No |
Affects Performance: |
Yes |
Affects Resources: |
No |
Availability: |
Windows 7 |
JET_paramIOThrottlingTimeQuanta
162
Max time, in milliseconds, that the I/O throttling mechanism gives a task to run for it to be considered 'completed'.
Label | Value |
---|---|
Default Value: |
125 |
Type: |
Integer |
Valid Range: |
0-10000 |
Scope: |
Global |
Set After JetCreateInstance: |
Yes |
Set after JetInit: |
No |
Affects Physical Layout: |
No |
Affects Reliability: |
No |
Affects Performance: |
Yes |
Affects Resources: |
No |
Availability: |
Windows 7 |
Requirements
Requirement | Value |
---|---|
Client |
Requires Windows Vista, Windows XP, or Windows 2000 Professional. |
Server |
Requires Windows Server 2008, Windows Server 2003, or Windows 2000 Server. |
Header |
Declared in Esent.h. |