Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Delete en visual basic y access

Estas en el tema de Delete en visual basic y access en el foro de Visual Basic clásico en Foros del Web. Pense haber resuelto el tema en otra intervencion, pero al utilizar el programa me da error en esta sentencia, lo que necesito realizar es borrar ...
  #1 (permalink)  
Antiguo 28/03/2011, 10:29
 
Fecha de Ingreso: marzo-2011
Ubicación: Florida-Uruguay
Mensajes: 74
Antigüedad: 13 años, 1 mes
Puntos: 4
Exclamación Delete en visual basic y access

Pense haber resuelto el tema en otra intervencion, pero al utilizar el programa me da error en esta sentencia, lo que necesito realizar es borrar en una planilla acces por medio de una sentencia DELETE ejecutandola desde un Listview. la Tabla es Historico y la Referencia es la fila Matricula. Este es el codigo:

cnn.Execute (consulta1)

Si dejo el codigo hasta acá me borra todos los datos (cosa que está bien), si dejo la sentencia anterior me da el mensaje "no coinciden los tipos de datos en la expresion de criterios", y el la opcion depurar me muestra la consulta1 subrrayada en amarillo y al posicionarme arriba me muestra:

consulta1 = "DELETE FROM Historico WHERE Matricula = 12345 "

(12345 es la matricula que estoy intentando borrar)

A quien me pueda ayudar muchas gracias
  #2 (permalink)  
Antiguo 28/03/2011, 14:45
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 6 meses
Puntos: 47
Respuesta: Delete en visual basic y access

Hola!
"Matricula" es Caracter o Integer?
Si es caracter debes colocar entre comillas simples:

Consulta1 = "DELETE FROM Historico WHERE Matricula = '12345' "
  #3 (permalink)  
Antiguo 28/03/2011, 16:06
 
Fecha de Ingreso: marzo-2011
Ubicación: Florida-Uruguay
Mensajes: 74
Antigüedad: 13 años, 1 mes
Puntos: 4
Respuesta: Delete en visual basic y access

Matricula lo tengo como caracter, pero le hago referencia de un Selected.Item
así:

consulta1 = "DELETE FROM Historico WHERE Matricula = 'ListView2.SelectedItem.Text' "

y no realiza nada
  #4 (permalink)  
Antiguo 28/03/2011, 16:15
 
Fecha de Ingreso: marzo-2011
Ubicación: Florida-Uruguay
Mensajes: 74
Antigüedad: 13 años, 1 mes
Puntos: 4
Respuesta: Delete en visual basic y access

Si quieres te puedo mandar un correo con todo el proyecto para que lo veas, y lo utilices si de algo te sirve.
  #5 (permalink)  
Antiguo 28/03/2011, 17:28
Avatar de hugo180486  
Fecha de Ingreso: septiembre-2007
Mensajes: 199
Antigüedad: 16 años, 7 meses
Puntos: 3
Respuesta: Delete en visual basic y access

Cita:
Iniciado por jeaguiar25 Ver Mensaje
Matricula lo tengo como caracter, pero le hago referencia de un Selected.Item
así:

consulta1 = "DELETE FROM Historico WHERE Matricula = 'ListView2.SelectedItem.Text' "y no realiza nada

Compañero creo que lo que no te esta borrando nada por que le estas diciendo que te borre cuando en el campo matricula sea 'ListView2.SelectedItem.Text' en todo caso intenta esto...

Código vb:
Ver original
  1. consulta1 = "DELETE FROM Historico WHERE Matricula = " & Chr$(39) & ListView2.SelectedItem.Text  & Chr$(39)
  2.  
  3. '//  Chr$(39) Concatenar la '
  #6 (permalink)  
Antiguo 28/03/2011, 18:05
 
Fecha de Ingreso: marzo-2011
Ubicación: Florida-Uruguay
Mensajes: 74
Antigüedad: 13 años, 1 mes
Puntos: 4
Respuesta: Delete en visual basic y access

Nop me hace exactamente lo mismo........
  #7 (permalink)  
Antiguo 29/03/2011, 17:20
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 6 meses
Puntos: 47
Respuesta: Delete en visual basic y access

Hola otra vez!!
Intenta asi:

• consulta1 = "DELETE FROM Historico WHERE Matricula = '" & ListView2.SelectedItem.Text & "'"

Coloca un punto de interrupción y verifica el valor del string, nos cuentas!!
  #8 (permalink)  
Antiguo 30/03/2011, 05:52
 
Fecha de Ingreso: marzo-2011
Ubicación: Florida-Uruguay
Mensajes: 74
Antigüedad: 13 años, 1 mes
Puntos: 4
Respuesta: Delete en visual basic y access

Este ultimo me funciono al sin ningun error, al final el procedimiento lo deje así:

consulta1 = "INSERT INTO Datos SELECT Historico.* FROM Historico WHERE Matricula = '" & ListView2.SelectedItem.Text & "'"
cnn.Execute (consulta1)
consulta2 = "DELETE FROM Historico WHERE Matricula = '" & ListView2.SelectedItem.Text & "'"
cnn.Execute (consulta2)

consulta1 para pasar los datos a otra tabla (Datos) y consulta2 para borrarla de la que carga el listview (Historico)
Utilice las mismas sentencias para pasar los datos a la tabla historica, cambiando los nombres de las tablas y la referencia del listview (todo esto lo pongo por si le sirve de dato a alguien más). Te agradezco mucho lokoman fuiste de gran ayuda, hugo180486 te agradezco a ti tambien tu aporte pero no me resulto.
  #9 (permalink)  
Antiguo 30/03/2011, 13:53
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 6 meses
Puntos: 47
Respuesta: Delete en visual basic y access


Etiquetas: access, basic, delete, visual
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 08:04.