mira enrealidad el que contiene las tablas de una consulta, si no mal recuerdo las guarda en xml, asi el dataset tiene una consulta y tu la puedes trabajar como si fuera un tabla y no tener que ir a la base de datos
mira microsoft te da una respuesta de lo que digo
http://msdn.microsoft.com/library/sp...classtopic.asp
aca un ejemplo de insertar fila con un dataset, pero antes te respondo tu pregunta lo que hace el dataApadter lo que hace es cambiar los datos en la base de datos fisica si asi se puede llamar
para que sepan el estsa trabajando con visual basic .net y esta trabajando con winform, pero le envio esto, para ver si cacha como se hace
Dim fila As DataRow ----> esto crea una nueva fila de datos
OleDbDataAdapter1.Fill(DataTaller2, "Taller") --->con esto le indicas cual es la tabla y cual es el registro virtaul que vas a trabajar osea el data ser
fila = DataTaller2.Tables("Taller").NewRow --> con esto dices que como se tiene que comportar la tabla y cuales son suscolumnas
fila("Rut_Taller") = txtRutTaller.Text con esto dices que la columna rut_taller va obtener el valor del textbox
DataTaller2.Tables("Taller").Rows.Add(fila) y aqui lo mas importante agregas la fila a la base de datos
BindingContext(DataTaller2, "Taller").EndCurrentEdit() con esto confirmas la modificaciones a la base de datos
OleDbDataAdapter1.Update(DataTaller2) con esto actualizar el datasource
Me.Close() y cierrras la conexion
te mando un ejemplo de como agregar datos de otra manera
Dim ex As Exception 'variable que guardara una exepcion (error)
Dim connClientes As New OleDb.OleDbConnection() 'objeto de ADO.net para conectar con la BD
Dim MyCommandCli As New OleDb.OleDbCommand() 'objeto de ADO.net para ejecutar la consulta SQl
connClientes.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Me.strRutaCliente & "\COVEFAC.mdb" 'defino el proveedor y la bd para la conexion.
Try 'inicio del manejador de errores
connClientes.Open() 'abrimos la conexion a la B.D
'defino los parametros para el comando SQL
MyCommandCli.CommandText = "INSERT INTO tblClientes (Rut,Razon_Social,Giro,Fono)" & _
" VALUES(@datRut,@datRazCli,@datGiro,@datFono)"
'Inicio traspaso de parametros insert
MyCommandCli.Parameters.Add(New System.Data.OleDb.OleDbParameter("@datRut", System.Data.OleDb.OleDbType.VarWChar)) 'nuevo parametro definicendo el tipo: VarWChar para datos de tipo texto
MyCommandCli.Parameters("@datRut").Value = Me.txtRut.Text 'asigno el valor al parametro para, mas adelante, mandarlo a la tabla de la B.D
MyCommandCli.Parameters.Add(New System.Data.OleDb.OleDbParameter("@datRazCli", System.Data.OleDb.OleDbType.VarWChar))
MyCommandCli.Parameters("@datRazCli").Value = Me.txtRazonSocial.Text
MyCommandCli.Parameters.Add(New System.Data.OleDb.OleDbParameter("@datGiro", System.Data.OleDb.OleDbType.VarWChar))
MyCommandCli.Parameters("@datGiro").Value = Me.txtGiro.Text
MyCommandCli.Parameters.Add(New System.Data.OleDb.OleDbParameter("@datFono", System.Data.OleDb.OleDbType.Integer)) 'de tipo Integer para datos numéricos
MyCommandCli.Parameters("@datFono").Value = Val(Me.txtFijo.Text)
'fin traspaso de parametros insert
MyCommandCli.ExecuteNonQuery() 'ejecuto la consulta
Catch ex 'en caso de excepciones
MsgBox(ex.Message, MsgBoxStyle.Critical, ex.Source) 'muestro la excepción contenida en la variable "ex"
End Try 'fin del manejador de errores
if ex is nothing then 'si "ex = nada, es decir, no se produjeron errores"
MsgBox("Registro insertado con éxito", MsgBoxStyle.Information, "SQL INSERT")
end if
connClientes.Close() 'cierro la conexión
espero quede un poco mas claro
Saludos
esta una buena manera de ahcerlo ya que el dateset pide mucha memoria