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


Дополнительные сведения о сохранении наборов записей

Область применения: Access 2013, Office 2013

Объект ADO Recordset поддерживает хранение содержимого объекта Recordset в файле с помощью метода Save . Постоянно хранящийся файл может существовать на локальном диске, сетевом сервере или в качестве URL-адреса на веб-сайте. Позже файл можно восстановить с помощью метода Open объекта Recordset или метода Execute объекта Connection.

Кроме того, метод GetString преобразует объект Recordset в форму, в которой столбцы и строки разделяются указанными символами.

Чтобы сохранить набор записей, начните с преобразования его в форму, которая может храниться в файле. Объекты recordset могут храниться в закрытом формате Advanced Data TableGram (ADTG) или в формате XML. Примеры ADTG приведены ниже. Дополнительные сведения о сохраняемости XML см. в разделе Сохранение записей в формате XML.

Сохраните все ожидающие изменения в сохраненном файле. Это позволяет выдать запрос, который возвращает объект Recordset , изменяет набор записей, сохраняет его и ожидающие изменения, а затем восстанавливает набор записей, а затем обновляет источник данных с сохраненными ожидающими изменениями.

Сведения о постоянном хранении объектов Stream см. в разделе Потоки и сохраняемость в главе 10.

Пример сохраняемости набора записей см. в статье Сценарий сохраняемости набора записей XML.

Пример

Сохранение набора записей:

 
Dim rs as New ADODB.Recordset 
rs.Save "c:\yourFile.adtg", adPersistADTG 

Откройте сохраненный файл с помощью Recordset.Open:

 
Dim rs as New ADODB.Recordset 
rs.Open "c:\yourFile.adtg", "Provider='MSPersist'",,,adCmdFile

При необходимости, если набор записей не имеет активного подключения, можно принять все значения по умолчанию и просто закодируете следующее:

 
Dim rs as New ADODB.Recordset 
rs.Open "c:\yourFile.adtg" 

Откройте сохраненный файл с помощью Connection.Execute:

 
Dim conn as New ADODB.Connection 
Dim rs as ADODB.Recordset 
conn.Open "Provider='MSPersist'" 
Set rs = conn.execute("c:\yourFile.adtg") 

Откройте сохраненный файл с помощью RDS. DataControl:

В этом случае свойство Server не задано.

 
Dim dc as New RDS.DataControl 
dc.Connection = "Provider='MSPersist'" 
dc.SQL = "c:\yourFile.adtg" 
dc.Refresh