Vaciar tabla secuencialmente.

Vaciar tabla secuencialmente.

Postby jrestojeda » Sun Jan 25, 2009 3:13 pm

Hola a todos...
Tengo un problemita en el borrado de registros de una tabla cuando los borro de manera secuencial...

Lo estoy haciendo asi:
Code: Select all  Expand view
oDbfIng:GoTop()
DO WHILE !oDbfIng:Eof()
   oDbfIng:RecLock()
   oDbfIng:Delete()
   oDbfIng:UnLock()
   oDbfIng:Skip()
ENDDO


El problema es el siguiente: Borra pero siempre me deja un registro. Por ejemplo si tengo 10 registros en la tabla borra 9, si tengo 100 borra 99, etc...
Solo funciona correctamente cuando la tabla contiene 1 solo registro, es decir el registro se borra correctamente.
Cual puede llegar a ser el problema?? Me parece muy simple esa rutinita como para que no funcione bien :(

Nota: El registro que no se borra es el útimo de la tabla, no el primero.

Desde ya muchas gracias.
Saludos, desde Argentina Esteban.
Ojeda Esteban Eduardo.
Buenos Aires - Argentina.
FWH - PellesC - DBF/CDX - ADS - Gloriosos .Bat - MySql - C# .net - FastReport
Skype: jreduojeda
User avatar
jrestojeda
 
Posts: 583
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina

Re: Vaciar tabla secuencialmente.

Postby Armando » Sun Jan 25, 2009 4:10 pm

Esteban:

Y por qué no usar DBZAP() ???

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3061
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Vaciar tabla secuencialmente.

Postby jrestojeda » Sun Jan 25, 2009 11:03 pm

No uso DBZap() porque en este proceso no puedo abrir la tabla en modo exclusivo.

De todas maneras quedó solucionado de la siguiente manera:

Code: Select all  Expand view
SET DELETED OFF
oDbfIng:GoTop()
DO WHILE !oDbfIng:Eof()
   oDbfIng:RecLock()
   oDbfIng:Delete()
   oDbfIng:UnLock()
   oDbfIng:Skip()
ENDDO
SET DELETED ON


Gracias de todas formas.
Ojeda Esteban Eduardo.
Buenos Aires - Argentina.
FWH - PellesC - DBF/CDX - ADS - Gloriosos .Bat - MySql - C# .net - FastReport
Skype: jreduojeda
User avatar
jrestojeda
 
Posts: 583
Joined: Wed Jul 04, 2007 3:51 pm
Location: Buenos Aires - Argentina


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 78 guests