PL/SQL Oracle无误错误

1 sql oracle ora-06553

我正在使用SQL Dveloper IDE在Oracle中编写函数.该函数工作正常,当我添加此语句时:

INSERT INTO bl_transaction   
VALUES(generated_id,'0','0','Y',NOW(),'0',NOW(),'0',CAST(dbms_random.value(100,100000) as integer), tuple.billing_id, tuple.created, sys_guid(), first_invgroup, 'Y', 'N', tuple.guid, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); 
Run Code Online (Sandbox Code Playgroud)

编译器给我一个无误的错误:

ORA-06553:PLS-320:此表达式类型的声明不完整或格式错误

我已经审查了每种可能的类型不匹配,参数数量等.

我该如何解决这个问题?

OMG*_*ies 5

NOW()不是支持的Oracle函数来获取当前日期和时间 - SYSDATE是.尝试:

INSERT INTO bl_transaction   
VALUES(generated_id,'0','0','Y',SYSDATE,'0',SYSDATE,'0',CAST(dbms_random.value(100,100000) as integer), tuple.billing_id, tuple.created, sys_guid(), first_invgroup, 'Y', 'N', tuple.guid, NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL); 
Run Code Online (Sandbox Code Playgroud)

但你也有:

  • tuple.created
  • tuple.billing_id

......作为价值但不包括这些来自哪里.

第三,因为您没有提供要插入的列的列表,所以我们无法知道您的查询是否多少或多少指定您尝试插入的表中的列数...或者深入了解每个位置的数据类型.