BASE DE CONOCIMIENTO

Error: "ORA-01861: literal does not match format string" al usar la función DATE() con Oracle


Publicado: 23 Jan 2017
Fecha de la última modificación: 24 Aug 2022

Problema

Al usar la función DATE() en un campo calculado con una fuente de datos Oracle, puede producirse el siguiente error:

ORA-01861: literal does not match format string (el literal no coincide con la cadena de formato)

Entorno

  • Tableau Desktop
  • Oracle

Solución

Utilice la función DATEPARSE() en lugar de la función DATE() .

Por ejemplo, si el cálculo de DATE() es
DATE( STR ([Year]) + "-" + STR([Month]) + "-1" )

El cálculo de DATEPARSE() coincidente sería

​DATEPARSE("yyyy-mm-dd", (STR ([Year]) + "-" + STR([Month]) + "-1" ))

Causa

Este error se produce cuando se introduce un literal con una cadena de formato, pero la longitud de dicha cadena de formato no es igual a la del literal. En ocasiones, esto puede ocurrir en Tableau Desktop al usar la función DATE() con una base de datos Oracle. 
¿Fue de ayuda este artículo para resolver el problema?