-Conectar con base Access a la tabla "tabla" con un solo campo "nombre"
-Traer los datos a un DataSet
-Agreagar una fila al DataSet
-Reflejar el cambio del DataSet en la base de datos
Lo que no me funciona es el reflejar los datos, ya que si pido mostrar el DataSet me muestra la fila que agregue.
Les dejo el codigo y el error que me da:
Código:
El error es: Exception Details: System.Data.OleDb.OleDbException: La operación debe usar una consulta actualizable.void Page_Load(Object Src, EventArgs E) { System.Data.OleDb.OleDbConnection conexion=new System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=d:/base1.mdb;"); OleDbDataAdapter adaptador=new OleDbDataAdapter("SELECT * FROM tabla", conexion); adaptador.InsertCommand=new OleDbCommand("INSERT INTO tabla (nombre) VALUES (@inNombre)", conexion); adaptador.InsertCommand.Parameters.Add("@inNombre", OleDbType.VarChar, 50, "nombre"); DataSet ds=new DataSet(); adaptador.Fill(ds); DataRow nuevaFila=ds.Tables[0].NewRow(); nuevaFila["nombre"]="Pepe"; ds.Tables[0].Rows.Add(nuevaFila); adaptador.Update(ds); conexion.Close(); } </script>
La linea que me marca es la que contiene adaptador.Update(ds);
Si elimino esa linea todo funciona bien, pero como ya dije no me refleja los cambios del DataSer en la base de datos.
Se agradece de antemano cualquier ayuda.
Saludos!