PL/SQL 05 存储过程 procedure
--存储过程(不带参数)
create or replace procedure 存储过程名
as
变量、常量声明;
begin
代码;
end;
--存储过程(带输入参数)
create or replace procedure 存储过程名(参数1 类型,参数2 类型,...) --可以设默认值,如low int:=1000
as
变量、常量声明;
begin
代码;
end;
--存储过程(带输出参数)
create or replace procedure 存储过程名(参数1 out 类型,参数2 类型,...) --如avgscore out stu.score%type
as
变量、常量声明;
begin
代码;
end;
--存储过程内部返回用 return;
--存储过程和游标配合使用
create or replace procedure test1(j emp.job%type)
as
cursor test
is select empno,ename from emp where job=j;
eno emp.empno%type;
ena emp.ename%type;
begin
open test;
loop
fetch test into eno,ena;
exit when test%notfound;
dbms_output.put_line(eno||' '||ena);
end loop;
close test;
end;
--例子 常量加前缀v_ 参数加前缀p_ (不要和表字段一样,会出问题)
create or replace procedure
pro_test(p_stuno varchar2)
as
v_score number(3);
cursor cur_test is
select sco.score from score sco
where sco.stuno=p_stuno;
begin
open cur_test;
loop
fetch cur_test into v_score;
exit when cur_test%notfound;
dbms_output.put_line(p_stuno|| ' score is: '||v_score);
end loop;
close cur_test;
end;
--调用存储过程
begin
pro_test('stu001');
end;
PL/SQL 05 存储过程 procedure的更多相关文章
- PL/SQL之--存储过程
一.存储过程 存储过程是一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它.oracle可以把PL/SQL程序储存在数 ...
- PL/SQL之存储过程和函数
1.创建存储过程 .1语法: CREATE[OR REPLACE] PROCEDURE [schema.] procedure_name[(argument[{IN|OUT|IN OUT}] data ...
- PL/SQL编程—存储过程
SQL> create or replace procedure sp_pro3(name_in varchar2,id_in varchar2) is begin update mytest ...
- oracle 学习(五)pl/sql语言存储过程&包
首先搞清楚俩概念 存储过程(procedure)&程序包(package) 存储过程:数据库对象之一,可以理解为数据库的子程序,在客户端和服务器端可以直接调用它.触发器是与表直接关联的特殊存储 ...
- 使用PL/SQL编写存储过程访问数据库
一.实验目的 熟悉使用存储过程来进行数据库应用程序的设计. 二.实验内容 对学生-课程数据库,编写存储过程,完成下面功能: 1.统计离散数学的成绩分布情况,即按照各分数段统计人数: 2.统计任意一门课 ...
- 在oracle RAC 环境下用 PL/SQL Developer debug procedure 出现 hang 的情况
现象描述: 用plsql developer 连接编译procedure 的时候都很正常.一旦开始Test进入Debug模式的时候就Hang住了. 初步猜测是没有权限,可是是DBA角色呀,如果没有权限 ...
- PL/SQL出现存储过程注释中文乱码
进入PL/SQL命令行窗口输入:select userenv('language') from dual 查出数据库字符集 输入:select * from V$NLS_PARAMETERS 查出NL ...
- PL/SQL通过存储过程为相同数据添加序号
在Oracle数据库中存有一串数据(Ori_Seq),数据包含不等量重复: 为方便查看与管理,现希望添加一字段(New_Seq),在原有数据的末尾为其添加一串序号,相同数据序号从小到大排列,序号长度为 ...
- PL/SQL之存储过程和触发器实例
1.Oracle存储过程实例 /*不带任何参数存储过程(输出系统日期)*/ CREATE OR REPLACE PROCEDURE output_date IS BEGIN DBMS_OUTPUT.P ...
随机推荐
- 树莓派putty远程登录windows
刚买树莓派的你,还在为要不要购买昂贵的屏幕而纠结吗?看完本博客学会远程登录,妈妈再也不用担心我的学习... 首先我们要知道树莓派的官方推荐系统是raspbian 很建议安装16年9月份的,其他的总是这 ...
- 使用vue和web3创建你的第一个以太坊APP
欢迎回到这个很牛的教程系列的第2部分,在教程中我们亲手构建我们的第一个分布式应用程序. 在第二部分中,我们将介绍VueJS和Vuex的核心概念,并引入web3js以与metamask进行交互. 如果你 ...
- day02 智能合约
上午 1>部署智能合约网络 语法 require 2>利用第三方的节点 同步到以太坊 3>智能合约部署的步骤: 1.查看区块 2.发布合约 deploy后台经历的事情:就是部署合约的 ...
- BZOJ 4408 FJOI2016 神秘数 可持久化线段树
Description 一个可重复数字集合S的神秘数定义为最小的不能被S的子集的和表示的正整数.例如S={1,1,1,4,13},1 = 12 = 1+13 = 1+1+14 = 45 = 4+16 ...
- linux消息队列通信
IPC机制 进程间通信机制(Inter Process Communication,IPC),这些IPC机制的存在使UNIX在进程通信领域手段相当丰富,也使得程序员在开发一个由多个进程协作的任务组成的 ...
- java面向对象课程设计-数学表达式计算器
项目简介 设计一个计算器,其能够: 1)由用户输入一个简单的四则运算表达式,求出其计算结果后显示. 2)特殊数学函数,如:绝对值.取整.三角函数.倒数.平方根.平方.立方等. 3)对一定范围内的数字将 ...
- zufe 蓝桥选拔
https://zufeoj.com/contest.php?cid=1483 问题 A: A 代码: #include <bits/stdc++.h> using namespace s ...
- PAT 1090 危险品装箱
https://pintia.cn/problem-sets/994805260223102976/problems/1038429484026175488 集装箱运输货物时,我们必须特别小心,不能把 ...
- Tomcat 中如何给 web 项目配置虚拟目录的方法
为什么要给 web 项目配置虚拟目录? 初学 JavaWeb 时,会发现只要我们把 web 项目放到 Tomcat 的 webapps 目录下,再通过 http://localhost:8080/项目 ...
- input标签与label标签的“合作关系”
一直忽略了input和label的关系.一次在做自定义单选框的时候又重新捡起来这对“兄弟”. label的for属性和input的id值一致的话,input和label就会组成一个组.例如: < ...