是否可以像在mysql中那样在oracle中分配默认值'0000-00-00 00:00:00'?
在mysql中进行示例查询:
ALTER TABLE。修改列时间戳默认为'0000-00-00 00:00:00';
答案 0 :(得分:1)
否-在Oracle中,不能将年,月或日设置为零。我建议改用NULL。
当然,现在回过one of my old questions并爬了一个或两个虫洞,我发现您可以接受为零的一年-但该月份仍然出现并且day不能为零。要获得零年,您必须使用ANSI日期文字-例如DATE '0000-01-01'
被认为是可以接受的。我不知道各种日期例程和日期计算是否会像这样-例如,TO_CHAR(DATE '0000-01-01', 'DD-MON-YYYY')
产生的结果为'00 -000-0000',这肯定不是我所期望的,但也许是足以满足您的目的。请注意,您无法采用其他方法-TO_DATE('00-000-0000', 'DD-MON-YYYY')
会产生预期的ORA-01847 - day of month must be between 1 and last day of month
错误。
有人真的知道现在几点吗? :-)