Establecer una variable igual a un conjunto de registros ADODB, ¿no es tan obvio?
En mi exploración en curso de los conjuntos de registros ADODB
Continuar leyendo
Me gustaría compartir un aspecto interesante de trabajar con ellos.
Para optimizar un proyecto en el que estaba involucrado, consideré la idea de mantener una copia estática del conjunto de registros para reutilizarla en lugar de regenerarla repetidamente desde el disco duro. En mi caso, este conjunto de registros contiene una lista de archivos de directorio.
A primera vista, esto parece sencillo:
Set oStaticRecordset = oVirtualRecordset
Sin embargo, este enfoque tiene una salvedad.
Cuando aplica operaciones como un filtro a oVirtualRecordset, la variable oStaticRecordset también refleja ese filtro. Ahora, si es sólo un filtro simple, podemos eliminarlo fácilmente:
oVirtualRecordset.Filter = adFilterNone 'Early Binding
oVirtualRecordset.Filter = "" 'Late Binding or Universal
¿Pero qué pasa si la situación es más compleja?
La solución es crear una «copia» del conjunto de registros original (un clon) antes de realizar modificaciones. Esto se puede hacer con la siguiente línea:
Set oStaticRecordset = oVirtualRecordset.Clone
Este método garantiza que incluso si oVirtualRecordset se modifica posteriormente, oStaticRecordset conserva su estado original. Solo asegúrese de hacerlo antes de aplicar cualquier permutación en el conjunto de registros para capturar una copia en su estado original.
¡Es un enfoque simple pero efectivo una vez que comprendes cómo funciona!