首页 > 解决方案 > ORA-01843:不是有效月份 ORA-06512:在第 5 行和 ORA-01861:文字与格式字符串不匹配 ORA-06512:在第 5 行

问题描述

程序创建准确,但执行时间出现标题中提到的错误。

DECLARE
     var NUMBER;
     var1 NUMBER;
BEGIN
     sale_procedure(outletid => 809,itemcod => 128169,start_date => '2018-1-1',end_date => '2019-1-1'
     ,amount => var,quantity => var1);

     dbms_output.enable;
     dbms_output.put_line(var);
End;
/

标签: oracleplsql

解决方案


似乎作为输入参数(START_Date,END_DATE)传递的日期需要是“日期”数据类型或根据您的 NLS_DATE_FORMAT 设置使用字符串格式。如果符合 NLS 设置,则可以直接使用该字符串代替日期。

最好使用 to_date 函数或 date ''。

示例:to_date('01-01-2019','dd-mm-rrrr')


推荐阅读