Hola, tengo un problema a la hora de actualizar la bd con
el dataset al que le ido añadiendo nuevos registros, no
sé porque el Uptate no me deja ejecutarle me da un error.
Yo creo que aparentemente esta bien escrito, pero
evidentemente tiene que haber algún fallo porque sino
funcionaria. El error que me da es "Error de sintaxis en
el INSERT INTO". Aquí os dejo el código a ver si me
podeis decir porque casca.
////////////////////////////////////////////////////////
'declaradas como propiedades de la clase FORM1
Private oDataset As DataSet
Private odaFondos As OleDbDataAdapter
Private odaHistorico As OleDbDataAdapter
Private oCmdFondos As OleDbCommandBuilder
Private oCmdHistorico As OleDbCommandBuilder
Private oConexion As OleDbConnection
Private Sub Form1_Load(ByVal sender As Object, ByVal e As
System.EventArgs) Handles MyBase.Load
'crear conexión
oConexion = New OleDbConnection
oConexion.ConnectionString
= "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=..\Fondos.mdb"
'crear adaptador
odaFondos = New OleDbDataAdapter("SELECT
IdFondo,Fondos.Nombre AS Fondo, Tipos_Fondos.Nombre AS
Tipo_Fondo FROM Fondos INNER JOIN Tipos_Fondos ON
Fondos.IdTipo_Fondo= Tipos_Fondos.IdTipo_Fondo;", _
oConexion)
odaHistorico = New OleDbDataAdapter("SELECT *
FROM Historico", _
oConexion)
'crear commadBuilder
oCmdFondos = New OleDbCommandBuilder(odaFondos)
oCmdHistorico = New OleDbCommandBuilder
(odaHistorico)
'crear Dataset
Me.oDataset = New DataSet
oConexion.Open()
'llenar con el adaptador el dataset
odaFondos.Fill(Me.oDataset, "Fondos")
odaHistorico.Fill(Me.oDataset, "Historico")
oConexion.Close()
End Sub
//////////////////////////////////////////////////////////
Private Sub btnColumna_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
btnColumna.Click
Try
Dim odatarow As DataRow
odatarow = Me.oDataset.Tables
("Historico").NewRow
odatarow("IdHistorico") = 23
odatarow("IdFondo") = 1
odatarow("Fecha") = "01-12-2003"
Me.oDataset.Tables("Historico").Rows.Add
(odatarow)
Me.odaHistorico.Update
(Me.oDataset, "Historico")
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
////////////////////////////////////////////////////////
Gracias Por La Ayuda.
Un Saludo.
Leer las respuestas