Jump to content


Photo

Md5(Int) Não Funciona


  • Faça o login para participar
Nenhuma resposta neste tópico

#1 Mai16

Mai16

    Novato no fórum

  • Usuários
  • 10 posts
  • Sexo:Não informado

Posted 08/07/2010, 17:07

Olá Pessoal,

estou precisando muito ajuda de vocês!

estou migrando um banco de dados da versão 7.4 para a 8.4 e tem um problema que está me tirando o sono.

instalei a versão 8.4 configurei deixa toda pronta para armazenar o banco, migrei a tudo, ate ai tudo bonitinho, mas ao começar os testes com o sistema apareceu o erro:
Função md5(intiger) não existe.
como assim nao existe se no outro banco isso funcionava?

alguém sabe o que tenho que fazer para a md5 aceitar inteiros?

a propósito sei que posso fazer isso: select md5('1'); e isso: select md5( cast(1 as text) ); mas no meu caso nenhum dos dois resolve.
preciso que isso funcione: select md5(1);

vlw!

Achei uma forma de resolver o problema:

CREATE OR REPLACE FUNCTION md5(bigint)
RETURNS TEXT AS
$BODY$
DECLARE
n ALIAS FOR $1;
BEGIN
RETURN md5(CAST(n AS TEXT));
END;
$BODY$
LANGUAGE 'plpgsql';

Criando essa função em template1, todo banco novo herda.

=D

Alguém conhece uma forma melhor?

Edição feita por: Mai16, 08/07/2010, 17:07.





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq