Función que actualiza una tabla iterando la misma con números correlativos a partir de un parámetro:
CREATE OR REPLACE FUNCTION seq_id(integer) RETURNS VOID AS
$$
DECLARE
nrosec integer:= $1;
curupd CURSOR FOR SELECT * from tabla for UPDATE;
BEGIN
for i in curupd LOOP
UPDATE tabla SET id=nrosec WHERE CURRENT OF curupd;
nrosec:=nrosec+1;
END LOOP;
return;
END;
$$
LANGUAGE 'plpgsql';
No hay comentarios.:
Publicar un comentario