[pgbr-geral] Erro chamando Function: operator does not exist: date ~~ unknown
Pessoal, Estou recebendo uma mensagem de erro estranha quando faço a chamada de uma function. Não encontrei no Google nada que me desse uma luz. Isso funciona com um pg 8.1 e não funciona com o pg 8.3. -- RuntimeException: CallableStatementCallback; bad SQL grammar [{? = call message_sms_mt_consolidate(?)}]; nested exception is org.postgresql.util.PSQLException: ERROR: operator does not exist: date ~~ unknown -- Aqui vai um trecho da function... -- CREATE OR REPLACE FUNCTION message_sms_mt_consolidate(data_limite timestamp without time zone) RETURNS integer AS $BODY$ DECLARE mtrp RECORD; mtrp_found INTEGER; BEGIN ... ... Blah blah blah... ... ... RETURN 0; END; $BODY$ LANGUAGE 'plpgsql' VOLATILE COST 100; -- Idéias? Eduardo Bobsin Machado Human Mobile - Torpedos SMS www.human.com.br mail: [EMAIL PROTECTED] phone: 51 3346 8282 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Erro chamando Function: operator does not exist: date ~~ unknown
Eduardo Bobsin Machado wrote: Pessoal, Estou recebendo uma mensagem de erro estranha quando faço a chamada de uma function. Não encontrei no Google nada que me desse uma luz. Isso funciona com um pg 8.1 e não funciona com o pg 8.3. -- RuntimeException: CallableStatementCallback; bad SQL grammar [{? = call message_sms_mt_consolidate(?)}]; nested exception is org.postgresql.util.PSQLException: ERROR: operator does not exist: date ~~ unknown -- Aqui vai um trecho da function... -- CREATE OR REPLACE FUNCTION message_sms_mt_consolidate(data_limite timestamp without time zone) RETURNS integer AS $BODY$ DECLARE mtrp RECORD; mtrp_found INTEGER; BEGIN ... ... Blah blah blah... ... ... RETURN 0; END; $BODY$ LANGUAGE 'plpgsql' VOLATILE COST 100; -- Idéias? Envie o conteudo de blah blah blah para analisarmos, deve ser nele. Um sugestão, faça a mesma chamada que a aplicação faz pelo pgAdmin, a mensagem de erro traz mais algumas informações uteis, como o número da linha que deu o problema. Isso pode te ajudar. Ai você só envia a linha com erro. Evandro ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Erro chamando Function: operator does not exist: date~~ unknown
Me parece que o problema que vc tem é semelhante ao que relatei por essa semana no forum. No meu caso eu estava comparando uma data a um numero(o que funcionava na versão 7.3, mas não na 8.3) Acho que você precisa definir o tipo de dado que está envolvido na operação com a data (ERROR: operator does not exist: date ~~ unknown) Eu tive que reescrever. - Original Message - From: Eduardo Bobsin Machado [EMAIL PROTECTED] To: 'Comunidade PostgreSQL Brasileira' pgbr-geral@listas.postgresql.org.br Sent: Friday, February 29, 2008 11:15 AM Subject: [pgbr-geral] Erro chamando Function: operator does not exist: date~~ unknown Pessoal, Estou recebendo uma mensagem de erro estranha quando faço a chamada de uma function. Não encontrei no Google nada que me desse uma luz. Isso funciona com um pg 8.1 e não funciona com o pg 8.3. -- RuntimeException: CallableStatementCallback; bad SQL grammar [{? = call message_sms_mt_consolidate(?)}]; nested exception is org.postgresql.util.PSQLException: ERROR: operator does not exist: date ~~ unknown -- Aqui vai um trecho da function... -- CREATE OR REPLACE FUNCTION message_sms_mt_consolidate(data_limite timestamp without time zone) RETURNS integer AS $BODY$ DECLARE mtrp RECORD; mtrp_found INTEGER; BEGIN ... ... Blah blah blah... ... ... RETURN 0; END; $BODY$ LANGUAGE 'plpgsql' VOLATILE COST 100; -- Idéias? Eduardo Bobsin Machado Human Mobile - Torpedos SMS www.human.com.br mail: [EMAIL PROTECTED] phone: 51 3346 8282 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Erro chamando Function: operator does not exist: date ~~ unknown
Envie o conteudo de blah blah blah para analisarmos, deve ser nele. Um sugestão, faça a mesma chamada que a aplicação faz pelo pgAdmin, a mensagem de erro traz mais algumas informações uteis, como o número da linha que deu o problema. Isso pode te ajudar. Ai você só envia a linha com erro. Evandro Evandro, No pgAdmin a chamada funciona! Mais diferenças: a versão do driver JDBC! No ambiente onde não funciona, estou usando a versão 8.3-603 JDBC 3. No ambiente onde funciona, uso alguma versão 8.1 ou 8.2. Sempre JDBC 3. Vou testar com outro driver e posto o resultado. Obrigado! Eduardo Bobsin Machado Human Mobile - Torpedos SMS www.human.com.br mail: [EMAIL PROTECTED] phone: 51 3346 8282 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Erro chamando Function: operator does not exist: date ~~ unknown
Das Release Notes da versão 8.3: E.1.2.1. General - Non-character data types are no longer automatically cast to TEXT http://www.postgresql.org/docs/8.3/interactive/release-8-3.html Osvaldo Sérgio e Osvaldo, Realmente era esse o problema. Não havia percebido que na function havia comparação de datas com LIKE. Alterei para date_trunc() e agora tudo funciona. Obrigado! Eduardo Bobsin Machado Human Mobile - Torpedos SMS www.human.com.br mail: [EMAIL PROTECTED] phone: 51 3346 8282 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral