Solved

Row cannot be located for updating (VB6 + MySQL)

Posted on 2014-01-29
6
1,264 Views
Last Modified: 2014-02-04
Hi guys,

I'm having a problem when I tried to update a record on MySQL table, even if I don't change any data on the form.

I have made a lot of applications with the same code but this is the first time I got this error.

Run-time error '2147217861(80040e38)':

Row cannot be located for updating. Some values may have been changed since it was last read.

*****************CODE**************
        Set rsTransacciones = New ADODB.Recordset
        cSQLActualiza = "SELECT * FROM Transacciones WHERE Clave = '" & npClaveRegistro & "'"
        rsTransacciones.Open cSQLActualiza, conn, adOpenStatic, adLockOptimistic
        
        If Not (rsTransacciones.BOF And rsTransacciones.EOF) Then
            rsTransacciones!Num_expediente = Trim(txtNumExpediente.Text)
            rsTransacciones!Nombre = Trim(txtNombre.Text)
            rsTransacciones!Paterno = Trim(txtPaterno.Text)
            rsTransacciones!Materno = Trim(txtMaterno.Text)
            rsTransacciones!Tipo_tramite = Trim(txtTramite.Text)
            rsTransacciones!Numero_oficio = Trim(txtNumeroDocto.Text)
            rsTransacciones!Autoridad_remitente = Trim(txtAutoridadRemitente.Text)
            rsTransacciones!Ciudad_residencia = Trim(txtCiudad.Text)
            rsTransacciones!Autoridad_solicita = Trim(txtAutoridadSolicita.Text)
            rsTransacciones!Promovente = Trim(txtPromovente.Text)
            rsTransacciones!Solicitud = Trim(txtSolicitud.Text)
            rsTransacciones!Seguimiento = Trim(txtSeguimiento.Text)
            rsTransacciones!Usuario_actualiza = cgUsuario
            rsTransacciones!Fecha_actualiza = Format(Date, "yyyy-mm-dd")
            rsTransacciones!Hora_actualiza = Format(Time, "hh:mm:ss")
            If chkConcluir.Value > 1 Then
                rsTransacciones!Estatus = "C"
                rsTransacciones!Usuario_concluye = cgUsuario
                rsTransacciones!Fecha_concluye = Format(Date, "yyyy-mm-dd")
                rsTransacciones!Hora_concluye = Format(Time, "hh:mm:ss")
            Else
                rsTransacciones!Estatus = "A"
            End If
            rsTransacciones.Update
        Else
            MsgBox "NO SE ENCONTRO EL REGISTRO PARA ACTUALIZAR", vbCritical, "Atención"
            frmActualizaciones.MousePointer = 0
            Exit Sub
        End If

Open in new window

***************************************

I Hope you guys can help me on this problem.

thanks' in advance.
0
Comment
Question by:elm9999
  • 4
6 Comments
 
LVL 142

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 39820256
I would use adOpenKeyset instead of adOpenStatic...
does the table have a primary key?
0
 

Author Comment

by:elm9999
ID: 39821510
Thank you!

Yes Guy I have a primary key named Clave.
0
 

Accepted Solution

by:
elm9999 earned 0 total points
ID: 39822806
I already found the problem, it occurs on these lines:

            rsTransacciones!Fecha_actualiza = Format(Date, "yyyy-mm-dd")
            rsTransacciones!Hora_actualiza = Format(Time, "hh:mm:ss")
0
 

Author Comment

by:elm9999
ID: 39822813
I have not received any solution, so I did myself!
0
 

Author Closing Comment

by:elm9999
ID: 39832013
I have not received any solution, so I did myself!
0

Featured Post

Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Article by: Martin
Here are a few simple, working, games that you can use as-is or as the basis for your own games. Tic-Tac-Toe This is one of the simplest of all games.   The game allows for a choice of who goes first and keeps track of the number of wins for…
You can of course define an array to hold data that is of a particular type like an array of Strings to hold customer names or an array of Doubles to hold customer sales, but what do you do if you want to coordinate that data? This article describes…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question