Oracle存储过程

--存储过程:一组完成特定功能的sql语句集
--如果用户新增时 身份证号 不够18位 报错
create or replace procedure pro_add_teacher
(
p_tno number,
p_tname varchar2,
p_tid char,
p_sal number
)
is
e_tid_validate exception;

begin
if length(p_tid)!=18 --判断身份证号 不够18位 报错
then --抛出异常
raise e_tid_validate;
end if;
insert into teacher(tno,tname,tid,sal)
values (p_tno,p_tname,p_tid,p_sal);
--自动提交事务
commit;
--对异常进行处理
exception
when e_tid_validate then
dbms_output.put_line('请输入正确的身份证号!');
when others then
dbms_output.put_line('其他异常出现了!');
end pro_add_teacher;

--调用存储过程

call pro_add_teacher(2088,'奥黑驴','123456789123568947',5000.5);

 (以上内容来自王硕老师)

原文地址:https://www.cnblogs.com/liu-chao-feng/p/5890361.html