• Lunes 18 de Noviembre de 2024, 03:50

Autor Tema:  Actualizar Tablas Relacionadas  (Leído 2692 veces)

dcondor79

  • Nuevo Miembro
  • *
  • Mensajes: 13
    • Ver Perfil
Actualizar Tablas Relacionadas
« en: Viernes 8 de Julio de 2005, 20:28 »
0
Hola, estoy haciendo una aplicación en visual basic.net y tengo un formulario con 3 tablas relacionadas con datagrids, agrego un registro primario y despues agrego un registro secundario relacionado al registro primario que cree antes, y tengo un boton actualizar que me actualiza los 3 dataadapters, el problema es que me sale en ocasiones un error en la actualización, buscando en internet encontré que esto sucede porque cuando agrego regsitros secundarios los registros primarios en realidad todavia no existen hasta que actualice la base de datos primero, osea que primero tengo que crear el registro primario y actualizar la base de datos y solamente despues de eso puedo agregar el registro secundario, asi me funciona bien, pero claro no es la idea verdad??

http://msdn.microsoft.com/library/spa/default.asp?...

aqui esta la informacion que encontré, pero se me hace un poco complicado encontrar la solución a nivel de codigo, si alguien tiene experiencia con este problema porfavor hágame saber porque este es un escenario muy común en aplicaciones con base de datos y esto le puede servir a muchos usuarios



Gracias

Güorker

  • Miembro MUY activo
  • ***
  • Mensajes: 383
    • Ver Perfil
Re: Actualizar Tablas Relacionadas
« Respuesta #1 en: Lunes 11 de Julio de 2005, 08:22 »
0
Hola,

Creo que si en tu aplicación utilizas un DataSet que contenga las 3 tablas de la BD con sus relaciones y restriccones, a la hora de hacer las UPDATE de los DataAdapters no te da problemas porque es el DataSet quien gestiona esas relaciones entre filas.

Espero no estar equivocado. Saludos
[size=109]Ondo ibili, gutxi gastau eta bueltak amari[/size]
[size=109]Pasalo bien, gasta poco y las vueltas a tu madre[/size]

dcondor79

  • Nuevo Miembro
  • *
  • Mensajes: 13
    • Ver Perfil
Re: Actualizar Tablas Relacionadas
« Respuesta #2 en: Lunes 11 de Julio de 2005, 22:41 »
0
Hola:

Mi dataset se llama DsCategoriaEmpresaContacto y ahi están las 3 tablas con sus respectivas relaciones, mi problema es cuando por ejemplo quiero crear una empresa nueva y al mismo tiempo un contacto relacionado a la empresa nueva. Se supone que antes de crear el contacto primero hay que crear la empresa porque sino el contacto no tendría ninguna empresa con quien relacionarse, por lo tanto el codigo que utilizo para actualizar las tablas es el siguiente:


Sub boton_actualizar()
{


OledbDataAdapter1.Update(DsCategoriaEmpresaContacto)  // tabla categoria

OledbDataAdapter2.Update(DsCategoriaEmpresaContacto)  // tabla empresa

OledbDataAdapter3.Update(DsCategoriaEmpresaContacto)  // tabla contacto


}


por lo que se ve en el codigo, actualizo las tablas en el orden correcto, lo raro es que el codigo a veces me funciona perfectamente pero a veces me genera una excepcion y no se a que se debe, ayuda please....




David

Güorker

  • Miembro MUY activo
  • ***
  • Mensajes: 383
    • Ver Perfil
Re: Actualizar Tablas Relacionadas
« Respuesta #3 en: Martes 12 de Julio de 2005, 08:59 »
0
Hola,

Las Updates las deberías hacer de tal manera que primero se actualice la tabla padre de las relaciones y luego la tabla hija. Ya que si lo haces al reves puede que intentes meter un hijo sin padre y eso no es posible.

Por otro lado, si dices que a veces te funciona y otras veces te sale una excepción, ¿Podrías indicar la excepción que te sale?

Saludos y suerte
[size=109]Ondo ibili, gutxi gastau eta bueltak amari[/size]
[size=109]Pasalo bien, gasta poco y las vueltas a tu madre[/size]