FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Trigger para actualizar el id de una tabla
bueno tengo dos tablas la cual tienen relacion 1 a muchos las cuales son
table cuenta ( id char (3), descripcion varchar (20)) y la tabla cuenta2( id2 char (6), descripcion varchar (25), id char (3), foreign key (id) references cuenta(id)) quiero que la llave de la tabla cuenta2 sea la concatenacion de su llave mas la llave foranea que tiene e hice un triger para esto pero el cual solo realiza para el primer registro y nada mas el triger es el siguiente COMMIT WORK; SET TERM ^; CREATE TRIGGER INSERTAR_PRUEBA FOR CUENTA2 ACTIVE AFTER INSERT AS BEGIN UPDATE CUENTA SET ID=ID||'-'||ID2; END^ SET TERM ; ^ COMMIT WORK; y la verdad quisiera que me ayuden les estare muy agradecido nose en que estos fallando o talves hay otra forma de hacer que la llave de una tabla sea la concatenacion de su llave mas la llave foranea que tiene la tabla. Muchas gracias foro esperar realmente que me ayuden................. |
#2
|
||||
|
||||
Hola.
Pues no debería hacerlo ni para el primer registro. Estás ejecutandolo en un evento AfterInsert, es decir una vez ya se ha creado el registro, por lo que las modificaciones que hagas en las variables new. no se reflejarán en la base de datos. Realízalo en un evento Before Insert. NOTA: Me parece una chapuza que pongas un valor en un campo (el campo ID) y que un trigger lo modifique automaticamente. Seria mejor que utilizaras dos campos, uno en el que guardes ID2 y otro en el que guardes ID1 || ID2 (que además puede ser un campo calculado de la base de datos (computed by), por lo que no deberías ni darle valor en un trigger). Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#3
|
||||
|
||||
No entiendo para que quiers concatenarlo simplemente cuando lo selcciones selecionalo concatenado si es eso lo quieres
Espero te sea de ayuda |
|
|
|