ORA-01841: (full) year must be between -4713 and +9999, and not be 0
The earliest date that can be represented with a date is January 1st of 4712 BC, earlier dates throw ORA-01841: (full) year must be between -4713 and +9999, and not be 0.
SQL> select date '-4712-01-01' from dual;
DATE'-4712-01-01'
-------------------
4712-01-01 00:00:00
SQL> select date '-4713-12-31' from dual;
select date '-4713-12-31' from dual
*
ERROR at line 1:
ORA-01841: (full) year must be between -4713 and +9999, and not be 0
SQL> select date '-4712-01-01' from dual;
DATE'-4712-01-01'
-------------------
4712-01-01 00:00:00
SQL> select date '-4712-01-01' + 1 from dual;
DATE'-4712-01-01'+1
-------------------
4712-01-02 00:00:00
SQL> select date '-4712-01-01' - 1 from dual;
select date '-4712-01-01' - 1 from dual
*
ERROR at line 1:
ORA-01841: (full) year must be between -4713 and +9999, and not be 0