![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#4
|
||||
|
||||
|
Hola ivantech.
Todo lo que puedas hacer desde Delphi (y que no requiera intervención del usuario) lo puedes hacer también en un trigger. Este tipo de acciones (que se suelen llamar reglas de negocio) a mi me parece más ortodoxo programarlas en la base de datos, mediante un trigger, que en tu programa Delphi. Así separas la aplicación en varias capas (base de datos, reglas de negocios, y interficie de usuario) y es más fácil de mantener. Aquí tienes un par de artículos en castellano para introducirte en la programación de triggers : http://www.firebird.com.mx/modules/s....php?itemid=28 http://www.firebird.com.mx/modules/s....php?itemid=31 Es muy conveniente que utilices un buen programa para administrar tu base de datos Firebird, puesto que te facilitará la programación de triggers. Un programa como IB-Expert te permite incluso ejecutar tus triggers, línea a línea, depurando los errores. Lo que estás pidiendo es que dentro del trigger tengas una sentencia insert de este tipo : insert into detalles (id_detalle, id_cabecera, campo1, campo2) select gen_id(detalles_gen, 1), new.id_cabezera, campo1, campo2 from tabla1 Como puedes ver pongo la clave primaria (id_detalle) mediante un generador, para ir asignando valores consecutivos. Y en el campo de relación con la cabecera (id_cabecera), utilizo la variable new.id_cabecera. Como puedes leer en los artículos que te he enlazado, con las variables new.**** puedes consultar el valor de los campos en el registro de cabecera recien introducido que ha provocado la ejecución del trigger. Saludos. |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Modificar tabla para banda detalle | Vlady | SQL | 6 | 24-07-2008 23:05:01 |
| Filtro para Actualizar tabla... | anghell77 | SQL | 3 | 21-05-2006 11:06:53 |
| Maestro-Detalle ;Actualizar detalle a partir de un DBgrid | norberto_larios | Conexión con bases de datos | 1 | 11-09-2004 18:17:34 |
| Trigger para actualizar el id de una tabla | Choclito | Firebird e Interbase | 2 | 13-07-2004 20:46:38 |
| Actualizar tabla detalle | erickperez6 | Conexión con bases de datos | 0 | 04-05-2004 03:19:09 |
|