共用方式為


在提供者內設定屬性

更新:2007 年 11 月

為您要的屬性尋找屬性群組和屬性 ID。如需詳細資訊,請參閱《OLE DB 程式設計人員參考》中的 OLE DB 屬性

在由精靈產生的提供者程式碼中,尋找對應至屬性群組的屬性對應 屬性群組的名稱通常都對應至物件的名稱。命令和資料列集屬性可在命令或資料列集內找到,資料來源和初始化屬性可在資料來源物件內找到。

在屬性對應內加入 PROPERTY_INFO_ENTRY_EX 巨集。PROPERTY_INFO_ENTRY_EX 需要四個參數:

  • 對應至您的屬性的屬性 ID。您必須移除屬性名稱前面的 7 個字元 ("DBPROP_")。例如,如果您想加入 DBPROP_MAXROWS,就將 MAXROWS 當做第一個項目來傳遞。如果這是一個自訂屬性,便需傳遞完整的 GUID 名稱 (例如,DBMYPROP_MYPROPERTY)。

  • 屬性的變數型別 (《OLE DB 程式設計人員參考》中的 OLE DB 屬性)。輸入對應至資料型別的 VT_ 型別 (例如 VT_BOOLVT_I2)。

  • 指示屬性是否可讀取、可寫入和其所屬群組的旗標。例如,下列程式碼指示資料列集群組所屬的讀取/寫入屬性:

    DBPROPFLAGS_ROWSET | DBPROPFLAGS_READ | DBPROPFLAGS_WRITE
    
  • 屬性的基本數值。例如,對布林 (Boolean) 型別而言可能是 VARIANT_FALSE,對於整數型別而言可為零。除非屬性變更,否則屬性就會有這個值。

    注意事項:

    有些屬性會連接或鏈結至其他屬性,例如書籤或更新。當消費者將一個屬性設定為 True 時,可能也設定了另一個屬性。OLE DB 提供者樣板以 CUtlProps::OnPropertyChanged 方法支援這種行為。

Microsoft OLE DB 提供者所忽略的屬性

Microsoft OLE DB 提供者忽略以下 OLE DB 屬性:

  • DBPROP_MAXROWS 僅適用於唯讀提供者 (也就是說,DBPROP_IRowsetChange 和 DBPROP_IRowsetUpdate 是 False),否則將不會支援此屬性。

  • 忽略 DBPROP_MAXPENDINGROWS,提供者指定其自身的限制。

  • 忽略 DBPROP_MAXOPENROWS,提供者指定其自身的限制。

  • 忽略 DBPROP_CANHOLDROWS,提供者指定其自身的限制。

請參閱

概念

使用 OLE DB 提供者樣板