SQL Developer and SQLcl Displaying the Correct Date Although the Bytes Stored in the Block Are Invalid
(Doc ID 2996249.1)
Last updated on JANUARY 05, 2024
Applies to:
Oracle SQL Developer - Version 21.4.3 and laterOracle SQLcl - Version 21.2 and later
Information in this document applies to any platform.
Symptoms
You have some invalid DATE rows in a table, and after reviewing Document 331831.1 and Document 69028.1, you understand how the rows got there (Cobol process as part of Peoplesoft processing).
When query the invalid dates using SQL*Plus, the dates show invalid dates, as expected. However, when query the same invalid dates using SQL Developer or SQLcl, the dates show valid ones.
For Example:
sqlplus displays it as "00/09/2022", but SQL Developer displays the value as "31/08/2022". In this case, sqlplus has no nls_date_format session settings, as they are inherited from database NLS settings.
Dumping the block and value the 7 byte date is indeed invalid, but how does the SQL Developer show the "correct" date and not an invalid one?
Cause
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Symptoms |
Cause |
Solution |
References |