表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 關注
- 417 瀏覽
添加回答
舉報
0/150
提交
取消