Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment insérer une date BC dans Oracle ?

Je ne vois pas le problème avec votre syntaxe. Cela fonctionne pour moi :

Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 
Connected as xxx

SQL> CREATE TABLE tt (d DATE);

Table created

SQL> INSERT INTO tt VALUES (to_date('-4700/01/01','syyyy/mm/dd'));

1 row inserted

SQL> SELECT to_char(d, 'MM/DD/YYYY BC') FROM tt;

TO_CHAR(D,'MM/DD/YYYYBC')
-------------------------
01/01/4700 BC

SQL>

Quel est le problème exact que vous rencontrez ? Quelle version d'Oracle ?

Vous devez utiliser le spécificateur de format BC ou SYYYY sur la sortie, sinon vous obtenez des dates incorrectes :

SQL> select * from tt;

D
-----------
00-h:mm:ss

SQL>