Fellipe Henrique escreveu: > Pessoal, estou passando minha base de Firebird pro Postgre, e estou > tentando criar uma função.. coloquei o seguinte: > > /* E verificado a existência de pendências no contador, caso encontre > continua */ > if (exists( select 1 from sys_seq_pend > where seq_tabela = lower(i_tabela) > and seq_campo = lower(i_campo))) then > > /* aqui e recuperado a seqüência perdida, armazenada no banco de dados */ > select seq_valor from sys_seq_pend > where seq_tabela = lower(i_tabela) > and seq_campo = lower(i_campo) > order by seq_valor desc /* pegaremos do maior para o menor */ > into id_sequencia;
Não pode existir mais de um seq_valor nestas condições? Não seria melhor colocar um LIMIT 1 ou, melhor ainda, um max(seq_valor)? > > return = id_sequencia; Bom, aqui tem um erro, deveria ser: RETURN id_sequencia; > end > > Na hora de compilar dá o seguinte erro: > > ERROR: syntax error at or near "=" at character 9 > QUERY: SELECT = $1 > CONTEXT: SQL statement in PL/PgSQL function "f_retornaid" near line 37 > > Bom, como sou iniciante, o que está de errado nisso aí? > Osvaldo _______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral