表A:会员信息表(会员号memberid,会员级别,享受折扣memberdis)表B:收银信息表(会员号memberid,本次消费额spend,实付金额cost)建一存储过程,向B中插入一条完整的数据,已知memberid和spend,同时通过memberid从表A中得出memberdis,cost=memberdis*spend。用函数实现计算cost,用存储过程实现调用函数向表B中插入一条完整的数据。存储过程名proc_mem,包含两个输入参数memberid和spend,函数名function_mem
2 回答
德玛西亚99
TA贡献1770条经验 获得超3个赞
--函数,根据会员id和本次消费额,返回本次实付金额
create or replace function function_mem(mem_id in varchar,spend in number)
return number
is
re_spend number(11,2);
temp_spend number(5,2);
begin
select memberdis into temp_spend from 表A where memberid=mem_id;
re_spend := temp * temp_spend;
return (re_spend);
end;
--存储过程
create or replace procedure proc_mem(mem_id varchar,spend number)
as
begin
inser into 表B (memberid,spend,cost) values (memberid,spend,function_mem(memberid,spend));
end;
- 2 回答
- 0 关注
- 382 浏览
添加回答
举报
0/150
提交
取消