OK,
Entonces el insert en B debería retornar el ID de B para que lo puedas insertar en A. Slds,. Javier. De: pgsql-es-ayuda-ow...@postgresql.org [mailto:pgsql-es-ayuda-ow...@postgresql.org] En nombre de Javier Rotelli Enviado el: lunes, 10 de enero de 2011 01:01 p.m. CC: pgsql-es-ayuda@postgresql.org Asunto: Re: [pgsql-es-ayuda] Problema con vista, regla, e insert multiple gracias por la pronta respuesta. me olvide de poner, que los dos ids tienen como valor por default secuencias que les asignan automaticamente un numero. asi que por ese lado no pareciera estar el problema El 10 de enero de 2011 13:58, Javier Aquino H. <jaqu...@lexuseditores.com> escribió: Por lo que veo al hacer el INSERT en B solo insertas DATO1, pero no veo que ingreses el ID. Slds, Javier. De: pgsql-es-ayuda-ow...@postgresql.org [mailto:pgsql-es-ayuda-ow...@postgresql.org] En nombre de Javier Rotelli Enviado el: lunes, 10 de enero de 2011 11:49 a.m. Para: pgsql-es-ayuda@postgresql.org Asunto: [pgsql-es-ayuda] Problema con vista, regla, e insert multiple estimados: estoy trabajando ahce poco con postgreSQL. y me surgio un problema que no puedo solucionar: tengo dos tablas, realacionadas mediante una FK de la siguiente manera: A B ID |------>ID DatoA | DATO1 DatoB | DatoC | ID_B---------| arme una vista que tiene la siguiente estructura: SELECT A.ID, A.DatoA, A.DatoB, A.DatoC, B.Dato1 FROM A JOIN B ON A.ID_B = B.ID el problema viene cuando quiero armar las reglas que hagan que se pueda inserta en la vista. si la regla consta de un solo insert funciona, ahora, la regla que defini para el caso de querer insertar un valor de Dato1 que no este en B, inserta en B, pero no hace el insert en A. es una limitacion de las reglas? o estoy armandolas mal? CREATE OR REPLACE RULE insert_nuevo_Dato1 AS ON INSERT TO vista_AB WHERE NOT (new.Dato1 IN ( SELECT Dato1 FROM B)) DO INSTEAD ( INSERT INTO B (Dato1) VALUES (new.Dato1); INSERT INTO A (ID, DatoA, DatoB, DatoC) VALUES (new.ID, new.DatoA, new.DatoB, new.DatoC); ); buscando encontre que la herramienta que estaba utilizando(pgAdmin III) tiene un bug que no permite agregar multiples sentencias en una regla, por lo que tuve que crearla mediante psql. pero aun asi, el 2º insert sigue sin ejecutarse. lo que quiero hacer no se puede hacer mediante reglas? o me estoy equivocando en algo? muchas gracias por su atencion. Javier Rotelli