create or replace function f_name(strSql in varchar2) return number isv_sqlstr Varchar2(2000);
Result Number(10,5);
price_sum Number(10,5);Beginv_sqlstr:='Select Sum(item.bid_price_stand) bid_price_stand From Zb_Bid_Item Item, Inf_Product p, Inf_Drug d ';
v_sqlstr:=v_sqlstr||' Where item.Product_Id = p.Product_Id And item.Factory_Id = p.Factory_Id And p.Drug_Id = d.Drug_Id ';
v_sqlstr:=v_sqlstr||strSql;
  Execute Immediate v_sqlstr Into price_sum;  
If price_sum=0 Then
  price_sum:= bid_price_stand;
End If;Result:=price_sum;
  return(Result);

end f_name;以上编译及测试在pl/sql都可以通过。但在页面执行时也不行。
页面执行的SQL:
Update Zb_Bid_Item
 Set Bid_Price        = 10,Re = Jz_Limit_Get_Price_Mark(10,'And item.Invite_Id=24 And Drug_Name=''注射用头孢曲松钠'' And Drug_Spec = ''1.0g'' And Mode_Name = ''粉针剂'' And Baddish_No = 2')
where id=3 报错现象:
 表 xxx 发生了变化,触发器/函数不能读