当我尝试执行以下查询时
insert into TEST (PROCESSING_START_DATE)
values (to_date('05/13/2013','MM/DD/YYYY'));
我收到以下错误
Error report -
SQL Error: ORA-01847: day of month must be between 1 and last day of month
01847. 00000 - "day of month must be between 1 and last day of month"
*Cause:
*Action:
且PROCESSING_START_DATE
的类型为DATE
select dbms_metadata.get_ddl('TABLE', 'TEST') from dual
的输出是:
CREATE TABLE "TEST" (
"PROCESSING_START_DATE" DATE
SEGMENT CREATION IMMEDIATE PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
答案 0 :(得分:0)
如果没有触发器或任何涉及的东西,我就是不相信你。我认为这应该独立于任何NLS设置。
这对我有用:
create table HVBTEST (D date);
insert into HVBTEST (D) values (to_date('05/13/2013','MM/DD/YYYY'));
你真的用SQL * Plus直接测试了吗? 或者这是应用程序的一部分而您只是认为您的代码执行此操作?