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

Eliminar elemento de la lista y de la base de datos

Estas en el tema de Eliminar elemento de la lista y de la base de datos en el foro de Visual Basic clásico en Foros del Web. hola quisiera que me ayudaran para resolver esto, necesito que cuando hago un clic en mi listado que tengo en la listbox me borre no ...
  #1 (permalink)  
Antiguo 08/10/2009, 06:02
 
Fecha de Ingreso: septiembre-2009
Mensajes: 2
Antigüedad: 14 años, 8 meses
Puntos: 0
De acuerdo Eliminar elemento de la lista y de la base de datos

hola quisiera que me ayudaran para resolver esto, necesito que cuando hago un clic en mi listado que tengo en la listbox me borre no solo ese index que se como hacerlo sino que tambien borre el registro ese de mi base de datos sql de mi tabla.

tengo este codigo pero no logro hacer que me borre el registro, abri la tabla etc pero no logro.

________________

Private Sub cmdborrar_Click()
Dim cadenas As String
Dim cod As Long


Set MiConexion = New ADODB.Connection



MiConexion.ConnectionString = "Provider=SQLOLEDB.1;Password=" & SQLSena & ";Persist Security Info=True;User ID=" & SQLUser & ";Initial Catalog=" & SQLBase & ";Data Source=(local)"

MiConexion.Open


rsEmpleados.Open "Empleados", MiConexion, adOpenDynamic, adLockOptimistic
If rsEmpleados.EOF = True And rsEmpleados.BOF = True Then


GoTo BorrarEmpleados






BorrarEmpleados:

If lstcargados.ListIndex > -1 Then

cadenas = lstcargados.List(lstcargados.ListIndex)
cod = (lstcargados.ListIndex)





rsHistoricos.Delete
lstcargados.RemoveItem cod
Else
MsgBox "Seleccione un empleado en el listado para poder eliminarlo", vbInformation
End If
End If
End Sub

____________________

gracias
  #2 (permalink)  
Antiguo 08/10/2009, 06:06
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Eliminar elemento de la lista y de la base de datos

Hola, ederviera.

Por favor, no uses temas antiguos para realizar preguntas.
Translado tu mensaje a un tema nuevo desde:
http://www.forosdelweb.com/f69/elimi...masiva-600972/

Saludos.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 09/10/2009, 20:09
Avatar de seba123neo  
Fecha de Ingreso: febrero-2007
Ubicación: Esperanza, Santa Fe
Mensajes: 1.046
Antigüedad: 17 años, 2 meses
Puntos: 19
Respuesta: Eliminar elemento de la lista y de la base de datos

Hola, creo que aca hay un problema de logica muy grande.

1 - ¿te estas conectando a la base cada vez que apretas el boton?

2 - no entiendo que estas haciendo con la etiqueta GoTo BorrarEmpleados

3 - no se ve donde cargaste el rsHistoricos

4 - porque abris asi

rsEmpleados.Open "Empleados", MiConexion, adOpenDynamic, adLockOptimistic

si deberia ser algo asi:

rsEmpleados.Open "SELECT * FROM Empleados", MiConexion, adOpenDynamic, adLockOptimistic

igualmente no entiendo para que abris esa tabla si despues borras desde el recordset rsHistorico...

lo que te diria es que te veas un manual de ADO ya por ahi,en internet tenes ejemplos de ABM faciles y ocon eso ya podes empezar... fijate como hacen las aplicaciones, la conexion se hace una sola vez a la base y se deja hasta que se cierra el programa...pero se hace 1 sola vez...para borrar, agregar..etc..mejor que usar los metodos de los recordset .Update, .Addnew..etc..es mejor ejecutar un comando con una sentencia SQL con un INSERT INTO y con un UPDATE, o DELETE.

lo mejor es que te crees una funcion que abra un recordset, lo recorres y lo vas agregando al listbox y despues para borrar ejecutes una consulta DELETE FROM Tabla WHERE Id=(el que seleccionas en el listbox), y despues de borrar volves a cargar el listbox asi se actualiza, esa es la forma, no borrarlo con .RemoveItem, porque eso no te asegura que se haya borrado...

saludos.
__________________
" Todos Somos Ignorantes; lo que pasa es que no todos ignoramos las mismas cosas " - Albert Einstein
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




La zona horaria es GMT -6. Ahora son las 14:02.