MDAC 2.5 SDK - Technical Articles
The Properties collections in ADO contain a dynamic set of properties returned by the OLE DB provider being used. The tables below contain the list of properties, both standard OLE DB and provider-specific, that are available in the Properties collections of ADO and ADOX objects when using the Microsoft Jet 4.0 OLE DB Provider.
The Property Name column below is the name of the property used when accessing the property in the collection. For example, the Data Source property below is accessed as follows:
Dim cnn As New ADODB.Connection
cnn.Properties("Data Source") = "c:\nwind.mdb"
The Type column indicates the ADO data type for the column. For properties on ADO objects (Connection, Recordset), ADO will automatically try to coerce the value specified when setting the property. For example, if the property is type adBStr and you set the value to 5, ADO will coerce the value to "5". ADOX will not automatically attempt to coerce property values. If you attempt to set a property of type adBStr in an ADOX collection to 5, you'll receive a run-time error. When developing in VBA you can indicate the type for the property value either explicitly or implicitly. To explicitly specify the data type, use the VBA built-in functions CStr, CLng, CInt, and CBool when setting properties of type adBStr, adInteger, adSmallInt, and adBoolean respectively. For properties of type adBStr, adSmallInt, and adBoolean you can specify the data type implicitly by using quotes around the string, specifying a number, or using True or False respectively.
The Default column indicates the default value for the property.
The Attributes column is a bitmask that is used to indicate whether the property can be read, set, or is required. If adPropWrite is not listed as an attribute, that property is for information only and cannot be modified when using the Microsoft Jet 4.0 OLE DB provider.
The Description column contains a brief description of the property. In many cases the property is not meaningful for ADO programmers and should only be used when writing directly to the OLE DB provider. When the property is not useful for ADO programmers the column will contain "N/A".
Property Name | Type | Default | Attributes | Description |
Cache Authentication | adBoolean | True | adPropRead
adPropRequired |
Indicates whether the provider is allowed to cache sensitive authentication information such as a password in an internal cache. |
Data Source | adBStr | "" | adPropRead
adPropWrite adPropRequired |
The name of the database to connect to. |
Encrypt Password | adBoolean | False | adPropRead
adPropRequired |
Indicates whether the password must be sent to the data source in an encrypted form. |
Extended Properties | adBStr | "" | adPropRead
adPropWrite adPropRequired |
A string containing connection information for opening external databases. |
Locale Identifier | adInteger | 1033 | adPropRead
adPropWrite adPropRequired |
The locale ID of preference. |
Mask Password | adBoolean | False | adPropRead
adPropRequired |
Indicates whether the password must be sent to the data source in a masked form. |
Mode | adInteger | 16 | adPropRead
adPropWrite adPropRequired |
A bitmask specifying access permissions. A combination or zero or more of the following:
0: (adShareModeExclusive) Prevents others from opening in read/write mode. 1: (adShareModeReadOnly) Read-only. 2: (adShareModeWrite) Write-only. 3: (adShareModeReadWrite) Read/write 4: (adShareModeDenyRead) Prevents others from opening in read mode. 8: (adShareModeDenyWrite) Prevents other from opening in write mode. 16: (adShareModeDenyNone) Neither read nor write access can be denied to others. |
OLE DB Services | adInteger | -6 (All services except pooling and Client Cursor Engine) | adPropRead
adPropWrite adPropRequired |
A bitmask specifying the OLE DB services to enable. One of the following values:
0: No services -1: All services -4: All except pooling and automatic transaction enlistment -5: All except Client Cursor Engine -8: All except pooling, automatic transaction enlistment, and Client Cursor Engine 3: Pooling and automatic transaction enlistment only, session level aggregation only |
Password | adBStr | "" | adPropRead
adPropWrite adPropRequired |
The password to be used when connecting to the data source. When the value of this property is retrieved, the provider may return a mask or an empty string instead of the actual password. |
Persist Encrypted | adBoolean | False | adPropRead
adPropRequired |
Indicates whether the provider must persist sensitive authentication information in an encrypted form. |
Persist Security Info | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the provider is allowed to persist sensitive authentication information such as a password along with other authentication information. |
Prompt | adSmallInt | 2 | adPropRead
adPropWrite adPropRequired |
Whether to prompt the user during initialization. One of the following values:
1: (adPromptAlways) Always prompt the user for initialization information. 2: (adPromptComplete) Prompt the user only if more information is needed. 3: (adPromptCompleteRequired) Prompt the user only if more information is needed. Do not allow the user to enter optional information. 4: (adPromptNever) Do not prompt the user. |
User Id | adBStr | "" | adPropRead
adPropWrite adPropRequired |
The user ID to be used when connecting to the data source. |
Window Handle | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
The window handle to be used if the data source needs to prompt for additional information. |
Jet OLEDB:Compact Reclaimed Space Amount | adInteger | 0 | adPropRead
adPropRequired |
Approximate amount of space that would be reclaimed by compacting this database. This value is only updated when the database is opened and is not guaranteed to be exact. |
Jet OLEDB:Compact Without Replica Repair | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Used with the JRO CompactDatabase method. Ignored when used with the ADO Connection object or the ADOX Create method. |
Jet OLEDB:Create System Database | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Used with the ADOX Catalog object's Create method. Ignored when used with the ADO Connection object or JRO CompactDatabase method. |
Jet OLEDB:Database Locking Mode | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
Scheme to be used when locking the database. Note that a database can only be open in one mode at a time. The first user to open the database gets determines the locking mode used while the database is open.
0: (JET_DATABASELOCKMODE_PAGE) Locks are taken at the page level. 1: (JET_DATABASELOCKMODE_ROW) Locks are taken at the row level. |
Jet OLEDB:Database Password | adBStr | "" | adPropRead
adPropWrite adPropRequired |
Password used to open the database. This differs from the user password in that the database password is per file, while a user password is per user. |
Jet OLEDB:Don't Copy Locale on Compact | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Used with the JRO CompactDatabase method. Ignored when used with the ADO Connection object or the ADOX Create method. |
Jet OLEDB:Encrypt Database | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Used with the ADOX Catalog object's Create method and the JRO CompactDatabase method. Ignored when used with the ADO Connection object. |
Jet OLEDB:Engine Type | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
An enumeration defining the storage engine currently in use to access this database/store.
See "Appendix C: Microsoft Jet 4.0 Provider Defined Property Values" for the list of valid values. |
Jet OLEDB:Global Bulk Transactions | adInteger | 1 | adPropRead
adPropWrite adPropRequired |
Determines if SQL bulk operations are transacted. This property determines the default for all operations in the current connection.
1: (JET_BULKTRAN_NOBULK) Use partial updates like Access. 2: (JET_BULKTRAN_BULK) Use no partial behavior. All or nothing. |
Jet OLEDB:Global Partial Bulk Ops | adInteger | 2 | adPropRead
adPropWrite adPropRequired |
This property determines the behavior of Microsoft Jet when SQL DML bulk operations fail. It can be overridden on a per-rowset basis by setting the Jet OLEDB:Partial Bulk Ops property.
0: (JET_BULKPARTIAL_DEFAULT) 1: (JET_BULKPARTIAL_PARTIAL) Allow partial completion of the bulk operation. Could result in inconsistent changes because operations on some rows could succeed and others could fail. 2: (JET_BULKPARTIAL_NOPARTIAL) Fail the bulk operation on a single error. |
Jet OLEDB:New Database Password | adBStr | "" | adPropRead
adPropWrite adPropRequired |
This property is ignored. It is used with the OLE DB IDataSourceAdmin::ModifyDataSource interface which is not currently exposed in ADO. |
Jet OLEDB:Registry Path | adBStr | "" | adPropRead
adPropWrite adPropRequired |
Path to the registry key to use for Microsoft Jet information. This does not include the HKEY_LOCAL_MACHINE tag. This value can be changed to a secondary location to store registry values for a particular application that are not shared with other applications that use Microsoft Jet on the machine.
For example, the setting for Access 2000 is: SOFTWARE\Microsoft\Office\9.0\Access\Jet\4.0\Engines |
Jet OLEDB:SFP | adBoolean | False | adPropRead
adPropWrite adPropRequired |
N/A |
Jet OLEDB:System database | adBStr | "" | adPropRead
adPropWrite adPropRequired |
Location of the Microsoft Jet system database to use for authenticating users. This overrides the value set in the registry or the corresponding systemdb registry key used when Jet OLEDB:Registry Path is used. This can include the path to the file. |
In addition to the properties in the preceding table, the following properties are available once the Connection has been opened.
Property Name | Type | Default | Attributes | Description |
Active Sessions | adInteger | 128 | adPropRead
adPropRequired |
The maximum number of sessions that can exist at the same time. |
Alter Column Support | adInteger | 36 | adPropRead
adPropRequired |
A bitmask that describes what column properties can be updated when modifying a column on a table. A combination of one or more of the following:
1: Modify the data type of the column. 2: Modify the type library entry for an abstract data type (ADT). 4: Modify the column properties using an array of properties and values to be set. 8: Modify the class ID for COM objects in the column. 16: If the type of the column is adVarChar, modify the maximum length in characters for values in this column. If the type of the column is adBinary, modify the maximum length in bytes for values in this column. For all other types, , this is ignored. 32: Modify the name of the column. 64: Modify the data type of the column. 128: Modify the maximum precision of data values in the column when type is adNumeric. 256: Modify the scale of data values in the column when type is adNumeric. |
Asynchable Commit | adBoolean | False | adPropRead
adPropRequired |
Whether transactions can be committed asynchronously. |
Asynchable Abort | adBoolean | False | adPropRead
adPropRequired |
Whether transactions can be aborted asynchronously. |
Autocommit Isolation Levels | adInteger | 4096 | adPropRead
adPropRequired |
The transaction isolation level while in auto-commit mode. |
Catalog Location | adInteger | 1 | adPropRead
adPropRequired |
The position of the catalog name in a qualified table name in a text command. One of the following:
1: The catalog name is at the start of the fully qualified name. 2: The catalog name is at the end of the fully qualified name. |
Catalog Term | adBStr | Database | adPropRead
adPropRequired |
The name the data source uses for a catalog; for example, “catalog”, “database”, or “directory”. |
Column Definition | adInteger | 1 | adPropRead
adPropRequired |
A bitmask defining the valid clauses for the definition of a column. A combination of zero or more of the following:
1: Columns can be created non-nullable. |
Current Catalog | adBStr | “” | adPropRead
adPropRequired |
The name of the current catalog. The consumer can use the CATALOGS schema rowset to enumerate catalogs. Jet databases do not have distinct catalogs. This field will be blank and the CATALOGS schema empty when using a Jet database. |
Data Source Name | adBStr | “” | adPropRead
adPropRequired |
The name of the datasource. |
Data Source Object Threading Model | adInteger | 1 | adPropRead
adPropRequired |
A bitmask specifying the threading models supported by the data source object. One of the following.
1: Free threaded 2: Apartment threaded 4: Single threaded |
DBMS Name | adBStr | MS Jet | adPropRead
adPropRequired |
The name of the product accessed by the provider. |
DBMS Version | adBStr | 04.00.0000 | adPropRead
adPropRequired |
The version of the product accessed by the provider. The version is of the form ##.##.#### in which the first two digits are the major version, the next two digits are the minor version, and the last four digits are the release version. |
GROUP BY Support | adInteger | 4 | adPropRead
adPropRequired |
The relationship between the columns in a GROUP BY clause and the non-aggregated columns in the select list. One of the following:
1: Not supported 2: The GROUP BY clause must contain all non-aggregated columns in the select list. 4: The GROUP BY clause must contain all non-aggregated columns in the select list. 8: The columns in the GROUP BY clause and the select list are not related. |
Heterogeneous Table Support | adInteger | 2 | adPropRead
adPropRequired |
A bitmask specifying whether the provider can join tables from different catalogs or providers. A combination of one or more of the following:
1: Different catalogs 2: Different providers |
Identifier Case Sensitivity | adInteger | 8 | adPropRead
adPropRequired |
Indicates how identifiers treat case. One of the following:
1: Identifiers in SQL are case insensitive and are stored in uppercase in the system catalog. 2: Identifiers in SQL are case insensitive and are stored in lowercase in the system catalog. 4: Identifiers in SQL are case sensitive and are stored in mixed case in the system catalog. 8: Identifiers in SQL are case insensitive and are stored in mixed case in the system catalog. |
Isolation Levels | adInteger | 4096 | adPropRead
adPropRequired |
A bitmask specifying the supported transaction isolation levels. A combination of zero or more of the following:
256: (adXactRead Uncommitted) A transaction can see uncommitted changes made by other trandactions. At this level of isolation, dirty reads, nonrepeatable reads, and phantoms are all possible. 4096: (adXactReadCommitted) A transaction can see changes made by other transactions until those transactions are committed. At this level of isolation, dirty reads are not possible, but nonrepeatable reads and phantoms are possible. 65536: (adXactRepeatableRead) A transaction is guaranteed not to see any changes made by other transactions in values it has already read. At this level of isolation, dirty reads are not possible, but phantoms are possible. 1048576: (adXactSerializable) All concurrent transactions are guaranteed to interact only in ways that produce the same effect as if each transaction were entirely executed one after the other. At this isolation level, dirty reads, nonrepeatable reads, and phantoms are not possible. |
Isolation Retention | adInteger | 9 | adPropRead
adPropRequired |
A bitmask specifying the supported transaction isolation retention levels. A combination of zero or more of the following:
1: The transaction may either preserve or dispose of isolation context across a retaining commit. 2: The transaction preserves its isolation context (that is, it preserves its locks, if that is how isolation is implemented) across a retaining commit. 4: The transaction is explicitly not to preserve isolation across a retaining commit. 8: The transaction may either preserve or dispose of isolation context across a retaining abort. 16: The transaction preserves its isolation context across a retaining abort. 32: The transaction is explicitly not to preserve isolation across a retaining abort. 64: The transaction may preserve or dispose of isolation context across a retaining commit or abort. 132: Isolation is preserved across both a retaining commit or abort. 256: Isolation is explicitly not to be retained across either a retaining commit or abort. 512: Optimistic concurrency control is to be used. For whatever isolation technology is in place (such as locking), it must be the case that other transactions' ability to make changes to the data and resources manipulated by this transaction is not in any way affected by the data read or updated by this transaction. That is, optimistic control is to be used for all data in the transaction. |
Maximum Index Size | adInteger | 255 | adPropRead
adPropRequired |
The maximum number of bytes allowed in the combined columns of an index. If there is no specified limit or the limit is unknown, this value is set to zero. |
Maximum Row Size | adInteger | 4049 | adPropRead
adPropRequired |
The maximum length of a single row in a table. If there is no specified limit or the limit is unknown, this value is set to zero. |
Maximum Row Size Includes BLOB | adBoolean | False | adPropRead
adPropRequired |
Indicates whether the maximum row size returned includes the length of all BLOB data. |
Maximum Tables in SELECT | adInteger | 0 | adPropRead
adPropRequired |
The maximum number of tables allowed in the FROM clause of a SELECT statement. If there is no specified limit or the limit is unknown, this value is set to zero. |
Multiple Parameter Sets | adBoolean | True | adPropRead
adPropRequired |
Indicates whether the provider supports multiple parameter sets per execution. |
Multiple Results | adInteger | 0 | adPropRead
adPropRequired |
A bitmask specifying whether the provider supports multiple results from the execution of a command. A combination of zero or more of the following:
0: Not supported 1: Supported 2: More than one Recordset created by the same command can exist concurrently. |
Multiple Storage Objects | adBoolean | False | adPropRead
adPropRequired |
Indicates whether the provider supports multiple open storage objects at the same time. |
Multi-Table Update | adBoolean | True | adPropRead
adPropRequired |
Indicates whether the provider can update Recordset objects derived from multiple tables. |
NULL Collation Order | adInteger | 4 | adPropRead
adPropRequired |
Indicates where null values are sorted in a list. One of the following:
1: Null values are sorted at the end of the list, regardless of sort order. 2: Null values are sorted at the high end of the list. 4: Null values are sorted at the low end of the list. 8: Null values are sorted at the start of the list, regardless of the sort order. |
NULL Concatenation Behavior | adInteger | 2 | adPropRead
adPropRequired |
Indicates how the data sources handles the concatenation of null-valued character data type columns with non-null-valued character data type columns. One of the following:
1: The result is null valued. 2: The result is the concatenation of the non-null-valued column or columns. |
OLE DB Version | adBStr | 02.10 | adPropRead
adPropRequired |
The version of OLE DB supported by the provider. |
OLE Object Support | adInteger | 1 | adPropRead
adPropRequired |
N/A |
Open Rowset Support | adInteger | 2 | adPropRead
adPropRequired |
Indicates support for opening objects.
0: The provider supports opening tables directly using adCmdTableDirect. 1: The provider supports opening an index directly. 2: The provider supports specifying both a table and an index. (Set the Recordset object's Index property and then use adCmdTableDirect.) 4: The provider supports opening a Recordset over a stored procedure by specifying the name of the stored procedure. |
ORDER BY Columns in Select List | adBoolean | False | adPropRead
adPropRequired |
Whether columns in an ORDER BY clause must be in the select list. |
Output Parameter Availability | adInteger | 1 | adPropRead
adPropRequired |
The time at which output parameter values become available. One of the following:
1: Not supported. 2: Immediately after command execution. 4: If a command returns a single result that is a Recordset, output parameter data is available at the time the Recordset is completely released. If a command returns multiple Recordset objects, output parameter data is available when all of the Recordset objects have been retrieved and released. |
Pass By Ref Accessors | adBoolean | False | adPropRead
adPropRequired |
N/A |
Persistent ID Type | adInteger | 4 | adPropRead
adPropRequired |
N/A |
Prepare Abort Behavior | adInteger | 1 | adPropRead
adPropRequired |
Indicates how aborting a transaction affects prepared commands. One of the following:
1: Aborting a transaction deletes prepared commands. The application must reprepare the commands before executing them. 2: Aborting a transaction preserves prepared commands. The application can reexecute commands without repreparing them. |
Prepare Commit Behavior | adInteger | 2 | adPropRead
adPropRequired |
Indicates how committing a transaction affects prepared commands. One of the following:
1: Committing a transaction deletes prepared commands. The application must reprepare the commands before executing them. 2: Committing a transaction preserves prepared commands. The application can reexecute commands without repreparing them. |
Procedure Term | adBStr | STORED QUERY | adPropRead
adPropRequired |
A character string with the data source vendor's name for a procedure. |
Provider Friendly Name | adBStr | Microsoft OLE DB Provider for Jet | adPropRead
adPropRequired |
The friendly name of the provider. |
Provider Name | adBStr | MSJETOLEDB40.DLL | adPropRead
adPropRequired |
The filename of the provider. |
Provider Version | adBStr | 04.00.2521 | adPropRead
adPropRequired |
The version of the provider. |
Read-Only Data Source | adBoolean | False | adPropRead
adPropRequired |
Whether the data source is read-only or updatable. |
Rowset Conversions on Command | adBoolean | True | adPropRead
adPropRequired |
N/A |
Schema Term | adBStr | Schema | adPropRead
adPropRequired |
The name the data source uses for a schema. |
Schema Usage | adInteger | 0 | adPropRead
adPropRequired |
A bitmask specifying how schema names can be used in text commands. A combination of zero or more of the following:
0: Schema names are not supported. 1: Schema names are supported in all data manipulation language statements. 2: Schema names are supported in all table definition statements. 4: Schema names are supported in all index definition statements. 8: Schema names are supported in all privilege definition statements. |
SQL Support | adInteger | 512 | adPropRead
adPropRequired |
A bitmask specifying the level of support for SQL. A combination of zero or more of the following:
0: SQL is not supported. 1: Minimum support as defined by the ODBC version 2.5 SQL conformance level. 2: Core support as defined by the ODBC version 2.5 SQL conformance level. 4: Extended support as defined by the ODBC version 2.5 SQL conformance level. 8: The provder supports the ANSI89 Integrity Enhancement Facility. 16: Entry level support 256:The provider supports the ODBC escape clause syntax. 32: FIPS Transitional support as defined by ANSI SQL 92. 64: Intermediate level support as defined by ANSI SQL 92. 132: Full support as defined by ANSI SQL 92. 256:The provider supports the ODBC escape clause syntax. 512: The provider supports the SQL dialect and parses the command text according to SQL rules, but does not support either the minimum ODBC level nor the ANSI SQL 92 Entry level. This level is not accumulative; providers that support at least the minimal ODBC Level or ANSI SQL 92 Entry Level do not set this bit. |
Structured Storage | adInteger | adPropRead
adPropRequired |
N/A | |
Subquery Support | adInteger | 63 | adPropRead
adPropRequired |
A bitmask specifying the predicates in text commands that support subqueries. A combination of zero or more of the following:
1: Correlated subqueries 2: Comparison 4: Exists 8: In 16: Quantified 32: Table |
Table Term | adBStr | Table | adPropRead
adPropRequired |
The name the data source uses for a table. |
Transaction DDL | adInteger | 16 | adPropRead
adPropRequired |
Indicates whether data definition language (DDL) statements are supported in transactions. One of the following:
0: Transactions are not supported. 1: Transactions can only contain DML statements. DDL statements within a transaction cause an error to occur. 2: Transactions can only contain DML statements. DDL statements within a transaction cause the transaction to be committed. 4: Transactions can only contain DML statements. DDL statements within a transaction are ignored. 8: Transactions can contain DDL and DML statements in any order. 16: Transactions can contain both DML and table or index modifications, but modifying a table or index within a transaction causes the table or index to be locked until the transaction completes. |
User Name | adBStr | “” | adPropRead
adPropRequired |
A character string with the name used in a particular database, which can be different than a login name. |
Jet OLEDB:Connection Control | adInteger | 2 | adPropRead
adPropWrite adPropRequired |
This property can be set at run-time to lock out new users from the database. This is useful for administrators who want to take the database off-line for maintenance.
1: (JET_CONNCONTROL_PASSIVESHUTDOWN) Prevent new users from accessing the database. 2: (JET_CONNCONTROL_NORMAL) Allow new users to access the database. |
Jet OLEDB:Exclusive Async Delay | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
The maximum time Jet can delay asynchronous writes to disk (in milliseconds) when the database is opened in multi-user mode. This property is ignored unless the Jet OLEDB:Flush Transaction Timeout property is 0. |
Jet OLEDB:Flush Transaction Timeout | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
The amount of time of inactivity before the asynchronous write cache is flushed to disk. This setting precludes the values for Shared Async Delay and Exclusive Async Delay. |
Jet OLEDB:Implicit Commit Sync | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether changes made in internal/implicit transactions are written in synchronous or asynchronous mode. |
Jet OLEDB:Lock Delay | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
Indicates how long to wait, in milliseconds, before attempting to acquire a lock after the previous attempt has failed. |
Jet OLEDB:Lock Retry | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
The number of times to repeat attempts to access a locked page. |
Jet OLEDB:Max Buffer Size | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
The largest amount of memory, in kilobytes, that Jet can use before it starts flushing changes to disk. |
Jet OLEDB:Max Locks Per File | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
The maximum number of locks that Jet can place on a database. The default for this property is 9500. |
Jet OLEDB:ODBC Command Time Out | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
Number of seconds before remote ODBC queries from Jet time out. |
Jet OLEDB:ODBC Parsing | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether Jet should attempt to parse ODBC SQL syntax or use only Jet's native syntax parser. |
Jet OLEDB:Page Locks to Table Lock | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
The number of pages that need to be locked in a transaction before Jet tries to promote the locks to an exclusive table lock. Zero implies that Jet will never promote the lock. |
Jet OLEDB:Page Timeout | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
The amount of time, in milliseconds, that Jet will wait before checking to see if its cache is out of date with the database file. |
Jet OLEDB:Recycle Long-Valued Pages | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Whether Jet should aggressively try to reclaim BLOB pages when they are freed. |
Jet OLEDB:Reset ISAM Stats | adBoolean | True | adPropRead
adPropWrite adPropRequired |
Determines if the ISAM stats schema rowset should reset its performance counters after returning performance information. |
Jet OLEDB:Sandbox Mode | adBoolean | False | adPropRead
adPropWrite adPropRequired |
N/A |
Jet OLEDB:Shared Async Delay | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
The maximum time Jet can delay asynchronous writes to disk (in milliseconds) when the database is opened in multi-user mode. This property is ignored unless the Jet OLEDB:Flush Transaction Timeout property is 0. |
Jet OLEDB:Transaction Commit Mode | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
Determines the mode that the Jet Engine uses when committing transactions to disk. The values for this property are a bitmask of zero or more of the following:
0: (JET_TCM_ASYNCFLUSH) Asynchronously write modified pages in the transaction to disk. 1: (JET_TCM_SYNCFLUSH) Synchronously flush modified pages in the transaction to disk. |
Jet OLEDB:User Commit Sync | adBoolean | True | adPropRead
adPropWrite adPropRequired |
Indicates whether changes made in user/explicit transactions are written in synchronous or asynchronous mode. |
ADO uses a number of the properties exposed in the Recordset object's Properties collection in order to open a Recordset. For instance, ADO will always set the Bookmarkable property to True if you request an updatable Recordset. As a result, ADO may overwrite existing values for these properties.
In general, most of these properties are specific to the behavior of the underlying OLE DB rowset and are not of significant interest or use to the ADO programmer. Of the properties listed below, the Microsoft Jet Provider–specific properties and the Append-Only Rowset property are of the most use to the ADO/Microsoft Jet programmer.
Property Name | Type | Default | Attributes | Description |
Access Order | ||||
Append-Only Rowset | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the Recordset will initially exclude existing records. It prevents editing or deleting existing records in the table or query results. |
Blocking Storage Objects | adBoolean | True | adPropRead
adPropRequired |
Indicates whether storage objects (adLongVarWChar or adLongBinary fields) may prevent the use of some methods. |
Bookmark Type | adInteger | 1 | adPropRead
adPropRequired |
The bookmark type supported by the Recordset. One of the following:
1: The bookmark type is numeric. Numeric bookmarks are based upon a row property that is not dependent on the values of the row's columns. The validity of numeric bookmarks is not changed by modifying the rows columns. 2: The bookmark type is key. Key bookmarks are based on the values of one or more of the row's columns. A key bookmark may be left dangling if the key values of the corresponding row are changed. |
Bookmarkable | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the Recordset supports bookmarks. |
Bookmarks Ordered | adBoolean | False | adPropRead
adPropRequired |
Indicates whether bookmarks can be compared to determine the relative position of their records in a Recordset. |
Cache Deferred Columns | adBoolean | False | adPropRead
adPropRequired |
Indicates whether the provider caches the value of a deferred column when the consumer first gets a value from that column. |
Change Inserted Rows | adBoolean | True | adPropRead
adPropRequired |
Indicates whether new rows can be changed or modified. |
Column Privileges | adBoolean | True | adPropRead
adPropRequired |
Indicates whether access rights are restricted on a column-by-column basis. If this property is True, the provider will not execute a query that would specify a column for which the user has no read access rights. |
Column Set Notification | adInteger | 3 | adPropRead
adPropRequired |
A bitmask specifying whether the notification phase is cancelable. A combination of zero or more of the following:
1: Ok to do 2: About to do 4: Synch after |
Column Writable | adBoolean | True | adPropRead
adPropRequired |
Indicates whether a particular column is writable or not. This information can also be obtained through the Field object's Attributes property. |
Defer Column | adBoolean | True | adPropRead
adPropRequired |
N/A |
Delay Storage Object Updates | adBoolean | True | adPropRead
adPropRequired |
In delayed update mode, storage objects are also used in delayed update mode. Changes to the object are not transmitted to the data source until Update is called. |
Fetch Backwards | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the Recordset can fetch backwards. |
Hold Rows | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the Recordset allows the user to retrieve more records or change the position while holding previously retrieved records with pending changes. |
Immobile Rows | adBoolean | False | adPropRead
adPropRequired |
If the Recordset is ordered (table-type with a defined index), inserted and updated rows (when one or more of the columns in the ordering criteria are updated) obey the ordering criteria. If the Recordset is not ordered, then inserted rows are not guaranteed to appear in a determinate position and the position of updated rows is not changed. |
IAccessor
IColumnsInfo IColumnsRowset IConnectionPointContainer IConvertType ILockBytes IRowset IRowsetChange IRowsetCurrentIndex IRowsetIdentity IRowsetIndex IRowsetInfo IRowsetLocate IRowsetResynch IRowsetScroll IRowsetUpdate ISequentialStream IStorage IStream ISupportErrorInfo |
adBoolean | N/A | adPropRead
adPropRequired |
N/A |
Literal Bookmarks | adBoolean | False | adPropRead
adPropRequired |
Bookmarks cannot be compared as a sequence of bytes. |
Literal Row Identity | adBoolean | False | adPropRead
adPropRequired |
N/A |
Lock Mode | adInteger | 1 | adPropRead
adPropWrite adPropRequired |
The level of locking performed by the recordset. One of the following:
1: The provider is not required to lock rows at any time to ensure successful updates. Updates may fail when sent to the server for reasons of concurrency. 2: The provider uses the minimum level of locking necessary to ensure that changes successfully written to a single row returned by the most recent fetch will not fail due to a concurrency violation if Update is called before any additional rows are retrieved. ADO sets this property (among others) based on the LockType of the Recordset. |
Maximum Open Rows | adInteger | 1 | adPropRead
adPropRequired |
The maximum number of rows that can be active at the same time. This limit does not reflect resource limitations such as RAM. |
Maximum Pending Rows | adInteger | 1 | adPropRead
adPropRequired |
The maximum number of rows that can have pending changes at the same time. This limit does not reflect resource limitations such as RAM. |
Maximum Rows | adInteger | 0 | adPropRead
adPropRequired |
The maximum number of rows that can be returned in a Recordset. If there is no limit, this value is zero. |
Memory Usage | adInteger | 0 | adPropRead
adPropRequired |
The estimated amount of memory that can be used by a Recordset. If it is 0, the Recordset can use unlimited memory. If it is between 1 and 99 inclusive, the Recordset can use the specified percentage of total available virtual memory (physical and page file). If it is greater than or equal to 100, the Recordset can use up to the specified number of kilobytes in memory. |
Notification Granularity | adInteger | 2 | adPropRead
adPropRequired |
Indicates when the consumer is notified for methods that operate on multiple rows. One of the following:
1: The consumer is notified separately for each phase for each row. A cancellation affects a single row; it does not affect the other rows, and notifications are still sent for those rows. 2: The consumer is notified once for all rows that succeed and once for all rows that fail. This separation can occur at each phase where a change can fail. |
Notification Phases | adInteger | 27 | adPropRead
adPropRequired |
A bitmask specifying the notification phases supported by the provider. These are used internally by ADO to support EventNotifications. |
Objects Transacted | adBoolean | True | adPropRead
adPropRequired |
Indicates whether any object created on the specified column is transacted. |
Others' Inserts Visible | adBoolean | False | adPropRead
adPropRequired |
Indicates whether the Recordset can see records inserted by others. |
Others' Changes Visible | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the Recordset can see updates and deletes made by others. |
Own Changes Visible | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the Recordset can see its own updates and deletes. |
Own Inserts Visible | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the Recordset can see its own inserts. |
Preserve on Abort | adBoolean | False | adPropRead
adPropRequired |
Indicates whether after aborting a transaction, the Recordset remains active. That is, whether it is possible to fetch new rows, update, delete, and insert rows, and so on. |
Preserve on Commit | adBoolean | True | adPropRead
adPropRequired |
Indicates whether after committed a transaction, the Recordset remains active. That is, whether it is possible to fetch new rows, update, delete, and insert rows, and so on. |
Quick Restart | adBoolean | True | adPropRead
adPropRequired |
N/A |
Reentrant Events | adBoolean | False | adPropRead
adPropRequired |
Indicates whether the provider supports reentrancy on callbacks during notifications. |
Remove Deleted Rows | adBoolean | True | adPropRead
adPropRequired |
Indicates whether the provider removes records it detects as having been deleted from the Recordset. That is, retrieving a block of records that formerly included a deleted record does not include the deleted record. |
Report Multiple Changes | adBoolean | True | adPropRead
adPropRequired |
Indicates whether an update or delete can affect multiple records and the provider can detect that multiple records have been updated or deleted. |
Return Pending Inserts | adBoolean | False | adPropRead
adPropRequired |
Indicates whether methods that fetch rows can return pending insert rows. |
Row Delete Notification
Row First Change Notification Row Insert Notification Row Resynchronization Notification Row Undo Change Notification Row Undo Delete Notification Row Undo Insert Notification Row Update Notification Rowset Fetch Position Change Notification Rowset Release Notification |
adInteger | 3 | adPropRead
adPropRequired |
A bitmask specifying whether the notification phase is cancelable. |
Row Privileges | adBoolean | False | adPropRead
adPropRequired |
Indicates whether access rights are restricted on a row-by-row basis. If the Recordset supports updates, some, but not all of the rows may be updated. |
Row Threading Model | adInteger | 1 | adPropRead
adPropRequired |
A bitmask specifying the threading models supported by the Recordset. A combination of one or more of the following:
1: Free Threaded 2: Apartment Threaded 4: SingleThreaded |
Scroll Backwards | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the Recordset can scroll backward. |
Server Data on Insert | adBoolean | True | adPropRead
adPropWrite adPropRequired |
Indicates whether at the time an insert or update is sent to the data source the provider retrieves data from the data source to update the local row cache. |
Skip Deleted Bookmarks | adBoolean | False | adPropRead
adPropRequired |
N/A |
Strong Row Identity | adBoolean | False | adPropRead
adPropRequired |
N/A |
Updatability | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
A bitmask specifying the supported methods for modifying the Recordset.
1: Modifying an existing record is supported. 2: Deleting records is supported. 4: Inserting records is supported. |
Use Bookmarks | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the Recordset supports bookmarks. |
Jet OLEDB:Bulk Transactions | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
Determines if SQL bulk operations are transacted. This property determines if the current command execution is transacted.
0: (JET_BULKTRAN_DEFAULT) Default 1: (JET_BULKTRAN_NOBULK) Use partial updates like Access 2: (JET_BULKTRAN_BULK) Use no partial behavior. All or nothing. |
Jet OLEDB:Enable Fat Cursors | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether Microsoft Jet should cache multiple rows when populating the cursor for remote row sources. |
Jet OLEDB:Fat Cursor Cache Size | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
Number of rows which should be cached when using remote data source row caching. Only used if Jet OLEDB:Enable Fat Cursors is True. |
Jet OLEDB:Grbit Value | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
N/A |
Jet OLEDB:Inconsistent | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Allows inconsistent updates on query results. Equivalent to DAO's dbInconsistent flag. |
Jet OLEDB:Locking Granularity | adInteger | 2 | adPropRead
adPropWrite adPropRequired |
Determines if a table is opened using row-level locking. This property is ignored unless Jet OLEDB:Database Locking Mode is set to 1 (JET_LOCKMODE_ROW). |
Jet OLEDB:ODBC Pass-Through Statement | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Tells Microsoft Jet that SQL text in a Command object should be passed to the backend unaltered. |
Jet OLEDB:Partial Bulk Ops | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
Th behavior of Microsoft Jet when SQL DML bulk operations fail.
0: (JET_BULKPARTIAL_DEFAULT) Default 1: (JET_BULKPARTIAL_PARTIAL) Allow partial completion of the bulk operation. Could result in inconsistent changes since operations on some rows could succeed and others could fail. 2: (JET_BULKPARTIAL_NOPARTIAL) Fail the bulk operation on a single error. |
Jet OLEDB:Pass Through Query Bulk-Op | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the Pass-Through Query is a bulk operation (non-row-returning). |
Jet OLEDB:Pass Through Query Connect String | adBStr | "" | adPropRead
adPropWrite adPropRequired |
Indicates the Microsoft Jet Connect String to be used to connect to the remote data source. This property is ignored unless the Jet OLEDB:ODBC Pass-Through Statement is True. |
Jet OLEDB:Stored Query | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Whether the CommandText of the Command object should be interpreted as a stored query instead of an SQL command. |
Jet OLEDB:Use Grbit | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
N/A |
Jet OLEDB:Validate Rules On Set | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether Microsoft Jet Validation Rules are evaluated when columns are set or when changes are being committed to the database. |
Property Name | Type | Default | Attributes | Description |
Temporary Table | adBoolean | False | adPropRead
adPropRequired |
Indicates whether the table is destroyed when the connection is released. |
Jet OLEDB:Cache Link Name/Password | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the User Id and password used to open the external database are saved with the connection information.
This property is ignored if Jet OLEDB:Create Link is False. |
Jet OLEDB:Create Link | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the table is a linked table (formerly known as an attached table).
A linked table is a table in another database linked to a Microsoft Jet database. Data for linked tables remains in the external database where it can be manipulated by other applications. |
Jet OLEDB:Exclusive Link | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the external database is opened exclusively when the linked table is created or used. The value is True if the external database will be opened exclusively and False if the external database will be opened for multi-user access.
This property is ignored if Jet OLEDB:Create Link is False. |
Jet OLEDB:Link Datasource | adBStr | "" | adPropRead
adPropWrite adPropRequired |
The external database to link to. The default value is an empty string ("").
This property is ignored if Jet OLEDB:Create Link is False. |
Jet OLEDB:Link Provider String | adBStr | "" | adPropRead
adPropWrite adPropRequired |
Additional connection options used when connecting to the external database. It is similar to the Extended Properties property in the Connection's Properties collection. See the section on External Databases for more information on options that can be specified. |
Jet OLEDB:Remote Table Name | adBStr | "" | adPropRead
adPropWrite adPropRequired |
The name of the table to link to. This may be different than the local name of the table/link as specified in the Table object's Name property. The default value is an empty string ("").
This property is ignored if Jet OLEDB:Create Link is False. |
Jet OLEDB:Table Hidden In Access | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the Table will be hidden in the Microsoft Access user interface. |
Jet OLEDB:Table Validation Rule | adBStr | "" | adPropRead
adPropWrite adPropRequired |
An expression used to validate data when a record is changed or added to the table. This property is read-only if Jet OLEDB:Create Link is True. |
Jet OLEDB:Table Validation Text | adBStr | "" | adPropRead
adPropWrite adPropRequired |
The message to be displayed to the user when the validation rule is violated. This property is read-only if Jet OLEDB:Create Link is True. |
Property Name | Type | Default | Attributes | Description |
AutoIncrement | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the values of the column are automatically incremented as a new record is added. |
Default | adEmpty1 | Empty | adPropRead
adPropWrite adPropRequired |
The default value for the column. It can be either text or an expression. |
Description | adBStr | "" | adPropRead
adPropWrite adPropRequired |
A description of the column. |
Fixed Length | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the column is fixed length or variable length. |
Increment | adInteger | 1 | adPropRead
adPropWrite adPropRequired |
The value by which an autoincrement column is incremented. |
Nullable | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the column can contain a null value. |
Seed | adInteger | 1 | adPropRead
adPropWrite adPropRequired |
The value that will be used in an autoincrement column for the next added record. |
Jet OLEDB:Allow Zero Length | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether a zero-length string ("") can be inserted into this field. Ignored for data types that are not strings. |
Jet OLEDB:AutoGenerate | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether a GUID should be automatically generated for the column. This property is ignored unless the column type is adGUID. |
Jet OLEDB:Column Validation Rule | adBStr | "" | adPropRead
adPropWrite adPropRequired |
Expression used to validate the data in a field when it's changed or added to a table. The expression must be in the form of an SQL WHERE clause without the WHERE reserved word. |
Jet OLEDB:Column Validation Text | adBStr | "" | adPropRead
adPropWrite adPropRequired |
The text that will be displayed if a user tries to enter a value that does not satisfy the validation rule. |
Jet OLEDB:Compressed UNICODE Strings | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether Microsoft Jet will compress UNICODE strings on the disk. Ignored if the database is not a Microsoft Jet version 4.0 database. |
Jet OLEDB:Hyperlink | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the data in the column is a hyperlink. This property is ignored unless the column's data type is adLongVarWChar. |
Jet OLEDB:IISAM Not Last Column | adBoolean | False | adPropRead
adPropWrite adPropRequired |
For Installable-ISAMs, this property informs the I-ISAM that there are more columns that are going to be added to the table after this one. If you are using ITableDefinition::AddColumn or ITableDefintion::CreateTable, it is required that you set this property for every column except the last column |
Jet OLEDB:One BLOB per Page | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether the data in the column is stored on a single page (True) or can share database pages (False) to conserve space. Ignored unless the column's data type is adLongVarBinary. |
1 Treat the property "Default" as though the type were really adVariant.
Property Name | Type | Default | Attributes | Description |
Auto-Update | adBoolean | True | adPropRead
adPropRequired |
Indicates whether the index is maintained automatically when changes are made to the corresponding base table. |
Clustered | adBoolean | False | adPropRead
adPropRequired |
Indicates whether the index is clustered. |
Fill Factor | adInteger | 100 | adPropRead
adPropRequired |
The storage utilization factor of page nodes during the creation of the index. The value ranges from 1 to 100 representing the percentage of use of an index node. |
Initial Size | adInteger | 4196 | adPropRead
adPropRequired |
The total number of bytes allocated to this structure at creation time. |
Null Collation | adInteger | 4 | adPropRead
adPropRequired |
Indicates that null valuess in the index are collated at the low end of the list. |
Null Keys | adInteger | 0 | adPropRead
adPropWrite adPropRequired |
This property corresponds to the IgnoreNulls property of the Index object. See the ADOX documentation for a description of this property. |
Primary Key | adBoolean | 0 | adPropRead
adPropWrite adPropRequired |
Indicates whether the index represents the primary key on the table. |
Sort Bookmarks | adBoolean | False | adPropRead
adPropRequired |
Indiates whether the index sorts repeated keys by bookmark. |
Index Type | adInteger | 1 | adPropRead
adPropRequired |
The type of the index. One of the following:
1: The index is a B+-tree 2: The index is a hash file using linear or extensible hashing. 3: The index is a content index. 4: The index is some other type of index. |
Unique | adBoolean | False | adPropRead
adPropWrite adPropRequired |
Indicates whether index keys must be unique. |
Temporary Index | adBoolean | False | adPropRead
adPropRequired |
Indicates whether the index is a temporary index. That is, the index is destroyed when the session is released. |