ORA-01843:无效月份ORA-06512:在第5行和ORA-01861:文字与格式字符串不匹配ORA-06512:在第5行

时间:2019-05-29 04:28:00

标签: oracle plsql

过程创建正确,但标题中提到执行时间出错。

>>> list1 = [ ['3', 'Americano', '7', '14000'], ['4', 'Smoothie_queen', '4', '12000'], ['5', 'Americano', '2', '4000'], ['6', 'Americano', '17', '34000'], ['7', 'Cafe_mocha', '4', '11200'], ['8', 'Cafe_latte', '11', '27500'], ['9', 'Americano', '17', '34000'], ['10', 'Amorparty', '2', '4000'], ['11', 'Plain_yogurt', '13', '45500']]
>>> 
>>> 
>>> list1 = [x for x in list1 if 'Americano' not in x]
>>> list1
[['4', 'Smoothie_queen', '4', '12000'], ['7', 'Cafe_mocha', '4', '11200'], ['8', 'Cafe_latte', '11', '27500'], ['10', 'Amorparty', '2', '4000'], ['11', 'Plain_yogurt', '13', '45500']]
>>> 

2 个答案:

答案 0 :(得分:0)

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

最好使用to_date函数或date。

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

答案 1 :(得分:0)

通过DATE文字,即只要将参数start_dateend_date定义为日期,就可以在日期之前添加日期date。

 sale_procedure(
      outletid  => 809,
      itemcod   => 128169
    ,start_date => DATE '2018-01-01'
     ,end_date  => DATE '2019-01-01'
     ,amount    => var,
     quantity   => var1
 );