我只是想知道如何将日期01/01 / 4000BC插入oracle

尝试了以下但无济于事

INSERT INTO person(birth_date) VALUES(TO_DATE('-4700/01/01', 'syyyy/mm/dd'))

我敢肯定,我已经错过了一些显而易见的事情,因此对此有一些新的了解确实会有所帮助。

谢谢!

最佳答案

我看不到您的语法问题。这个对我有用:

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>

您遇到的确切问题是什么?什么版本的Oracle?

您必须在输出上使用BC或SYYYY格式说明符,否则日期不正确:
SQL> select * from tt;

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

SQL>

关于sql - 如何将BC日期插入Oracle?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6779521/

10-12 00:37
查看更多