Clipper/FiveWin - Eliminar Registros

 
Vista:

Eliminar Registros

Publicado por Juan Morales (36 intervenciones) el 03/03/2021 15:18:08
Buenos días amigos necesito una orientación para eliminar un grupo de registros de una tabla en una base de datos mysql actualmente yo lo hago asi :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
PRIVATE wR2:= TOLEAUTO():New("adodb.recordset")
     wR2:LockType := adLockOptimistic
     wR2:CursorType := adOpenKeyset
     wR2:CursorLocation := adUseClient
     wR2:ActiveConnection(oApp:oCon)
     wR2:Source := "SELECT * FROM WDETMOV WHERE ANOF='" + AllTrim(STR(VANOF)) + "' AND MESF ='" +
                                               ALLTRIM(STR(VMESF)) + "'  ORDER BY ANOF,MESF "
     wR2:Open()
 
    wR2:MoveFirst()
 
   DO WHILE .NOT. wR2:EOF()    //   LEER SALDOS DE CUENTAS DEL A¥O PEDIDO
 
      * Control para objetivo meter
      OM:Set(Contador++)
       Sysrefresh()
 
	   wR2:Delete()
 
       wR2:MoveNext()   // SIGUIENTE REGISTRO
 
   ENDDO
   oDlgr:end()
   wR2:Close()

Funciona Perfectamente pero demora mucho borrar casi 5000 registros de un mes de movimiento
se que existe el comando DELETE FROM WDETMOV WHERE ANOF='" + AllTrim(STR(VANOF)) + "' AND MESF ='" + ALLTRIM(STR(VMESF)) + "' ORDER BY ANOF,MESF "

QUE ME IMAGINO DEBE HACERLO MAS RAPIDO, PERO NO SE COMO UTILIZARLO
SE QUE HAY QUE ABRIR EL ARCHIVO DE OTRA MANERA PARA PODER UTILIZAR ESE COMANDO PERO
NO HE PODIDO CONSEGUIR UN EJEMPLO COMPLETO , MUCHO AGRADECERIA UNA ORIENTACION O
UN EJEMPLO POR FAVOR, DE ANTE MANO MUCHAS GRACIAS..
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