Compartir a través de


Más información sobre la persistencia del conjunto de registros

Se aplica a: Access 2013, Office 2013

El objeto Recordset de ADO admite el almacenamiento del contenido de un objeto Recordset en un archivo mediante el método Save. El archivo almacenado persistentemente puede existir en una unidad local, un servidor de red o como una dirección URL en un sitio web. Más adelante, se puede restaurar el archivo con el método Open del objeto Recordset o el método Execute del objeto Connection.

Además, el método GetString convierte un objeto Recordset a un formato donde las columnas y las filas estén delimitadas con los caracteres especificados.

Para almacenar un objeto Recordset, conviértalo primero a un formato que se pueda almacenar en un archivo. Los objetos Recordset se pueden almacenar en el formato ADTG (Advanced Data TableGram) propietario o el formato XML (Lenguaje de marcado extensible) abierto. A continuación, se muestran ejemplos de ADTG. Para obtener más información sobre el almacenamiento en formato de lenguaje XML, vea Almacenar registros en formato XML.

Guarde los cambios pendientes en el archivo almacenado. De este modo, puede emitir una consulta que devuelva un objeto Recordset, lo edite, guarde el objeto Recordset y los cambios pendientes, restaure posteriormente el objeto Recordset y, a continuación, actualice el origen de datos con los cambios pendientes guardados.

Para obtener información sobre cómo almacenar los objetos Stream de manera persistente, vea Secuencias y persistencia en el capítulo 10.

Para obtener un ejemplo del almacenamiento de un objeto Recordset, vea Escenario de almacenamiento de un objeto Recordset en formato XML.

Ejemplo

Guardar un objeto Recordset:

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

Abrir un archivo almacenado con Recordset.Open:

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

De manera opcional, si el objeto Recordset no tiene una conexión activa, podrá aceptar todos los valores predeterminados y escribir simplemente el siguiente código:

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

Abrir un archivo almacenado con Connection.Execute:

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

Abrir un archivo almacenado con RDS.DataControl:

En este caso, la propiedad Server no está establecida.

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