MDAC 2.5 SDK - OLE DB Programmer's Reference
Chapter 14: Properties


 

DBPROPFLAGS Enumerated Type

Providers use DBPROPFLAGS values to describe the property, such as the group to which a property belongs and whether the property can be read from or written to. DBPROPFLAGS is used in the DBPROPINFO structure.

The DBPROPFLAGS enumerated type is described in the following table. These flags can be combined except as noted.

Value Description
DBPROPFLAGS_NOTSUPPORTED The property is not supported, or the consumer has requested information about properties not in the Initialization property group and the data source object is uninitialized.

If this value is returned, it cannot be combined with any of the other DBPROPFLAGS values.

DBPROPFLAGS_COLUMN The property belongs to the Column property group.

The following flags are mutually exclusive:

DBPROPFLAGS_COLUMN
DBPROPFLAGS_DATASOURCE
DBPROPFLAGS_DATASOURCECREATE
DBPROPFLAGS_DATASOURCEINFO
DBPROPFLAGS_DBINIT, DBPROPFLAGS_INDEX
DBPROPFLAGS_ROWSET
DBPROPFLAGS_SESSION
DBPROPFLAGS_TABLE

For a description of property groups, see "Property Groups," earlier in this chapter.

DBPROPFLAGS_DATASOURCE The property belongs to the Data Source property group.
DBPROPFLAGS_DATASOURCECREATE The property belongs to the Data Source Creation property group.
DBPROPFLAGS_DATASOURCEINFO The property belongs to the Data Source Information property group.
DBPROPFLAGS_DBINIT The property belongs to the Initialization property group.
DBPROPFLAGS_INDEX The property belongs to the Index property group.
DBPROPFLAGS_ROWSET The property belongs to the Rowset property group.
DBPROPFLAGS_SESSION The property belongs to the Session property group.
DBPROPFLAGS_TABLE The property belongs to the Table property group.
DBPROPFLAGS_COLUMNOK This flag applies only to properties in the Rowset property group and can be set only when DBPROPFLAGS_ROWSET is set.

If it is set, the property can be applied to all columns in the rowset or to a specific column in the rowset. Whether the property applies to a specific column or to all columns depends on the value of colid in the DBPROP structures used to set or get the property value.

If it is not set, the property applies to all columns in the rowset.

Setting this flag means the provider supports the property on a per-column basis.

DBPROPFLAGS_READ A method can get the property's value. For a list of methods that get properties, see "Getting Property Values," earlier in this chapter.
DBPROPFLAGS_WRITE A method can set the property's value. For a list of methods that set properties, see "Setting Property Values," earlier in this chapter.
DBPROPFLAGS_REQUIRED The property must be set.

When returned by IDBProperties::GetPropertyInfo, this flag applies only to properties in the Initialization property group and can be set only when DBPROPFLAGS_DBINIT is set.

If this flag is set, the consumer must specify a value for the property before calling IDBInitialize::Initialize to initialize the data source or enumerator.

Whether or not a property is required for a particular provider can vary depending on other properties specified (for example, DBPROP_DATASOURCE) or on other provider-specific factors. Providers should mark as required only those properties that are always required for that instance of the data source object. Consumers should be aware that, depending on other factors, such as the combination of initialization properties specified, additional properties not marked as required may need to be specified.

When returned by IDBDataSourceAdmin::GetCreationProperties, this flag applies to properties in the Data Source Creation and Session property groups and properties in the Initialization property group that can be used in data source object creation. If it is set, the consumer must specify a value for the property when calling IDBDataSourceAdmin::CreateDataSource. If it is not set, the data source object can be created even if the consumer does not specify a value for the property.

DBPROPFLAGS_VIEW The property belongs to the View property group.