Oracle Database 11g Release 11.2.0.4.0 - 64bit Production
I have a table, say TABLE_1, having multiple columns. One of those columns, say COL_4, is declared as
NUMBER(1,0)
I would expect it to contain either 0 or 1 (Boolean digested via Hibernate framework). Mostly it's what I expect, but I found one machine having weird values in that particular column: either 1 or -0,0000000000000000000000000000002217061832 .
Hibernate treats it as a zero, so the application still works well, however if I try to manually select all records having this field set to 0 I get no hits. sqldeveloper, sqlplus, IDEA DB plugin, sqldeveloper table exports -- tried all those and they all return the same results.
I could, of course, blame jdbc driver, but that would not explain how such a value is permitted by NUMBER(1,0).
Haven't noticed anything like this on any other table on any other DB server.
Now the questions are:
1. what could have caused that?
2. is it dangerous / potentially dangerous?
3. if yes - what are possible consequences of what possible actions?
4. remediation?
The off database is in PROD environment so I cant just go ahead and start trying things. Also I'm just a developer, not a database expert, but my client would still like me to get some answers...