Foros del Web » Programación para mayores de 30 ;) » .NET »

Problemas al guardar en la Bd

Estas en el tema de Problemas al guardar en la Bd en el foro de .NET en Foros del Web. Saludos a todos, Bueno el problema que tengo es que al revisar mi base de datos en access desues de agregar un registro veo que ...
  #1 (permalink)  
Antiguo 17/02/2007, 16:50
 
Fecha de Ingreso: junio-2006
Mensajes: 61
Antigüedad: 17 años, 10 meses
Puntos: 2
Problemas al guardar en la Bd

Saludos a todos,

Bueno el problema que tengo es que al revisar mi base de datos en access desues de agregar un registro veo que no hay nada, el codigo que tengo es el siguiente. no se si es que lo estoy haciendo mal.

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
Dim conexion As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\Documents and Settings\SERVIDOR\Mis documentos\DataBase.mdb")
conexion.Open()
Dim sql = "Select *from Empleados"
Dim Ds As New DataSet
Dim Adapter As New OleDbDataAdapter(sql, conexion)
Dim Command As New OleDbCommandBuilder(Adapter)
Adapter.Fill(Ds)
Ds.Tables(0).NewRow.Item("Nombres") = TxtNombre.Text
Ds.Tables(0).NewRow.Item("Apellidos") = TxtApellidos.Text
Ds.Tables(0).NewRow.Item("Cedula") = TxtCedula.Text
Ds.Tables(0).NewRow.Item("Telefono") = TxtTelefono.Text
Ds.Tables(0).NewRow.Item("Direccion") = TxtDireccion.Text
Ds.Tables(0).NewRow.Item("Cargo") = TxtCargo.Text
Ds.Tables(0).NewRow.Item("Email") = TxtEmail.Text
Ds.Tables(0).NewRow.Item("Celular") = TxtCelular.Text
Ds.Tables(0).NewRow.Item("Libreta_No") = TxtLibreta.Text
Adapter.Update(Ds)
conexion.Close()
Catch ErrorException As Exception
MsgBox(ErrorException.Message, MsgBoxStyle.Exclamation, "Error en tiempo de ejecucion")
End Try
Clear()
End Sub

Agradesco de antemano cualquier ayuda.
  #2 (permalink)  
Antiguo 20/02/2007, 13:29
Avatar de Maxi.Net  
Fecha de Ingreso: abril-2005
Ubicación: R.M. Talagante, Chile!!
Mensajes: 295
Antigüedad: 19 años
Puntos: 2
Re: Problemas al guardar en la Bd

Hola,
Te suguiero no usar el DataSet para insertar en la B.D, chequea esto:

http://www.forosdelweb.com/f29/base-datos-access-428123/
__________________
Amtez de enpezar kom otro idioma,
escrivamos vien el nueztro i como corezpomde. Jracias.
  #3 (permalink)  
Antiguo 21/02/2007, 14:30
 
Fecha de Ingreso: junio-2006
Mensajes: 61
Antigüedad: 17 años, 10 meses
Puntos: 2
De acuerdo Re: Problemas al guardar en la Bd

hola Maxi.Net,

Esa forma que me estas enseñando es la forma que use en una aplicacion, pero es un poco mas "ENGORROSA", pero igual la usaré, pero me gustaria saber que pasará, porque no guarda usando DataSet, que es la forma mas rapida?...espero alguien me pueda responder.

Un saludo.
  #4 (permalink)  
Antiguo 22/02/2007, 18:25
Avatar de JonhyReyes  
Fecha de Ingreso: febrero-2007
Mensajes: 103
Antigüedad: 17 años, 2 meses
Puntos: 1
Re: Problemas al guardar en la Bd

Y si vemos tu codigo asi

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
Dim conexion As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\Documents and Settings\SERVIDOR\Mis documentos\DataBase.mdb")
conexion.Open()
Dim sql = "Select *from Empleados"
Dim Ds As New DataSet
Dim Adapter As New OleDbDataAdapter(sql, conexion)
Dim Command As New OleDbCommandBuilder(Adapter)
Adapter.DeleteCommand = Command.getDeletecommand
Adapter.InsertCommand = Command.getInsertCommand
Adapter.UpdateCommand = Command.getUpdateCommand

Adapter.Fill(Ds)
Ds.Tables(0).NewRow.Item("Nombres") = TxtNombre.Text
Ds.Tables(0).NewRow.Item("Apellidos") = TxtApellidos.Text
Ds.Tables(0).NewRow.Item("Cedula") = TxtCedula.Text
Ds.Tables(0).NewRow.Item("Telefono") = TxtTelefono.Text
Ds.Tables(0).NewRow.Item("Direccion") = TxtDireccion.Text
Ds.Tables(0).NewRow.Item("Cargo") = TxtCargo.Text
Ds.Tables(0).NewRow.Item("Email") = TxtEmail.Text
Ds.Tables(0).NewRow.Item("Celular") = TxtCelular.Text
Ds.Tables(0).NewRow.Item("Libreta_No") = TxtLibreta.Text
Adapter.Update(Ds)
conexion.Close()
Catch ErrorException As Exception
MsgBox(ErrorException.Message, MsgBoxStyle.Exclamation, "Error en tiempo de ejecucion")
End Try
Clear()
End Sub

Lo que sucede es que el adapter necesita saber exactamente cual es la instruccion que debe enviar y de eso se encarga el command builder. Prueba con eso Camilo espero te sirva.

Saludos
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 08:39.