FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Problemas con las relaciones
Hola que tal a todos...
Les agradeceria muchisimo su ayuda... Estoy trabajando con Delphi7 y mi Base de Datos esta en Mysql 4.0.18, Tengo una tablaPadre con su id_llav (que se va auto incrementando) y una tablaHija, con su llave foranea id_llav. Tengo un Form donde capturo la informacion de la Tabla Padre por medio de DBEdiths y de la Tabla Hija capturo la informacion por medio de un DBGrid, en la tablaHija en la propiedad cahedUpdate la tengo en true, para que los datos que tenga en el DBGrid me los guarde en Cache. Pero el problema es cuando Le doy al boton de (guardar todo), si me guarda bien en la TablaPadre, pero en la TablaHija no me guarda el id de la TablaPadre, no se hace la relacion, como puedo hacerla, ya intente con MasterSource y MasterFields pero al momento de guardar es como si no se hiciera nada en la TablaHija. Tambien en el evento de la tablaHija, en BeforePost le tengo esto: TablaHija.value:=TablaPadre.value; Este es el codigo del Boton para Guardar: procedure TForm1.BitBtn1Click(Sender: TObject); begin if MessageDlg('DESEA GUARDAR LOS CAMPOS',mtInformation,[mbOK,mbCANCEL],0)=mrok THEN begin TablaPadre.Post; TablaHija.ApplyUpdates; end else begin ShowMessage('NO SE GUARDO NINGUN REGISTRO'); end end; Saludos... Y Gracias |
#2
|
||||
|
||||
¿Qué componentes usas para acceder a MySql?
Intenta hacer un TablaPadre.Refresh luego del Post y antes del ApplyUpdates. Otra cosa a intentar es tomar el valor del campo autoincremental directamente de MySql lanzando la consulta
inmediatamente después del Post y usando el valor devuelto para el campo foráneo en la tabla hija antes del ApplyUpdates. // Saludos |
#3
|
|||
|
|||
Gracias Roman por responderme
Para hacer la conexion a msql instale primero el MaiDac para delphi7, y ya me aparece un nuevo componente de MyConexion y luego por el componente de mytable hago la conexion a mis tablas de mysql, Perdón, Me falto decirte que en la tablaHija al momento de meterle varios registros, y al guardarlos si me pone la llave en el campo id foraneo pero nadamas en el ultimo registro que capturo en el DBGrid, y en todos los demas me pone ' 0 '. como que si me respeta la relacion pero nadamas para el ultimo campo que capturo en el DBGrid y en todos los demas me pone cero. Que podria ser Roman.. o como le puedo hacer Saludos y Gracias... |
|
|
|