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 defined as described in the following table. These flags can be combined except as noted.
DBPROPFLAGS enumerated type
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 flags DBPROPFLAGS_COLUMN, DBPROPFLAGS_DATASOURCE, DBPROPFLAGS_DATASOURCECREATE, DBPROPFLAGS_DATASOURCEINFO, DBPROPFLAGS_DBINIT, DBPROPFLAGS_INDEX, DBPROPFLAGS_ROWSET, DBPROPFLAGS_SESSION, 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 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. This flag can only be returned for rowset properties whose description indicates Column? Y. |
DBPROPFLAGS_READ | A method can get the property's value. For a list of methods that get properties, see "Getting Property Values" 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" in this chapter. |
DBPROPFLAGS_REQUIRED | 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 it is set, the consumer must specify a value for the property before calling IDBInitialize::Initialize to initialize the data source or enumerator. If it is not set, the data source or enumerator can be initialized even if the consumer does not specify a value for the property before calling IDBInitialize::Initialize. Whether or not a property is required for a particular provider may vary depending on other properties specified (for example, DBPROP_DATASOURCE), or on other provider-specific factors. Providers should only mark as required those properties that are always required for that instance of the DSO. 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:: |