[pgsql-ayuda] triggers
Manuel Sugawara
masm@fciencias.unam.mx
22 Aug 2001 11:47:08 -0500
"Mario Oroz" <jmoroz@uol.com.ar> writes:
> > create table clientes (
> > codigo varchar(10) nor null primary key,
> > nombre varchar(40)
> > );
> >
> > create table facturas (
> > numero int4 not null primary key,
> > fecha date,
> > cliente varchar(10) references clientes,
> > ....
> > );
> >
pon en la definici=F3n de facturas algo como:
cliente varchar(10) references clientes ON UPDATE CASCADE,
y postgeSQL lo hace por ti. (hint: las p=E1ginas de manual son tus
amigas: man l create_table)
Saludos,
Manuel.
> > Si hago lo anterior me crea unos triggers sin nombre con unas funciones
> > extra=F1as que he deducido tengo que crear. Lo que pretendo es que cuan=
do
> > cambie el codigo del cliente en su tabla correspondiente se me cambie
> > tambien en la tabla de facturas. Supongo que la funcione que se ejecuta
> > en el triger es la siguiente:
> >
> > create function cambiocliente (varchar, varchar) returns bool as '
> > update facturas set cliente =3D $2 where cliente =3D$1;
> > select 1;
> > ' language 'sql';
> >
> > Pues no logro que funcione. Evidentemente no estoy entendiendo algo pero
> > por mas que consulto los manuales, traducidos o no, no me aclaran nada
> > mas all=E1 de lo que estoy exponiendo.
>=20
> > >NOOOOOO.
>=20
> > >La llave primaria debe ser respetada como la ni=F1a de tus ojos!
>=20
> * * *
> Hola!!
> Bueno ... lograron confundirme...:
>=20
> No era que el trigger que crea al momento de "armar" las referencias son =
en
> efecto los que me permitiran modificar (en el caso del cliente con sus fa=
cturas
> y ya se *yo tampoco cambiaria una llave primaria ...pero....*) el id de c=
liente
> de juan perez de 45 al 890 y que automaticamente el trigger me actualice =
ese id
> referenciado en cada factura?
> A este punto me dirijo y quiero sacarme esa duda? por cualquier otra cosa=
o mala
> interpretacion por mi parte ...estoy abierto, i=B4m opennn, a que me corr=
ijan y
> expliquen.
>=20
> Mario O. - Argentina
> Usuario de Linux no registrado! ;)
>=20
>=20
>=20
>=20
> _______________________________________________
> Pgsql-ayuda mailing list
> Pgsql-ayuda@tlali.iztacala.unam.mx
> http://tlali.iztacala.unam.mx/mailman/listinfo/pgsql-ayuda