plsql 储存过程 参数的传递方式?
/*
存储过程
一.oracel存储过程
1、没有返回值 return 值;
2、用输出参数来代替返回值;
3、输出参数可以有多个 二.参数的传递方式
1. 按位置传递
2. 按名字传递
3.混合传递 --按照位置传递,再按照名字传递 */ select * from emp;
call re4(3,4); create or replace procedure re6 (
id1 in number,
id2 in number,
name1 in emp.ename%type,
name2 in emp.ename%type,
n1 out number -- 需要返回一个参数么?
)
as
begin
insert into emp (empno,ename,sal) values (id1,name1,5000);
insert into emp (empno,ename,sal) values (id2,name2,5000);
commit;
select count(*) into n1 from emp;
end; declare
v_count number(2);-- oracle 没有返回值 用输出参数来定义。
begin
re6(1,2,'haha','xixi',v_count);
dbms_output.put_line('总记录数'||v_count);
end; -- 1. 按位置传递
declare
v_count number(2);
begin
re6(3,4,'jiji','baba',v_count); -- 1. 按位置传递
dbms_output.put_line(v_count);
end; -- 2.名字传递参数 无序
declare
v_count number(2);
begin -- 2.名字传递参数 无序
re6(name1=>'张三',name2=>'李四',id1=>8,id2=>9, n1=>v_count);
dbms_output.put_line(v_count);
end;
select *from emp;
call re4(1,2);
call re4(3,4); -- 混合传递
declare
v_count number(2);
begin
re6(1,2,name1=>'狼王',name2=>'兔子',n1=>v_count); --按照位置传递,再按照名字传递
dbms_output.put_line('总数量:'||v_count);
end; select * from emp;
plsql 储存过程 参数的传递方式?的更多相关文章
- 从一个例子入门Mysql储存过程
例子 -- 秒杀执行存储过程 DELIMITER $$ -- 将分隔符; 转换为 $$ -- 定义存储过程 -- 参数: in 输入参数; out 输出参数 -- row_count():返回上一条修 ...
- SQL获取所有数据库名、表名、储存过程以及参数列表
SQL获取所有数据库名.表名.储存过程以及参数列表 1.获取所有用户名:SELECT name FROM Sysusers where status='2' and islogin='1'islogi ...
- SQL Server 储存过程的output 参数
要做的参数的回传一方面要做到有储存过程的配合,再一方面也要有调用方法的配合,也就是说错误的调用方法是没有办法把值回传的. 下面是例子 --1.储存过程方面的配合 create procedure db ...
- sql储存过程in(多个参数)
一.用sql函数 首先要创建一个截取字符串的函数,新建一个查询,把下面代码复制进去执行. 函数SqlitIn的第一个参数是储存过程要in的字符串,第二个参数是分隔符 CREATE function S ...
- C#函数与SQL储存过程
一点点小认识作为memo,求指正. C#的函数与SQL的储存过程有很多的相似性, 它们都是一段封闭的代码块,来提高代码的重用性,虽然现在复制粘贴很方便,但是我们在写多个函数的时候频繁的复制粘贴相同的内 ...
- JDBC和JPA调用储存过程 接收存储过程有返回值
============jdbc==========================================--java代码:一个输出参数--String connURL = null;Con ...
- Mysql 储存过程以及 python callproc调用
一.存储过程(stored procedure) 存储过程将存入的一系列SQL语句进行预编译,执行并存放在数据库中,之后如果需要使用sql语句对这一组sql进行访问时可以直接提取(很好理解 存储过程就 ...
- mysql的函数与储存过程与pymysql的配合使用
现在mysql上定义一个函数,一个储存过程 函数: delimiter \\ CREATE FUNCTION f2 ( num2 INT, num1 INT ) RETURNS INT BEGIN D ...
- Sqlserver中的储存过程
一.什么是存储过程(Stored Procedure) 存储过程是一段存储在数据库的“子程序”,本质是一个可重复使用的SQL代码块,可以理解为数据库端的“方法”. 存储过程的好处: ①提高性能:由于数 ...
随机推荐
- 第三十四个知识点:描述攻击离散对数问题的baby-step/Giant-step方法
第三十四个知识点:描述攻击离散对数问题的baby-step/Giant-step方法 Baby-step/Giant-step是Dnaiel Shanks为解决DLP问题开发的算法.DLP问题已经是许 ...
- 从JVM设计角度解读Java内存模型
第十六章:Java内存模型 本文我们将重点放在Java内存模型(JMM)的一些高层设计问题,以及JMM的底层需求和所提供的保证,还有一些高层设计原则背后的原理. 例如安全发布,同步策略的规范以及一致性 ...
- vue为什么要设计成异步队列渲染
异步队列渲染 上一篇文章是在vue2.0 中通过Object.defineProperty去拦截并监听数据变化的响应式原理,这篇文章将会沿着图谱继续深入探索,在依赖被通知变化了之后,会触发vue当中的 ...
- C# 执行Javascript脚本
前一阵子使用C#编写SCXML状态机,需要解析EMCScript表达式,使用了Jint库(https://github.com/sebastienros/jint/),当时感觉与C#之间的数据转换不是 ...
- Ranger架构剖析
Ranger介绍 2016年,Hadoop迎来了自己十周岁生日.过去的十年,Hadoop雄霸武林盟主之位,号令天下,引领大数据技术生态不断发展壮大,一时间百家争鸣,百花齐放.然而,兄弟多了不好管,为了 ...
- linux(CentOS7) 之 jdk1.8 下载及安装
下载 一.百度搜索oracle,进入官网(或直接进入官网https://www.oracle.com) 二.选择 products 下的 java 三.选择Download Java 四.往下翻找到J ...
- Linux命令--ss命令的参数及使用详解
ss是Socket Statistics的缩写.顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容.但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信 ...
- Spring cloud 框架 --- Eureka 心得
spring boot 1.5.9.RELEASE spring cloud Dalston.SR1 1.前言 (1)接触了spring cloud 框架 ,首先要知道Eureka是什 ...
- reduce/reduceRight
使用 reduce 和 reduceRight 方法可以汇总数组元素的值,具体用法如下: reduce function appendCurrent (previousValue, currentVa ...
- vue爬坑之路(插件安装)
npm install vue-table-with-tree-grid --save import ZkTable from 'vue-table-with-tree-grid' Vue.use(Z ...