visual basic eliminar registros

darkgothic

Lanero Regular
26 Ene 2009
58
hola mi duda es como eliminar registros en visual basic que tengan algo en comun..por ejemplo el folio de una factura

estoi usando el control data y tengo este codigo

Private Sub cmdcancelar2_Click()
datadetalles.Recordset.FindFirst "folio like '" & foliox & "'"
Do While datadetalles.Recordset.EOF = False
If datadetalles.Recordset("folio").Value = foliox Then
datadetalles.Recordset.Delete
End If
datadetalles.Recordset.MoveNext
Loop
End Sub

foliox es la variable en donde tengo almacenado el folio a borrar

!!!el problema es!!!: si me borra los registros con ese folio pero ademas me elimina el ultimo registro que tenia anterior mente aunque no tenga un folio diferente al de la variable.
 

Tael Yang

Lanero Reconocido
8 Nov 2004
503
es mas facil por medio de un comando

delete from factura where folio="foliox"

ya que con el recordset deberias recorrer toda la tabla de la base de datos y eso seria trabajoso para el sistema.
 

darkgothic

Lanero Regular
26 Ene 2009
58
es mas facil por medio de un comando

delete from factura where folio="foliox"

ya que con el recordset deberias recorrer toda la tabla de la base de datos y eso seria trabajoso para el sistema.



pues mira hice esto:

cree un dataenvironment
en el cual agregue un comando llamado command1
en el cual uso la consulta SQL que me pusiste

delete from factura_detalles where folio="foliox"

y lo mando llamar desde un boton asi

DataEnvironment3.Command1 Val(foliox)

pero el problema es que solo me elimina el ultimo registro con ese folio no todos..

despues intente asi:

DELETE factura_detalles.* FROM factura_detalles WHERE factura_detalles.folio="foliox" AND ("foliox"=?)

y lo mando llamar igual pero me sigue eliminando solo el ultimo registro que error tengo
muchas gracias!!!
 

Tus temas seguidos