创建函数 - 获取PLS-00410

时间:2014-09-26 01:51:10

标签: oracle plsql toad

我一直在尝试在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;

1 个答案:

答案 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参数,因为从未引用过输入值。