Como criar uma seqüência se não existir

Eu tentei usar o código deVerifique se existe uma seqüência no Postgres (plpgsql).

Para criar uma sequência, se não existir. Executar esse código duas vezes causa uma exceção:

sequência ... já existe.

Como criar uma sequência apenas se ela não existir?

Se a seqüência não existir, nenhuma mensagem deverá ser gravada e nenhum erro deverá ocorrer, portanto, não será possível usar o procedimento armazenado na outra resposta a essa pergunta, pois ela grava a mensagem no arquivo de log sempre que houver uma seqüência.

do $
begin

SET search_path = '';
IF not EXISTS (SELECT * FROM pg_class
             WHERE relkind = 'S'
               AND oid::regclass::text = 'firma1.' || quote_ident('myseq'))
  THEN

SET search_path = firma1,public;

create sequence myseq;

END IF;

SET search_path = firma1,public;

end$;

select nextval('myseq')::int as nr;

questionAnswers(6)

yourAnswerToTheQuestion