DataSet con múltiples tablas y DataRelation

17/08/2004 - 18:26 por Rafael | Informe spam
Hola a todos!!
Tengo problemas al hacer el fill de un DataAdapter a un
DataSet múltiple con relaciones. Me genera un error
porque dice que una o varias filas no cumplen con las
restricciones Non-Null, Unique, o Foreign key. En
realidad los conjuntos de datos devuelto por las
consultas cumplen con todas las restricciones, el
problema creo que puede estar en que el fill agrega al
dataset unos 120 registros que tienen {System.DBNull} y
no tengo idea de porque los agrega y menos de porque la
relación interprete que estos registros violan las
restricciones.
Desde ya agradezo cualquier aporte,
Saludos,
Rafael

Preguntas similare

Leer las respuestas

#1 Federico A. Colli
19/08/2004 - 12:53 | Informe spam
Puedes resolverlo haciendo:
DataSet.EnforceConstraints = False

Para luego del llenado de datos hacer:

DataSet.EnforceConstraints = True

Aunque dependiendo del DataSet y los datos cargados puede darte el mismo
error. Particularmente yo no vuelvo a habilitar los Constraints, dado que
dejo al motor de BD el tema de integridad referencial, si hay algún problema
lo manejo a través de excepciones.

Saludos
(AUS) Federico A. Colli
"Rafael" escribió en el mensaje
news:787501c48476$ec974340$
Hola a todos!!
Tengo problemas al hacer el fill de un DataAdapter a un
DataSet múltiple con relaciones. Me genera un error
porque dice que una o varias filas no cumplen con las
restricciones Non-Null, Unique, o Foreign key. En
realidad los conjuntos de datos devuelto por las
consultas cumplen con todas las restricciones, el
problema creo que puede estar en que el fill agrega al
dataset unos 120 registros que tienen {System.DBNull} y
no tengo idea de porque los agrega y menos de porque la
relación interprete que estos registros violan las
restricciones.
Desde ya agradezo cualquier aporte,
Saludos,
Rafael
Respuesta Responder a este mensaje
#2 Rafael
20/08/2004 - 00:23 | Informe spam
Gracias Federico,
Con el EnforceConstraints en False funciona bien, pero
debe existir alguna forma para que los DataSet y sus
relaciones creados con la herramienta de diseño de
VisualStudio funcionen de acuerdo a lo esperado, para que
uno pueda decidir de que forma quiere controlar la
integridad, si con la BD o con el DataSet.
Yo también dejo que la BD se encargue de la integridad,
pero como existia esta posibilidad la estaba investigando.

Muchas gracias,
Rafael Silveira
Puedes resolverlo haciendo:
DataSet.EnforceConstraints = False

Para luego del llenado de datos hacer:

DataSet.EnforceConstraints = True

Aunque dependiendo del DataSet y los datos cargados


puede darte el mismo
error. Particularmente yo no vuelvo a habilitar los


Constraints, dado que
dejo al motor de BD el tema de integridad referencial,


si hay algún problema
lo manejo a través de excepciones.

Saludos
(AUS) Federico A. Colli
"Rafael" escribió


en el mensaje
news:787501c48476$ec974340$
Hola a todos!!
Tengo problemas al hacer el fill de un DataAdapter a un
DataSet múltiple con relaciones. Me genera un error
porque dice que una o varias filas no cumplen con las
restricciones Non-Null, Unique, o Foreign key. En
realidad los conjuntos de datos devuelto por las
consultas cumplen con todas las restricciones, el
problema creo que puede estar en que el fill agrega al
dataset unos 120 registros que tienen {System.DBNull} y
no tengo idea de porque los agrega y menos de porque la
relación interprete que estos registros violan las
restricciones.
Desde ya agradezo cualquier aporte,
Saludos,
Rafael


.

Respuesta Responder a este mensaje
#3 Federico A. Colli
23/08/2004 - 12:59 | Informe spam
Es correcta tu apreciación, pero por lo que he probado, cuando cargo el
Dataset (particularmente cargo varias tablas al mismo tiempo y utilizo
SQLHelper) tengo que tener la precaución de cargar las tablas en el orden en
que fueron agregadas en el DataSet tipeado, de no ser así me patea con esos
errores. Otra cosa a tener en cuenta es que para tablas relacionadas primero
debes cargar las tablas hijas y luego las padres, de otro modo patean las
Constraints.

Saludos
(AUS) Federico A. Colli

"Rafael" escribió en el mensaje
news:246e01c4863b$1dfcb670$
Gracias Federico,
Con el EnforceConstraints en False funciona bien, pero
debe existir alguna forma para que los DataSet y sus
relaciones creados con la herramienta de diseño de
VisualStudio funcionen de acuerdo a lo esperado, para que
uno pueda decidir de que forma quiere controlar la
integridad, si con la BD o con el DataSet.
Yo también dejo que la BD se encargue de la integridad,
pero como existia esta posibilidad la estaba investigando.

Muchas gracias,
Rafael Silveira
Puedes resolverlo haciendo:
DataSet.EnforceConstraints = False

Para luego del llenado de datos hacer:

DataSet.EnforceConstraints = True

Aunque dependiendo del DataSet y los datos cargados


puede darte el mismo
error. Particularmente yo no vuelvo a habilitar los


Constraints, dado que
dejo al motor de BD el tema de integridad referencial,


si hay algún problema
lo manejo a través de excepciones.

Saludos
(AUS) Federico A. Colli
"Rafael" escribió


en el mensaje
news:787501c48476$ec974340$
Hola a todos!!
Tengo problemas al hacer el fill de un DataAdapter a un
DataSet múltiple con relaciones. Me genera un error
porque dice que una o varias filas no cumplen con las
restricciones Non-Null, Unique, o Foreign key. En
realidad los conjuntos de datos devuelto por las
consultas cumplen con todas las restricciones, el
problema creo que puede estar en que el fill agrega al
dataset unos 120 registros que tienen {System.DBNull} y
no tengo idea de porque los agrega y menos de porque la
relación interprete que estos registros violan las
restricciones.
Desde ya agradezo cualquier aporte,
Saludos,
Rafael


.

Respuesta Responder a este mensaje
#4 noeguma
23/08/2004 - 17:45 | Informe spam
Esto me ha sucedido cuando convierto tablas existentes a
una base de datos SQL, es decir ya con datos, tendras que
verificar cada campo a efecto de que no este vacio o en su
caso convertirlo a 0 o "" para que no te marque error, se
que no es de gran ayuda pero solo intento reafirmar las
sospechas de tu error.

Hola a todos!!
Tengo problemas al hacer el fill de un DataAdapter a un
DataSet múltiple con relaciones. Me genera un error
porque dice que una o varias filas no cumplen con las
restricciones Non-Null, Unique, o Foreign key. En
realidad los conjuntos de datos devuelto por las
consultas cumplen con todas las restricciones, el
problema creo que puede estar en que el fill agrega al
dataset unos 120 registros que tienen {System.DBNull} y
no tengo idea de porque los agrega y menos de porque la
relación interprete que estos registros violan las
restricciones.
Desde ya agradezo cualquier aporte,
Saludos,
Rafael
.

Respuesta Responder a este mensaje
#5 noeguma
23/08/2004 - 17:46 | Informe spam
Esto me ha sucedido cuando convierto tablas existentes a
una base de datos SQL, es decir ya con datos, tendras que
verificar cada campo a efecto de que no este vacio o en su
caso convertirlo a 0 o "" para que no te marque error, se
que no es de gran ayuda pero solo intento reafirmar las
sospechas de tu error.

Hola a todos!!
Tengo problemas al hacer el fill de un DataAdapter a un
DataSet múltiple con relaciones. Me genera un error
porque dice que una o varias filas no cumplen con las
restricciones Non-Null, Unique, o Foreign key. En
realidad los conjuntos de datos devuelto por las
consultas cumplen con todas las restricciones, el
problema creo que puede estar en que el fill agrega al
dataset unos 120 registros que tienen {System.DBNull} y
no tengo idea de porque los agrega y menos de porque la
relación interprete que estos registros violan las
restricciones.
Desde ya agradezo cualquier aporte,
Saludos,
Rafael
.

Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida