Поделиться через


Метод сохранения

Сохраняет набор записей в файле или объекте Stream .

Синтаксис

  
recordset.Save Destination, PersistFormat  

Параметры

Назначение
Необязательно. Вариант, представляющий полное имя файла, в котором должен быть сохранен набор записей, или ссылку на объект Stream.

PersistFormat
Необязательно. Значение PersistFormatEnum , указывающее формат сохранения набора записей (XML или ADTG). Значением по умолчанию является adPersistADTG.

Замечания

Метод Save Method можно вызвать только в открытом наборе записей. Используйте метод Open Method (ADO Recordset) для последующего восстановления набора записей из назначения.

Если свойство filter Property действует для набора записей, сохраняются только строки, доступные в фильтре. Если набор записей является иерархическим, текущий дочерний набор записей и его дочерние элементы сохраняются, включая родительский набор записей. Если вызывается метод Save дочернего набора записей , дочерний и все его дочерние элементы сохраняются, но родитель не является.

При первом сохранении набора записейможно не указывать место назначения. Если опустить назначение, новый файл будет создан с именем, заданным значением свойства Source набора записей.

Опустить назначение при последующем вызове "Сохранить " после первого сохранения или возникнет ошибка во время выполнения. При последующем вызове сохранения с новым назначениемнабор записей сохраняется в новом месте назначения. Однако новый пункт назначения и исходный пункт назначения будут открыты.

Сохранить не закрывает набор записей или назначение, чтобы продолжить работу с набором записей и сохранить последние изменения. Назначение остается открытым до закрытия набора записей .

По соображениям безопасности метод Save позволяет использовать только низкие и настраиваемые параметры безопасности из скрипта, выполняемого Microsoft Internet Explorer.

Если метод Save вызывается во время выполнения асинхронной операции набора записей , выполнения или обновления, сохранение ожидает завершения асинхронной операции.

Записи сохраняются начиная с первой строки набора записей . После завершения метода Save позиция текущей строки перемещается на первую строку набора записей .

Для получения наилучших результатов задайте свойству CursorLocation Property (ADO)значение adUseClient с помощью Save. Если поставщик не поддерживает все функциональные возможности, необходимые для сохранения Набор записей объектов, служба курсоров предоставит эту функцию.

Если набор записей сохраняется с установленным значением свойства CursorLocation на adUseServer, возможность обновления набора записей ограничена. Как правило, разрешены только одно табличные обновления, вставки и удаления (зависят от функциональности поставщика). Метод Resync также недоступен в этой конфигурации.

Замечание

Сохранение набора записей с полями типа adVariant, adIDispatch или adIUnknown не поддерживается ADO и может привести к непредсказуемым результатам.

Только фильтры в виде строк условий (например, OrderDate > '12/31/1999') влияют на содержимое сохраненного набора записей. Фильтры, созданные с помощью массива закладок или используя значение из FilterGroupEnum , не влияют на содержимое сохраненного набора записей. Эти правила применяются к наборам записей, созданным с помощью клиентских или серверных курсоров.

Так как параметр Destination может принимать любой объект, поддерживающий интерфейс OLE DB IStream, можно сохранить набор записей непосредственно в объект ASP Response. Дополнительные сведения см. в сценарии сохраняемости набора записей XML.

Вы также можете сохранить набор записей в формате XML в экземпляре объекта DOM MSXML, как показано в следующем коде Visual Basic:

Dim xDOM As New MSXML.DOMDocument  
Dim rsXML As New ADODB.Recordset  
Dim sSQL As String, sConn As String  
  
sSQL = "SELECT customerid, companyname, contactname FROM customers"  
sConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Northwind.mdb"  
rsXML.Open sSQL, sConn  
rsXML.Save xDOM, adPersistXML   'Save Recordset directly into a DOM tree.  
...  

Замечание

При сохранении иерархических наборов записей (фигур данных) в формате XML применяются два ограничения. Невозможно сохранить в XML, если иерархический набор записей содержит ожидающие обновления, и нельзя сохранить параметризованный иерархический набор записей.

Набор записей, сохраненный в формате XML, сохраняется с помощью формата UTF-8. Если такой файл загружается в ADO Stream, объект Stream не попытается открыть набор записей из потока, если только свойство Charset потока не задано соответствующим значением для формата UTF-8.

Применимо к

См. также

Пример сохранения и открытия методов (VB)
Пример сохранения и открытия методов (VC++)
Метод Open (ADO Recordset)
Open Method (ADO Stream)
метод SaveToFile