Em 13 de setembro de 2012 17:02, Anselmo Silva <[email protected]> escreveu:
> Foi o que pensei. Que pena! Seria muito útil. Obrigado Vinícios.
Se você precisa de algo parecido com constantes, crie funções PL/SQL
sem argumentos e com a cláusula IMMUTABLE [1]. Definitivamente não é a
mesma coisa, mas terá o mesmo comportamento. Por exemplo:
CREATE OR REPLACE FUNCTION UM() RETURNS INTEGER AS
$BODY$
BEGIN
RETURN 1;
END
$BODY$
LANGUAGE 'PlPgSQL' IMMUTABLE
Parece absurdo, mas se você possui constantes matemáticas com ponto
flutuante, pode ser útil.
Uso:
SELECT UM() + UM()
---
Dica pessoal: considere criar uma função que retorne valores de
parâmetros, e mantenha estes parâmetros em uma tabela. Seria algo
como:
SELECT GET_PARAM('UM') + GET_PARAM('UM')
---
[1] http://www.postgresql.org/docs/9.1/static/sql-createfunction.html
--
TIAGO J. ADAMI
http://www.adamiworks.com
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral