Visual Basic.NET - Guardar Datos

 
Vista:

Guardar Datos

Publicado por carlos (33 intervenciones) el 30/08/2007 16:00:39
Hola amigos:

Tengo una base de datos de prueba en SQL con una tabla dpersonales y esta a su vez con un campo codigo_ID(auto numérico) y un campo Nombre(texto).
La base tiene 4 registros.
Estos registros los leo con un dataset y puedo añadir otros nuevos perfectamente en modo desconectado a través de dataset.
Cuando cierro la aplicación y la vuelvo a abrir el dataset carga los cuatro registros más los añadidos; esto me hace pensar que los tengo en la base de datos; pero cuando la abro, solamente contiene los 4 registros primeros.

¿Quisiera que alguien me dijese como puedo hacer para añadir registros nuevos a la base de datos?

Os envió el código, por favor ser muy claros con las respuestas pues no soy experto.

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.Validate()
Me.DpersonalesBindingSource.EndEdit()
Me.DpersonalesTableAdapter.Update(Me.BasepruebaDataSet1.dpersonales)

End Sub

Un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Guardar Datos

Publicado por OliBeer (391 intervenciones) el 30/08/2007 16:06:17
Hola!!

Podrías mostrarme todo el código, de como estás llenando el DataSet, por favor.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Guardar Datos

Publicado por carlos (33 intervenciones) el 30/08/2007 17:15:37
Hola:
Gracias por contestar.
No se a que te refieres con lo del código; el trozo de código que te envié es el actualiza la base de datos y como te dije, aparentemente los actualiza porque tu vas viendo los registros aumentar, pero esto es solo en la memoria.
Cuando vas a la base y la abres ves que sigue teniendo los registros primitivos

Private Sub Form4_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.DpersonalesTableAdapter.Fill(Me.BasepruebaDataSet1.Dpersonales)
'TODO: esta línea de código carga datos en la tabla
Me.DersonalesBindingSource.AddNew()
End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.Validate()
Me.DpersonalesBindingSource.EndEdit()
Me.DpersonalesTableAdapter.Update(Me.BasepruebaDataSet1.dpersonales)

End Sub

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Guardar Datos

Publicado por OliBeer (391 intervenciones) el 30/08/2007 18:48:10
Cuando digo "Código" me refiero a líneas escritas en el procesador de texto de Visual Basic .Net, las cuales conforman tu sistema. Lo que queria saber es cómo llenas el DataSet, estás utilizando Stored Procedures o cómo haces la consulta que hace que llenes el DataSet??

Si al Adapter no le especificas los comandos como el SelectCommand, UpdateCommand, DeleteCommand etc. cuando le das el Update al adapter con el dataset, no guarda nada porque no tiene especificado ningun Comando UpdateCommand para que los guarde en la DB.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Guardar Datos

Publicado por OliBeer (391 intervenciones) el 30/08/2007 19:44:00
aaay me equivoque!! :P si no le asignas los Command al Dataset no al Adapter... y con respecto a los Command a cada uno le tienes que asignar que Stored Procedure va a ejecutar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Guardar Datos

Publicado por haver (196 intervenciones) el 30/08/2007 20:30:27
Haber creo que ya se...
Tu creaste la base de datos en Visual Basic .net
o la tienes adjunto al proyecto?

tienes dos soluciones

1-o le das click derecho y seleccionas Excluir del proyecto y configuras tu string de conexion con la direccion de donde esta la base

2-le das propiedades a la base y donde dice
copiar siempre
lo pasas a copiar siempre si es posterior

o en ingles de la segunda opcion a la tercera...jejeje
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Guardar Datos

Publicado por Carlos ->Gracias por la ayu (1 intervención) el 01/09/2007 20:03:55
Hola:

Quier dar las gracias a OliBeer y a Haver.

El trozo de código que me faltaba es:

If BasepruebaDataset1.HasChanges Then
SqlConnection1.Open()
SqlDataAdapter1.Update(BasepruebaDataset1, "dpersonales")
SqlConnection1.Close()
End If

Nuevamente muchas gracias y un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar