Error:La operación debe usar una consulta actualizable

Soy nuevo en este foro y he visto que es muy bueno, bueno espero y me ayuden soy principiante en visual basic, tengo un programa en visual basic 6.0 con base de datos en Access 2000. El pequeño programita me agrega, actualiza, elimina y muestra información de la base de datos mediante consultas SQL como insert, update, delete, select, etc. Bueno voy al punto este programita lo vengo haciendo desde hace ya más de tres meses y pues si funcionaba bien agregaba, actualizaba y eliminaba correctamente pero de pronto así de la nada me empezó a marcar el siguiente error:
Error '-2147467259(80004005)' en tiempo de ejecución :
La operación debe usar una consulta actualizable


Para acceder al pequeño programita uso un password y usuario y cuando tecleeo el usuario y password entra normal al programa y muestra también reportes, pero al querer actualizar o agregar un registro me marca el error antes mencionado.
Uso una procedimiento para ejecutar la consulta que es este:
Public cn As ADODB.Connection
Public rs As ADODB.Recordset
Public StrSql As String
Public StrError As String


Public Sub EjecutaConsulta(ByVal strConsulta As String, ByRef StrError As String)
Set cn = New ADODB.Connection
cn.ConnectionString = "provider=microsoft.jet.oledb.4.0;Data Source=" & "\\computadora\C\CONTROL.mdb" & ";persist security info=false;Jet OLEDB:Database Password=;"
cn.CursorLocation = adUseClient
cn.Open
Set rs = cn.Execute(strConsulta)
End Sub


La base de datos esta en mi unidad C y computadora es el nombre que por default tiene la maquina en la que estoy trabajando.
y cuando por ejemplo quiero actualizar un registro uso este codigo:
Private Sub CmdUpdate_Click()
StrSql = "UPDATE USERS SET CONTRASEÑA='" & txtpassword.Text & "' WHERE nombre='" & cmbusuarios.Text & "'"
Call EjecutaConsulta(StrSql, StrError)
Set rs = New ADODB.Recordset
MsgBox "¡Contraseña Modificada!", vbInformation
Unload Me
End Sub


Quiero actualizar el campo CONTRASEÑA de la tabla USERS de la base de datos CONTROL pero al momento que le elijo el nombre de usuario y tecleo la nueva contraseña es donde me arroja el error La operación debe usar una consulta actualizable y me marca en color amarillo la linea
Set rs = cn.Execute(strConsulta)
Del procedimiento EjecutaConsulta.
Descarte que sea la cadena de conexión porque puedo buscar registros y también puedo accesar al programita con usuario y contraseña que están en la tabla USERS de la base de datos, como dije anteriormente no me deja actualizar ni agregar registros...
Bueno espero y me puedan ayudar trabajo sobre windows XP, se los agradecería mucho... Bueno gracias por su atención =)

1 respuesta

Respuesta
1
Creo que el problema es porque estas asignando el resultado a un recordset y esa instrucción no devuelve un recordset. Quítale el Set rs = y prueba a ver que sucede.
h0loa
ralvaradot
Ya revise el código y el problema no es de programación, tengo bien todo, muchas gracias ´por tu respuesta pero el error ese era porque estoy trabajando en red y la base de datos esta en el disco duro de otra computadora y no la estaba compartiendo en la red con las demás makinas, ese era el problema solo le di click derecho ala unidad le di compartir y dejar que loos otros usuarios modifiquen los archivos y funciono correctamente... muchas muchas gracias y aquí estamos para ayudar en lo que se pueda... xD
Saludos desde mexico lindo y querido...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas