INSTRUCCION UPDATE DEL OBJETO DATA ADAPTER!?

22/03/2005 - 15:41 por Francisco Leiva | Informe spam
Tengan todos un buen día

Les expongo mi problema: tengo un objeto DataAdapter
(especificamente un OledbDataAdapter) enlazado a una tabla en SQLServer. Al
configurar el objeto, se crean bien las instrucciones INSERT, UPDATE y
DELETE. Mi objeto Adapter luego llena un DataSet. Sobre el DatSet hago
varias operaciones, como agregar filas, modificar, y eliminar,... Pero el
problema es que la eliminacion no la hace despues de que yo llamo al metodo
Update de mi objeto Adapter, solo me realiza las inserciones y
modificaciones en la tabla, pero no las eliminaciones
Alguien sabe a que se debe esto!!??
Les agradecería mucho su ayuda

Gracias de Antemano:
Francisco Leiva
 

Leer las respuestas

#1 Carlos Durán Urenda
22/03/2005 - 16:02 | Informe spam
Hola Francisco

A ver si puedo ayudarte, no se si para llenar los comandos Insert, Update y
Delete estas utilizando el CommandBuilder o los estas llenando a mano, si lo
estas haciendo a mano, podria ser un error en el comando de elminiacion.

Por otra parte, al procesar el comando Update del Adaptador, las operaciones
se realizan en un determinado orden, que no siempre puede ser el
conveniente, y si tienes configurada la poriedad del adaptador
ContinueUpdateOnerrors=True o bien estas atrapando las excepciones, es
posible que no alcances a percibir si esta ocurriendo un error en el Update.

Creo... , que de forma predeterminada el update ejecuta primero la insersion
de datos, luego la modificacion y por ultimo la eliminacion de los datos,
pero... pongamos un ejemplo

Digamos que tienes un registro con clave principal 100, lo eliminas y
despues insertas otro registro con clave 100 (tambien), al ejecutar el
update primero intentaria insertar las nuevas filas, lo que produciría un
error debido a que aun no se elimina el registro que contiene la misma
clave.

Posiblemente no sea tu caso, pero es posible cambiar el orden en el cual se
ejecutan los comandos de insercion, actualizacion y eliminacion, para evitar
este tipo de conflictos

Dim DT as Datatable= DS.Tables("TuTabla")

'Procesar primero las eliminaciones
Adaptador.Update (DT.Select(Nothing, Nothing, DataViewRowState.Deleted)
'Procesar luego las actualizaciones
Adaptador.Update (DT.Select(Nothing, Nothing,
DataViewRowState.ModifiedCurrent)
'Por ultimo las inserciones
Adaptador.Update (DT.Select(Nothing, Nothing, DataViewRowState.Added)


Espero esto te sirva

Saludos
Carlos Durán

"Francisco Leiva" escribió en el mensaje
news:u$
Tengan todos un buen día

Les expongo mi problema: tengo un objeto DataAdapter
(especificamente un OledbDataAdapter) enlazado a una tabla en SQLServer.
Al
configurar el objeto, se crean bien las instrucciones INSERT, UPDATE y
DELETE. Mi objeto Adapter luego llena un DataSet. Sobre el DatSet hago
varias operaciones, como agregar filas, modificar, y eliminar,... Pero el
problema es que la eliminacion no la hace despues de que yo llamo al
metodo
Update de mi objeto Adapter, solo me realiza las inserciones y
modificaciones en la tabla, pero no las eliminaciones
Alguien sabe a que se debe esto!!??
Les agradecería mucho su ayuda

Gracias de Antemano:
Francisco Leiva


Preguntas similares