Rs.open SQL, Conn, A, B
A:
AdoptForwardonly (= 0)
De solo solo lectura, y el registro de datos actual solo se puede mover hacia abajo.
AdoptenKeySet (= 1)
De solo solo lectura, el registro de datos actual se puede mover libremente.
Adoptynamic (= 2)
Legable y escrito, y el registro de datos actual se puede mover libremente.
Adopenstatic (= 3)
Se puede leer y escribir, el registro de datos actual se puede mover libremente y se pueden ver nuevos registros.
B:
Adlockreadonly (= 1)
El tipo de bloqueo predeterminado es de solo lectura y los registros no se pueden modificar.
AdlockPessimistic (= 2)
Bloqueo pesimista, cuando se modifica el registro, el proveedor de datos intentará bloquear el registro para garantizar una edición exitosa, bloqueando el registro inmediatamente siempre que comience la edición.
Adlockoptimic (= 3)
Bloqueo optimista, el registro no se bloquea hasta que se envía el registro actualizado utilizando el método de actualización.
AdlockBatchOptimistic (= 4)
El bloqueo optimista por lotes permite modificar múltiples registros, y los registros se bloquean solo cuando se llama al método de lote de actualización.
Cuando no se requieren cambios en ningún registro, se debe utilizar un conjunto de registros de solo lectura para que el proveedor no necesite hacer ninguna detección. Para uso general, el bloqueo optimista puede ser la mejor opción, ya que el registro está bloqueado por solo un corto período de tiempo, y los datos se actualizan durante este período. Esto reduce la utilización de recursos.
Los datos del proveedor se pueden manipular utilizando el objeto RegistroSet. Al usar ADO, casi todos los datos se pueden operar a través del objeto Registro. Todos los objetos de conjunto de registros se construyen utilizando registros (filas) y campos (columnas). Algunos métodos o propiedades de registro pueden no ser válidos debido a diferentes características admitidas por el proveedor.
Se definen cuatro tipos de cursor diferentes en ADO:
¿Cursor dinámico? Se utiliza para ver adiciones, cambios y deleciones realizadas por otros usuarios, y para usar varios tipos de movimiento en un conjunto de registros que no depende de marcadores. Si es compatible con el proveedor, se pueden usar marcadores.
CURSOR DE KEYSET? Su comportamiento es similar a los cursores dinámicos. La única diferencia es que prohíbe la visualización de registros agregados por otros usuarios y prohíbe el acceso a registros eliminados por otros usuarios. Los cambios de datos realizados por otros usuarios seguirán siendo visibles. Siempre admite marcadores, lo que permite varios tipos de movimiento en el conjunto de registros.
¿Cursor estático? Proporciona una copia estática de la recopilación de registros para encontrar datos o generar informes. Siempre admite marcadores, lo que permite varios tipos de movimiento en el conjunto de registros. Las adiciones, cambios o eliminación realizados por otros usuarios no serán visibles. Este es el único tipo de cursor que se permite al abrir un objeto de registro de cliente (Ador).
¿Solo el cursor delantero? El comportamiento es como un cursor estático, excepto que solo permite el desplazamiento hacia adelante en un registro. Esto mejora el rendimiento cuando se requiere un movimiento unidireccional en el conjunto de registros.
Establezca la propiedad Cursortype para seleccionar el tipo de cursor antes de abrir Registro, o pase el parámetro Cursortype utilizando el método abierto. Algunos proveedores no admiten todos los tipos de cursor. Consulte la documentación del proveedor. Si no se especifica ningún tipo de cursor, ADO encenderá el cursor hacia adelante solo de forma predeterminada.
Si la propiedad CursorLocation está configurada en AduseClient y el conjunto de registros se enciende, la propiedad de valor subyacente del objeto de campo no está disponible en el objeto de registro devuelto. Para algunos proveedores, como el proveedor de Microsoft ODBC para OLE DB, junto con Microsoft SQL Server, puede crear independientemente un objeto de conjunto de registros basado en el objeto de conexión previamente definido al pasar la cadena de conexión utilizando el método abierto. ADO todavía crea el objeto de conexión, pero no asigna el objeto a la variable del objeto. Sin embargo, si se abren múltiples objetos de conjunto de registro en la misma conexión, el objeto de conexión debe crearse y abrirse explícitamente, asignando así el objeto de conexión a la variable del objeto. Si la variable del objeto no se usa cuando se abre el objeto de registro, ADO creará un nuevo objeto de conexión para cada nuevo conjunto de registros incluso cuando se pasa la misma cadena de conexión.