How to resolve ORA-01847 Error Message in Oracle database

Learn the motive and how to resolve the ORA-01847 error message in Oracle.


When you encounter an ORA-01847 error, the following error message will appear:

ORA-01847: day of month need to be between 1 and ultimate day of month


You tried to enter a date value, but you precise a day of the month that is now not valid for the certain month.


The option(s) to resolve this Oracle error are:

Option #1

Enter a valid day of the month. You may additionally want to reflect onconsideration on using the TO_DATE characteristic if you are no longer already the use of it.

For example, if you tried to execute the following SQL statement:

SELECT TO_DATE('2004/12/32', 'yyyy/mm/dd')
FROM dual;

You would receive the following error message:

Since there are no longer 32 days in December, you need to enter a valid variety between 1 and 31 for the month of December, as follows:

SELECT TO_DATE('2004/12/31', 'yyyy/mm/dd')
FROM dual;

Learn more about the TO_DATE function.