我正在尝试创建一个脚本,它将验证我的存储过程的功能。但是,一旦我将执行存储过程放在那里,我就会遇到这种错误:PLS-00103:遇到符号" NEW_PRODUCT"当期待以下之一时: :=。 (@%;立即 符号":="取代了" NEW_PRODUCT"继续。
我的脚本如下所示:
DECLARE
id_unit number;
id_unit_old number;
var_materialid number;
var_processid number;
serial_no varchar(30);
product_name_new varchar(30);
BEGIN
SELECT max(id) INTO id_unit_old
FROM Unit;
execute new_product('NTB', 'Diablo', 'CPU-I7', 'GPU-M800', 'RAM-K2');
SELECT max(id) INTO id_unit
FROM Unit;
IF id_unit > id_unit_old THEN BEGIN
SELECT id_material, id_process, serial_number INTO var_materialid, var_processid, serial_no
FROM Unit
WHERE id = id_unit;
SELECT name INTO product_name_new
FROM Material
WHERE id = var_materialid;
ELSE
RAISE_APPLICATION_ERROR(-20002, 'Insert to table Unit has failed!');
END IF;
END;
有什么建议是什么问题,我该如何解决?感谢
答案 0 :(得分:2)
在execute
字之前删除new_product
字,当您从另一个过程或PL / SQL匿名块调用PL / SQL过程时,必须按名称调用它。 / p>