Visual Basic - actualizar

Life is soft - evento anual de software empresarial
 
Vista:

actualizar

Publicado por jesusjaime (48 intervenciones) el 04/08/2005 21:41:56
hola
mi problema es el siguiente:
tengo una base de datos de clientes en access, lo que quiero hacer es buscar al cliente por su ID, modificarlo y actualizarlo y utilizo el siguiente codigo:

'buscar
Private Sub Command4_Click()
Dim a, b, c, d, e, f, g, h As String


Set base = New ADODB.Connection
Set Personas = New ADODB.Recordset
base.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\isce.mdb" & ";Persist Security Info=False"

Personas.Open "SELECT * FROM clientes WHERE IDcliente='" & Text1(0) & "'", base, adOpenKeyset


If Personas.EOF = False And Personas.BOF = False Then

a = Personas.Fields(1)
b = Personas.Fields(2)
c = Personas.Fields(3)
d = Personas.Fields(4)
e = Personas.Fields(5)
f = Personas.Fields(6)
g = Personas.Fields(7)
h = Personas.Fields(8)
End If

If a = "" And b = "" And c = "" And d = "" And e = "" And f = "" And g = "" And h = "" Then
MsgBox "No Se Encontró Registro.", vbExclamation, "Buscar"
Else
Text1(1) = a
Text1(2) = b
Text1(3) = c
Text1(4) = d
Text1(5) = e
Text1(6) = f
Text1(7) = g
Text1(8) = h
End If


Personas.Close
End Sub


'actualizar
Private Sub Command3_Click()
Set base = New ADODB.Connection
Set Personas = New ADODB.Recordset
base.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\isce.mdb" & ";Persist Security Info=False"

Personas.Open "SELECT * FROM clientes", base

Personas.Update


Personas.Close
End Sub

al dar click en el boton de actualizar me marca error: "el recordset actual no admite actualizaciones. puede ser una limitacion del proveedor o del tipo de bloque seleccionado".
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:actualizar

Publicado por Patricio Ramos (8 intervenciones) el 04/08/2005 22:56:55
El Open del RecordSet debes incorporar un tercer parámetro que es el tipo de cursor, debes colocar la constante de VB que es "adCmdTable".

Saludos

Patricio Ramos
Chile
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar