Anda di halaman 1dari 5

ACCESO A DATOS

Casi todas las aplicaciones necesitan algn tipo de almacenamiento y manipulacin de datos, Visual
Basic 6.0 proporciona varias herramientas para satisfacer estas necesidades, incluyendo el control de
datos y los controles enlazados a datos, objetos de acceso a datos, objetos de datos remotos y el
control de datos remotos.
EL CONTROL DATA CONTROL
Este control proporciona acceso a una base de datos, mediante uno de los tres tipos de Recordset, permite
desplazarse de un registro a otro, as como presentar y manipular datos de los registros en controles enlazados
a datos.
Propiedad Descripcin
Connect
Proporciona informacin acerca del origen de una base de datos abierta, de una base
de datos utilizada en una consulta de paso a travs o de una tabla adjunta.
DataBaseName Devuelve o establece el nombre y la ubicacin del origen de datos de un control Data.
RecordSource
Devuelve o establece la tabla, la instruccin SQL o el objeto QueryDef subyacente para
un control Data.
ReadOnly
Devuelve o establece un valor que indica si el objeto Database del control est abierto
para acceso de solo lectura.
RecordsetType
Devuelve o establece un valor que indica el tipo de objeto Recordset que desea que
cree el control Data.
Valores: Los valores admitidos son: 0 Table, 1 Dynaset y 2 - Snapshot

OBJETO RECORDSET: representa los registros de una tabla base o los registros que se generan al ejecutar
una consulta. Utilice los objetos Recordset para manipular datos en una base de datos a nivel de registro. Cuando
utilices objetos de acceso a datos, interactas con los datos prcticamente. Todos los objetos Recordset se
construyen utilizando registros (filas) y campos (columnas).
Existen tres tipos de objetos Recordsset:
0 Table Copia exacta de una tabla. Puede agregar, actualizar y desplazar los registros, siendo su
desventaja el trabajo con una sola tabla (Solo espacios de trabajo Microsoft Jet).
1 Dynaset Tipo de Recordset que apunta a trabajar con varias tablas, es un conjunto dinmico de
registros que puede utilizarse para aadir, actualizar y eliminar registros de una tabla o tablas
subyacentes de una base de datos. Su principal desventaja es que no se puede visualizar
cuando los datos son eliminados por otros usuarios.
2 Snapshot Una copia esttica de un conjunto de registros que puede utilizar para encontrar datos o
generar informes. Un objeto recordset de este tipo puede contener campos de una o ms
tablas de una base de datos pero no se puede actualizar; pero , en el caso de una consulta
a la base de datos su trabajo es mucho ms rpido. Corresponde a un cursor de tipo static
ODBC.
Mtodos para el desplazamiento de puntero
MoveFirst Mueve el puntero al primer registro Data1.Recordset. MoveFirst
MoveNext Mueve el puntero al siguiente registro Data1.Recordset. MoveNext
MovePrevious Mueve el puntero al registro anterior Data1.Recordset. MovePrevious
MoveLast Mueve el puntero al ltimo registro Data1.Recordset. MoveLast
Mtodos de mantenimiento
Mtodo Descripcin
Addnew
Crea un nuevo registro para un objeto Recordset de tipo Table o Dynaset.
Sintaxis: Recordset.AddNew
Utilice el mtodo AddNew para crear y agregar un nuevo registro en el objeto Recordset
llamado por el recordset. Este mtodo establece los campos a los valores

predeterminados y si no se especifican valores predeterminados, establece los campos a
Null (los valores predeterminados especificados pare el Recordset tipo Table).
Despus de modificar el nuevo registro, utilice el mtodo Update para guardar los cambios
y agregar el registro al Recordset. No se producirn cambios en la base de datos hasta
que no se utilice el mtodo Update.
Update Guarda el contenido del bfer de copia en un objeto Recordset de tipo Dinaset o Table
especificado.
Sintaxis: Recordset.Update (Tipo, Obligar)
Utiliza este mtodo para guardar el registro activo y los cambios que haya efectuado en l.
Los cambios realizados en el registro activo se perdern si:
Utiliza el mtodo Edit o AddNew y a continuacin pasa a otro registro sin actualizarlo
previamente mediante update.
Utiliza Edit o AddNew y a continuacin vuelve a usar Edit o AddNew sin utilizar
previamente Update.
Establece la propiedad Bookmark para otro registro.
Cierra el conjunto de registros a los que hace referencia recordset sin utilizar primero
update.
Edit Copia el registro activo en un objeto Recordset al Bfer de copia para su posterior edicin.
Sintaxis: Recordset.Edit
Una vez que se utiliza el mtodo Edit , los cambios realizados en los campos del registro
activo son copiados al bfer de copia. Despus de realizar los cambios deseados en el
registro, utilice el mtodo Update para guardar los cambios. El registro permanece activo
despus de utilizar el mtodo edit.
Delete
Puede utilizar el mtodo Delete para eliminar un registro activo de un Recordset o un
miembro de una coleccin, como una tabla almacenada de una base de dato, un campo
almacenado de una tabla y un ndice de una tabla.
Sintaxis: recordset.Delete
Mtodos
Update y
CancelUpdate
Estos mtodos siempre se deben ejecutar despues de un mtodo AddNew o un mtodo
Edit. El mtodo Update confirma la operacin y el mtodo CancelUpdate la rechaza.
FindFirst
El mtodo FindFirst se utiliza para hacer una bsqueda segn cierto criterio. La bsqueda
comienza en el registro activo y finaliza al encontrar el primer registro que cumpla con las
condiciones de bsqueda o al llegar al ltimo registro del RecordSet. Mediante la propiedad
NoMatch podemos saber si se ha encontrado un registro o no.

Private Sub MnuBuscar_Click()
Dim Buscar As String
Buscar = InputBox("Ingrese nombre a buscar:")
Data1.Recordset.MoveFirst
Data1.Recordset.FindFirst "Nombre='" & Buscar & "'"
If Data1.Recordset.NoMatch Then
MsgBox "No se encontr el registro buscado"
End If
End Sub

Objeto e Acceso a Datos DAO
Podemos utilizar el modelo de Objetos de Acceso a Datos para manipular bases de datos bien en el modelo
nativo del motor de acceso JET (.MDB) o bien en cualquier otro formato ISAM (Fox, dBASE, Excel, Btrieve,
Paradox, y Text).

Los objetos de acceso a datos (DAO) proporcionan constantes incorporadas que puede utilizar con mtodos o
con propiedades. Estas constantes empiezan todas con las letras db y se documentan con el mtodo o
propiedad a la que aplican.
OBJETO DESCRIPCION
DBENGINE
Representa el motor de base de datos de Microsoft Jet. Es el objeto de nivel ms
alto, contiene y controla todos los dems de la jerarqua de objeto de acceso a datos.
WORKSPACE
Representa una sesin de un usuario. La sesin de un usuario empieza cuando este
se conecta a la base de datos y termina cuando cierra la base de datos.
DATABASE Representa a la base de datos q se encuentra activa.
RECORDSET
Representa todos los registro de una tabla o los que resultan de una consulta con
la instruccin SELECT
FIELD
Representa un campo de una tabla.
FIELDS
Es una coleccin de objetos FIELD y representa a todos los campos de una tabla.

Mtodos para manejar la base de datos
Mtodo Descripcin Sintaxis
Opendatabase Abre una base de datos. Set Variable_BD=OpenDataBase(NombreBaseDatos,
Exclusivo, Modo, Origen)

OpenRecordset Abre una tabla de una
base de datos activada
previamente.
Set Variable_RS=Variable_DB.OpenRecordset(Nomb_Tabla,
Tipo, Restricciones)
Close Cierra los objetos de
acceso a datos, como
por ejemplo la
Variable.Close

Control DBGrid

El control DBGrid permite mostrar datos de consultas o tablas.

Es el mismo formulario anterior slo que hemos agregado el Control DBGrid y unos botones. Como puede
apreciarse el origen de datos es el control Data Data1.

Nos interesa poder manipular la tabla Cargos, es decir poder realizar Altas, Bajas y Modificaciones. Un alta
no sera problema ya que el Control Data permite directamente generar un nuevo registro que si no se
completa se elimina. Adems como la tabla tiene restricciones de integridad, en lo que hace a la base de
datos, no es necesario ingresar controles de validacin.




















S es importante, y lo haremos a medida que avancemos que los datos de la tabla o consulta actualizable
no se modifiquen porque s, ante un error del usuario, por ejemplo.

En las dos siguientes imgenes podemos ver que si nos desplazamos por el DBGrid se modifican los
valores de los cuadros de Texto:



En esta imagen se puede apreciar cmo se modifican los datos, sin utilizar ningn botn de comando,
directamente accediendo al DBGrid:





Actividad: Disear una agenda de contacto con acceso a base de datos.

Anda mungkin juga menyukai