Da MOS-
Inserire i secondi intercalari in una colonna timestamp non riesce con ORA-01852 (DocID 1553906.1)
SI APPLICA A:
Oracle Database - Enterprise Edition - Versione 8.1.7.4 e successive
Oracle Database - Standard Edition - Versione 8.1.7.4 e successive
Le informazioni in questo documento si applicano a qualsiasi piattaforma.
SINTOMI:
Un tentativo di inserire i secondi intercalari in una colonna timestamp non riesce con:ORA-01852:i secondi devono essere compresi tra 0 e 59
CAUSA
Non è possibile memorizzare un valore>59 sec in un tipo di dati data o timestamp
SOLUZIONE
Per ovviare a questo problema, il record del secondo intercalare può essere archiviato invece nel tipo di dati avarchar2, ad es.
SQL> create table test (val number, t varchar2(30));
Table created.
SQL> insert into test values(123, '2012-06-30T23:59:60.000000Z');
1 row created.
Non la soluzione migliore, ma l'unica soluzione.