ERROR: date/time field value out of range

From: Hellmuth Vargas <hivs77(at)gmail(dot)com>
To: Lista Postgres ES <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: ERROR: date/time field value out of range
Date: 2019-11-13 18:08:14
Message-ID: CAN3Qy4rWO=Mj8wBT7Fv9V0x__4_EcVdsMHQVrC87Jby_ZueW7Q@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola Lista

por medio de un PHP estoy consulado en varias bases de datos ( pg 9.6) la
siguiente consulta:

SELECT sum(xact_commit+xact_rollback)::bigint as cantidad,
to_char(now(),'YYYY-MM-DD HH24:MI:SS.MS.US') as fecha,inet_server_addr()
FROM pg_stat_database;

y luego lo inserto en una base de datos diferente (pg 10)

$sqlLocal="insert into tps(ip_host, tps, fecha) values
('".$this->serverDB[$i][2]."',".$result2[0][0].",to_timestamp('".$result2[0][1]."','YYYY-MM-DD
HH24:MI:SS.MS.US'));";

ya me documente y desde la versión pg 10 valida la fecha/hora
https://www.postgresql.org/docs/10/release-10.html#id-1.11.6.10.5.8

"Make to_timestamp()
<https://www.postgresql.org/docs/10/functions-formatting.html#FUNCTIONS-FORMATTING-TABLE>
and to_date() reject out-of-range input fields (Artur Zakirov)
For example, previously to_date('2009-06-40','YYYY-MM-DD') was accepted and
returned 2009-07-10. It will now generate an error."

se genero el siguiente registro:

insert into temp(ip_host, tps, fecha) values
('192.168.XX.YY',100552098,'2019-11-13 11:34:45.656.656301'::timestamp);

la inserción genero el error... lo ironico es que fue el motor pg 9.6 que
genero esta fecha y ahora el motor pg 10 lo rechaza!!!

hay alguna manera de subsanarlo??? sea: que el la 9.6 genere el dato valido
o en la 10 lo ajuste antes de insertarlo. Gracias lista

--
Cordialmente,

Ing. Hellmuth I. Vargas S.

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2019-11-13 18:10:38 Re: Hola lista tengo una pregunta que no puedo pillar la respuesta.
Previous Message Horacio Miranda 2019-11-13 18:00:41 Re: Hola lista tengo una pregunta que no puedo pillar la respuesta.