Записи и потоки
В настоящее время ADO предоставляет объект Recordset в качестве основного средства доступа к информации в источниках данных, таких как реляционные базы данных. Однако некоторые поставщики поддерживают объекты записи и поток в качестве альтернативных или дополнительных объектов, с помощью которых можно управлять данными от поставщиков. Для получения конкретной информации о поведении записи ознакомьтесь с документацией вашего поставщика.
Записи
объекты Record фактически функционируют как однострочные наборы записей . Однако Records имеют ограниченные функциональные возможности по сравнению с наборами записей и имеют различные свойства и методы. Источником данных в объекте записи может быть команда, возвращающая одну строку данных от поставщика. Использование объектов Record, а не наборов записей, для получения результатов из запроса, возвращающего одну строку данных, устраняет затраты на создание экземпляра более сложного объекта Recordset.
объекты записи могут служить другой задачей, особенно с поставщиками для источников данных, отличных от традиционных реляционных баз данных, таких как поставщик Microsoft OLE DB для интернет-публикации. Большая часть информации, которая должна быть обработана, существует не в виде таблиц в базах данных, а в виде сообщений в системах электронной почты и файлов в современных файловых системах. Объекты записи и Stream упрощают доступ к информации, хранящейся в источниках, отличных от реляционных баз данных.
Объект Record может представлять и управлять данными, такими как каталоги и файлы в файловой системе или папки и сообщения в почтовой системе. Для этих целей источником записи может быть текущая строка открытого набора записей , абсолютный URL-адрес или относительный URL-адрес вместе с открытым объектом подключения .
Как правило, набор записей можно использовать для представления контейнера или родительского элемента в иерархии, например папки или каталога. Запись может быть использована для возврата определенных сведений об одном узле в родительском контейнере, например, файле или документе. Основная причина, по которой записи используются для представления этой информации, - разнородность источников данных. Это означает, что каждая запись может иметь разный набор и количество полей. Традиционные наборы записей , содержащие строки из базы данных, являются однородными, что означает, что каждая строка имеет одинаковое число и тип полей.
Дополнительные сведения об использовании объекта записи для обработки этих разнородных данных от поставщиков, таких как поставщик публикации в Интернете, см. в использование ADO для публикации в Интернете.
Потоки
Объект Stream позволяет читать, записывать и управлять потоком данных. Этот поток байтов может быть текстовым или двоичным и ограничен размером только системными ресурсами. Как правило, объекты ADO Stream используются в следующих целях:
Чтобы содержать данные набора записей , сохраненных в формате XML. Эти потоки XML из сохраненных наборов записей могут быть использованы в качестве источника при открытии нового набора записей . Дополнительные сведения см. в разделе Streams и сохраняемость.
Использование CommandStreams для выполнения против поставщика в качестве альтернативы CommandText. Например, XML UpdateGrams можно использовать в качестве источника команды для поставщика Microsoft OLE DB для SQL Server.
Для получения результатов от поставщика в формате, отличном от Recordset, таких как XML-результаты от поставщика Microsoft OLE DB для SQL Server. Дополнительные сведения см. в разделе получение наборов результатов в потоки.
Чтобы содержать текст или байты, составляющие файл или сообщение, это обычно используется с поставщиками, такими как поставщик Microsoft OLE DB для публикации в Интернете. Дополнительные сведения об использовании объектов Stream см. в разделе Using ADO for Internet Publishing.
Объект Stream можно открыть на:
Простой файл, указанный с URL-адресом.
Поле record или Recordset, содержащее объект Stream.
Поток по умолчанию объекта записи или набора данных , представляющего каталог или составной файл.
Поле ресурса, содержащее URL-адрес простого файла.
Нет конкретного источника вообще. В этом случае объект Stream открывается в памяти. Данные можно записать в него, а затем сохранить в другом Stream или файле.
Поле BLOB в наборе данных .
Этот раздел содержит следующие разделы.