Perdoem-me pelo vacilo, realmente a function que eu havia enviado está correta [?]
Bem, aqui está a function correta que eu estou tentando corrigir e que não está atualizando os dados como gostaria. Grato pela ajuda! *CREATE OR REPLACE FUNCTION updateNumberCheckinsPlace(id1 integer, id2 integer)* *RETURNS boolean AS $$* * DECLARE* * result BOOLEAN;* * tmp RECORD;* * tmp2 RECORD;* * i NUMERIC;* * BEGIN* * result := false;* * FOR tmp IN SELECT DISTINCT place_id FROM places p, checkins c* * WHERE c.place_id = p.id AND c.place_id >= id1 AND c.place_id <= id2* * AND c.num_checkin_place IS NOT NULL * * GROUP BY place_id ORDER BY place_id LOOP* * i := 0;* * FOR tmp2 IN SELECT * FROM checkins WHERE place_id = tmp.place_id ORDER BY time_checkin LOOP* * i := i+1;* * EXECUTE 'UPDATE checkins SET num_checkin_place = ' || i || ' WHERE id = ' || tmp2.id;* * result := true;* * END LOOP;* * END LOOP;* * RETURN result;* * END;* *$$ LANGUAGE plpgsql; * Bruno Neiva Moreno http://brunomoreno.com Em 8 de abril de 2013 16:02, Marcelo da Silva <[email protected]> escreveu: > *select teste(); * > * > * > *Teria que ter os valores para A e B, não é isso ?* > * > * > *Marcelo Silva* > *-------------------------------* > > > Em 8 de abril de 2013 16:52, Bruno Moreno <[email protected]> escreveu: > >> Caros, possuo uma função que está compilando e executando sem erros. >> Dentro dela tem um comando UPDATE. Após executada, a função acaba por não >> realizar nenhuma alteração nos meus dados. >> >> Acredito que o erro esteja quando chamo o UPDATE pelo fato de que com uma >> função simples como a que consta abaixo, também não tenho o resultado >> esperado. >> >> Não consegui identificar este erro simples, alguém pode me ajudar? >> >> Muito obrigado. >> >> *create table x (a integer, b integer)* >> *insert into x values (1,2);* >> *insert into x values (1,3);* >> * >> * >> *CREATE OR REPLACE FUNCTION teste()* >> *RETURNS VOID AS $$* >> * DECLARE* >> * delta INTEGER;* >> * BEGIN * >> * delta := -9;* >> * EXECUTE 'UPDATE x SET a = 1 WHERE b = 2';* >> * END;* >> *$$ LANGUAGE plpgsql;* >> * >> * >> *select teste();* >> *select * from x* >> >> Bruno Neiva Moreno >> http://brunomoreno.com >> >> _______________________________________________ >> pgbr-geral mailing list >> [email protected] >> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >> >> > > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > >
<<361.gif>>
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
