我一直在尝试在Oracle数据库中创建一个函数,但我一直收到PLS-00410错误,说记录或表中有双字段,有人可以帮我解决吗?
create or replace function lazarus.pro_custo_tot (custo_total in float)
return float
is custo_total float;
begin
/*Calcula custo unitário * quantidade*/
select(ed.custo_unitario * ed.quantidade)
into custo_total
from lazarus.estoque_detail ed
where ED.ID_SABOR = LAZARUS.SABORES.id
and ED.ID_HEADER = LAZARUS.ESTOQUE_HEADER.id;
return (custo_total);
end;
答案 0 :(得分:2)
那是因为custo_total被定义了两次,一次在第1行之下,第二次在第3行:
create or replace function lazarus.pro_custo_tot (custo_total in float)
return float
is custo_total float;
使用不同的变量名称应解决此问题。但是,似乎不需要您的in参数,因为从未引用过输入值。