文档章节

存储过程

海贼爱音乐
 海贼爱音乐
发布于 2017/08/16 16:24
字数 228
阅读 4
收藏 0
  1. 存储过程
create or replace procedure hello(empid in number)
is
  pname varchar2(20);
  psal employees.salary%type;
begin
  select first_name,salary into pname,psal from employees where employee_id=empid;
  update employees set salary=salary+1000 where employee_id=empid;
  dbms_output.put_line('员工'||pname||'现在工资为'||(psal+1000));
end;

一般不在存储过程和函数中commit和rollback,而是在调用时commit。

begin
  hello(105);
  commit;
end;
  1. 调试

sys as sysdba 超级管理员登录
alter user hr identified by test account unlock 解锁hr账号并修改密码为test
grant debug connect session,debug any procedure to hr; 授权hr用户调试

  1. 存储函数
create or replace function hello2(empid in number)
return number
is
  psal employees.salary%type;
  pcomm employees.commission_pct%type;
begin
  select salary,commission_pct into psal,pcomm from employees where employee_id=empid;
  return psal*12+nvl(pcomm,0);
end;

调用

declare
  v_test number;
begin
  v_test:=hello2(104);
  dbms_output.put_line(v_test);
end;
  1. 异常(no_data_found、too_many_rows、value_error)
declare
pename emp.ename%type;
begin
  select ename into pename from emp where empno=666;
exception
  when no_data_found then dbms_output.put_line('没有找到');
  when others then dbms_output.put_line('其他');
end;

© 著作权归作者所有

共有 人打赏支持
上一篇: SQL执行顺序
下一篇: 面向对象
海贼爱音乐
粉丝 1
博文 87
码字总数 22611
作品 0
广州
CEO
私信 提问

暂无文章

解析Node.js通过axios实现网络请求

本次给大家分享一篇node.js通过axios实现网络请求的方法,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。 1、使用Npm 下载axios n...

前端攻城老湿
12分钟前
0
0
深入浅出之React-redux中connect的装饰器用法@connect

这篇文章主要介绍了react-redux中connect的装饰器用法@connect详解,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。 通常我们需要一...

前端攻城小牛
13分钟前
0
0
详解css BEM书写规范

BEM是基于组件的web开发方法。其思想是将用户界面分隔为独立的块,从而使开发复杂的UI界面变得更简单和快,且不需要粘贴复制便可复用现有代码。BEM由Block、Element、Modifier组成。选择器里...

前端小攻略
28分钟前
4
0
一个centos初始化脚本

概述 就是自己无聊写的一个脚本,欢迎使用,star,fork顺便关注我一波 https://github.com/bboysoulcn/centos 使用方法 这个是给最小化安装的centos使用的,在centos 7.5上测试过,当然其他的...

bboysoulcn
32分钟前
9
0
mybatis 自动维护 createdAt, updatedAt

SpringBoot Mybatis Plus公共字段自动填充功能

youngjdong
36分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部