Make your own free website on Tripod.com
Volver a Agregar un Registro Ir al Indice

Eliminar un registro:
Utilizamos el método Delete. Ejemplo:

data1.Recordset.delete ...............Borrará solo el registro donde se encuentra actualmente ubicado el puntero.

Para borrar todos los registros
d.recordset.movefirst `nos lleva al primer registro
While Not d.Recordset EOF
d.recordset.delete
d.recordset.movenext
wend

Otra forma: d.database.execute "delete *from "Empleados"

Búsqueda de un registro:
Para Buscar un registro dentro de una tabla utilizamos el método FindFirst del objeto Recordset en el Control Data. El cursor se detendrá en el primer registro que cumpla con la condición que especificamos en el data colocando la propiedad data.recordset.nomatch en falso. Si no lo encuentra la propiedad NoMatch saldrá verdadero.
Ejemplo:

d.recordset.FindFirst "Legajo= 20"
?d.recordset!Apellido.....................................................(
muestra "Gomez")
?d.recordset.nomatch...................................................(
muestra ".False")

d.recordset.FindFirst "Legajo=21"
?d.recorset!Apellido.......................................................?
?d.recorset.nomatch......................................................True
'como este registro no es encontrado no match está en True

d.Recordset.FindFirst "Apellido='Perez'" 'Porque es cadena de caracteres lleva una sola comilla
?d.Recordset !Legajo....................................................(
muestra el "10" que corresponde al campo Legajo)
d.Recordset.FindLast "Apellido='
Perez'" 'el último registro Perez del campo Apellido
d.Recordset!Legajo........................................................50
'el registro del campo Legajo correspondiente al último registro Perez.

d.Recordset.FindFirst "Apellido='Perez'"
'el primer registro Perez del campo Apellido
?d.Recordset!Legajo.....................................................10
'el regisrto del campo Legajo correspondiente al primer registro Perez
d.Recordset.FindNext "Apellido='Perez'"
'desde la posición donde se encuentre el puntero busca el siguiente "Perez"
?d.Recordset!Legajo.....................................................50

Para encontrar todos los Perez
d.Recordset.FindFirst "Apellido='Perez'"
'Enviamos el puntero al primer registro del campo Apellido que contenga "Perez"
While not(d.Recordset.nomatch) 'Indica que mientras d.recordset no sea nomatch (o sea mientras sea match)...
?d.Recordset.FindNext "Apellido='Perez'"
'...muestre el próximo registro del campo Apellido que contenga "Perez"
Wend

En el siguiente ejercicio se puede buscar por Legajo y por Apellido mediante dos botones de radio llamados brleg y brape. Existen dos etiquetas con Caption "Legajo" y "Apellido" y dos cajas de texto Tbleg y Tbap respectivamente. Luego de colocados alguno de estos dos datos, el evento click activa la búsqueda debiendo aparecer una caja de texto que indique si el registro fue encontrado o no y agregue el dato faltante (si estamos buscando por legajo, agregará apellido y viceversa). También debemos colocar un ControlData al que llamamos D. Seguimos usando la misma base de datos. y la tabla Empleados.
Private Sub btnbuscar_Click()
If brleg.Value Then
'Abrevia brleg.Value = True
D.Recordset.FindFirst "Legajo=" & Tbleg.Text
'Busca el primer registro del campo Legajo con el nombre que indiquemos en la caja de texto Tbleg
If D.Recordset.NoMatch Then
'si no encuentra ningún registro coincidente
MsgBox ("No encuentro legajo:" & tb.leg.Text)
Else
Tbap.Text = D.Recordset!Apellido
'Coloca el registro del campo apellido que se corresponda con el legajo indicado en la caja de texto Tbap
End If
' Cierra el If indicado en NoMatch
Else
D.Recordset.FindFirst "Apellido='" & Tbap.Text & " ' "
'Obsérvese la forma de indicar el nombre del registro que se encuentra en Tbap.Text
If D.Recordset.NoMatch Then
MsgBox ("no encontré apellido: " & Tbap.Text)
Else
Tbleg.Text = D.Recordset!leg
End If
End If
End Sub
Private Sub btnsalir_Click()
End
End Sub
Ir arriba Volver a Agregar un Registro Ir al Indice