記錄和資料流

ADO 目前提供 Recordset 物件作為存取資料來源中資訊的主要方法,例如關係資料庫。 不過,有些提供者支援 RecordStream 物件做為替代或互補物件,以便處理提供者的資料。 如需 記錄 行為的詳細資訊,請參閱提供者的檔。

記錄

記錄 物件基本上會以單列 Recordset的形式運作。 不過, 相較于 Recordset,Record具有 有限的功能,而且它們有不同的屬性和方法。 Record 物件中資料的來源可以是從提供者傳回一個資料列的命令。 使用 Record 物件而非 Recordset 物件來接收來自傳回一個資料列之查詢的結果,可消除具現化更複雜的 Recordset 物件的額外負荷。

記錄 物件可以提供另一個用途,特別是與傳統關係資料庫以外的資料來源提供者搭配使用,例如 Microsoft OLE DB Provider for Internet Publishing。 必須處理的大部分資訊都存在,不是資料庫中的資料表,而是電子郵件系統和新式檔案系統中檔案中的訊息。 RecordStream物件有助於存取儲存在關係資料庫以外的來源中的資訊。

Record物件可以代表和管理資料,例如檔案系統中的目錄和檔案,或電子郵件系統中的資料夾和郵件。 針對這些用途, Record 的來源可以是開啟 Recordset的目前資料列、絕對 URL 或與開啟的 Connection 物件搭配的相對 URL。

一般而言, Recordset 可用來代表階層中的容器或父系,例如資料夾或目錄。 Record可用來傳回父容器中一個節點的特定資訊,例如檔案或檔。 記錄是用來表示這類資訊的主要原因,就是這些資料來源是異質性。 這表示每個 Record 可能有不同的欄位集和數目。 包含資料庫資料列的傳統 記錄集 是同質的,這表示每個資料列都有相同的欄位數目和類型。

如需使用 Record 物件處理來自網際網路發佈提供者這類提供者之異質資料的詳細資訊,請參閱 使用 ADO 進行網際網路發佈

串流

Stream物件提供讀取、寫入和管理位元組資料流程的方法。 此位元組資料流程可能是文字或二進位,而且只受限於系統資源的大小。 一般而言,ADO Stream 物件會用於下列用途:

  • 包含以 XML 格式儲存的 Recordset 資料。 當開啟新的Recordset時,這些來自已儲存Recordset的 XML 資料流程可以當做來源使用。 如需詳細資訊,請參閱 串流和持續性

  • 若要包含要針對提供者執行的 CommandStreams ,作為 CommandText的替代方案。 例如,XML UpdateGrams 可以做為針對 Microsoft OLE DB Provider for SQL Server 命令的來源。

  • 若要以Recordset以外的格式接收提供者的結果,例如來自 Microsoft OLE DB Provider for SQL Server的 XML 結果。 如需詳細資訊,請參閱 將結果集擷取至資料流程

  • 若要包含組成檔案或訊息的文字或位元組,通常與 Microsoft OLE DB Provider for Internet Publishing 等提供者搭配使用。 如需使用 Stream 物件的詳細資訊,請參閱 使用 ADO 進行網際網路發佈

Stream物件可以在:

  • 使用 URL 指定的簡單檔案。

  • RecordRecordset的欄位,其中包含Stream物件。

  • 代表目錄或複合檔案之Record 或 Recordset物件的預設資料流程。

  • 包含簡單檔案 URL 的資源欄位。

  • 完全沒有特定來源。 在此情況下, Stream 物件會在記憶體中開啟。 資料可以寫入其中,然後儲存在另一個 Stream 或檔案中。

  • Recordset中的 BLOB 欄位。

此章節包含下列主題。