Fórum Erro de sintaxe PL/pgSQL #488536

11/08/2014

0

Ao tentar criar a função abaixo, retorna a mensagem
ERRO: erro de sintaxe em ou próximo a "$1"
LINE 1: ALTER SEQUENCE seq_faixa_preco RESTART WITH $1;

CREATE OR REPLACE FUNCTION altseq () RETURNS integer AS $$
DECLARE qtd integer;
BEGIN
       SELECT count(id) FROM material.faixa_preco AS registros;
       qtd = registros + 11;
       ALTER SEQUENCE seq_faixa_preco RESTART WITH qtd;
       RETURN qtd;
END;
$$ LANGUAGE PLPGSQL RETURNS NULL ON NULL INPUT;
Sergio Rocha

Sergio Rocha

Responder

Post mais votado

11/08/2014

Tente o seguinte:

CREATE OR REPLACE FUNCTION altseq () RETURNS integer AS $$
DECLARE 
 qtd integer;
 registros integer;
BEGIN
       SELECT count(id) INTO registros FROM material.faixa_preco;
       qtd = registros + 11;
       ALTER SEQUENCE seq_faixa_preco RESTART WITH qtd;
       RETURN qtd;
END;
$$ LANGUAGE PLPGSQL RETURNS NULL ON NULL INPUT;

Ronaldo Lanhellas

Ronaldo Lanhellas
Responder

Gostei + 1

Mais Posts

11/08/2014

Sergio Rocha

Muito obrigado. Funcionou.
Responder

Gostei + 0

11/08/2014

Ronaldo Lanhellas

De nada :D
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar