Re: Limitar el número de registros actualizados o borrados

From: "Jaime Casanova" <systemguards(at)gmail(dot)com>
To: "Paulina Quezada" <paulina(dot)quezada(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Limitar el número de registros actualizados o borrados
Date: 2006-03-15 00:15:34
Message-ID: c2d9e70e0603141615r2f693334q7c25a0e58656c5af@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On 3/14/06, Paulina Quezada <paulina(dot)quezada(at)gmail(dot)com> wrote:
> Hola, quiero evitar que cualquier usuario haga deletes o updates masivos
> sobre una tabla, estoy tratando de controlarlo por trigger, pero no sé como
> obtengo desde postgress el número de filas afectadas como en sybase
> @@rowocount. Intenté hacerlo mediante la sentencia GET DIAGNOSTICS variable
> = ROW_COUNT; pero me devuelve siempre 0 porque esta es la primera sentencia
> en la función asociada en el trigger y no existe una sentencia SQL antes.
> Espero que alguien me pueda ayudar, gracias!!
>
>
>
> CREATE OR REPLACE FUNCTION fc_insumo_de()
> RETURNS "trigger" AS
> $BODY$
> DECLARE
> my_rec record;
> fila int;
> BEGIN
>
> GET DIAGNOSTICS fila = ROW_COUNT;
> --IF (fila) >1 THEN
> --RAISE NOTICE 'NUMERO DE FILAS AFECTADAS %',fila;
> --END IF
>
> -- No se permite actualizaciones masivas --
> IF fila > 1 THEN
> RAISE EXCEPTION 'No se permite actualizaciones masivas';
> END IF;
>
> RETURN OLD;
> END;
> $BODY$
> LANGUAGE 'plpgsql' VOLATILE;
> ALTER FUNCTION fc_insumo_de() OWNER TO postgres;
>
>
> CREATE TRIGGER tr_insumo_de BEFORE DELETE ON insumo
> FOR EACH STATEMENT EXECUTE PROCEDURE fc_insumo_de();
>

No deberia ser un trigger AFTER DELETE?

--
Atentamente,
Jaime Casanova

"What they (MySQL) lose in usability, they gain back in benchmarks, and that's
all that matters: getting the wrong answer really fast."
Randal L. Schwartz

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jaime Casanova 2006-03-15 00:27:05 Re: importacion solucianada
Previous Message Alvaro Herrera 2006-03-14 23:43:13 Re: Trigger