表 A(人员流水号(主键),姓名,性别(1:男,2:女,3:未知),身份证号码,年龄,出生日期,籍贯,民族)
利用存储过程解答
无参数存储过程:A表中根据“出生日期”计算出年龄并加两岁更新年龄
有参数存储过程(输入参数,输出参数):传个参数:人员流水号,根据出生年月计算这个人当前年龄,并比较数据库当前“年龄”是否正确,不正确改之;并返回当前年龄
谢谢大家,这个好像比较难的,对于我来说
利用存储过程解答
无参数存储过程:A表中根据“出生日期”计算出年龄并加两岁更新年龄
有参数存储过程(输入参数,输出参数):传个参数:人员流水号,根据出生年月计算这个人当前年龄,并比较数据库当前“年龄”是否正确,不正确改之;并返回当前年龄
谢谢大家,这个好像比较难的,对于我来说
create or replace trigger p_add before update or insert on a for each row
declare
pragma autonomous_transaction;
begin
update a set :new.年龄=:old.年龄+2 where 人员流水号:=:new.人员流水号;
if :new.年龄=:old.年龄 then
raise_application_error(-20001,'年龄没有更新成功');
end if;
end;