Re: Delete trigger
От | Leif Jensen |
---|---|
Тема | Re: Delete trigger |
Дата | |
Msg-id | 1588593519.5266893.1442566172786.JavaMail.zimbra@crysberg.dk обсуждение исходный текст |
Ответ на | Re: Delete trigger ("Charles Clavadetscher" <clavadetscher@swisspug.org>) |
Ответы |
Re: Delete trigger
|
Список | pgsql-general |
Hi Charles, If I do "DELETE FROM devicegroup WHERE group=1" I do not want to delete anything. I only want to delete if I do "DELETEFROM devicegroup WHERE groupid=x AND ctrlid=y AND userid=z". I don't wanna let anyone delete more than 1 row at atime. Leif ----- Original Message ----- > Hello > > Not sure I get it right, but all three fields are not nullable. So they will > always have a value, which is what I understand of "are specified". > What do you need the trigger for in that case? > > Bye > Charles > > > -----Original Message----- > > From: pgsql-general-owner@postgresql.org > > [mailto:pgsql-general-owner@postgresql.org] On Behalf Of Leif Jensen > > Sent: Freitag, 18. September 2015 10:23 > > To: pgsql-general <pgsql-general@postgresql.org> > > Subject: [GENERAL] Delete trigger > > > > Hi, > > > > I am running PostgreSQL 9.3.4. I have a simple table with 3 fields: > > > > CREATE TABLE devicegroup ( > > groupid integer NOT NULL, > > ctrlid integer NOT NULL, > > userid integer NOT NULL > > ); > > ALTER TABLE ONLY devicegroup > > ADD CONSTRAINT pk_devicegroup PRIMARY KEY (groupid, ctrlid, userid); > > > > I want to make sure that records are only deleted when all 3 fields are > > specified, so I tried make a trigger: > > > > CREATE TRIGGER userDev_trig INSTEAD OF DELETE ON admdevgrid FOR EACH > > STATEMENT > > EXECUTE PROCEDURE deleteUserDev(); > > > > which could check for NOT NULL on the 3 fields before actual doing the > > delete. Unfortunately this is not possible to > > do FOR EACH STATEMENT, and FOR EACH ROW would not give me the chance to > > check for NOT NULL. > > > > Any ideas ? > > > > Leif > > > > > > -- > > Sent via pgsql-general mailing list (pgsql-general@postgresql.org) > > To make changes to your subscription: > > http://www.postgresql.org/mailpref/pgsql-general > >
В списке pgsql-general по дате отправления: