Hola,
he estado revisando los posts del grupo y he visto un mensaje con
(creo) el mismo titulo, pero no me ha resuelto la duda.
El caso es que creo que tengo todo puesto pero no consigo que se
actualice la base de datos con los cambios del DataSet. Lo que intento
hacer es lo siguiente:
En el DataSet "datos" tengo una tabla (obtenida con un simple "Select
*"). Como el Fill del DataSet no te crea claves, le pongo yo una
clave. Y una vez especificada la clave busco un par de registros y les
cambio el contenido. Con el DataSet ya modificado intento actualizar
la BD y es cuando no me funciona.
El codigo viene a ser:
//INICIO DE CODIGO
DataColumn [] clave = new DataColumn[1];
clave[0] = datos.Tables["Talleres"].Columns["IDTaller"];
datos.Tables["Talleres"].PrimaryKey = clave;
DataRow filaCambio = datos.Tables["Talleres"].Rows.Find("175");
filaCambio["Descripción"] = "Esto es un taller";
filaCambio = datos.Tables["Talleres"].Rows.Find("176");
filaCambio["Descripción"] = "Esto es otro taller";
int retorno = adaptador.Update(datos);
txtInformacion.Text = "Numero de filas actualizadas: " + retorno;
//FIN DE CODIGO
Y claro, el valor de "retorno" es cero.
He leido por ahi que hay que rellenar el UpdateCommand del Adapter,
pero no entiendo como hay que llenarlo. Si lo lleno con una sentencia
Update, entonces me puede afectar a varias filas que no deseo, y no
tengo forma de actualizar las filas tal y como lo hago a mano en el
DataSet.
Por favor, ¿alguien que me resuelva el problema?
Leer las respuestas