oracle带参(传入,传出)的存储过程怎么执行

rt,请帮我写个例子,就传入个整数,传出一个整数就成,然后在plsql中exec这个过程,主要是不能理解这带参的格式要怎么执行,谢谢,好人一生平安... rt,请帮我写个例子,就传入个整数,传出一个整数就成,然后在plsql中exec这个过程,主要是不能理解这带参的格式要怎么执行,谢谢,好人一生平安 展开
 我来答
刺友互
高粉答主

2019-09-27 · 每个回答都超有意思的
知道答主
回答量:3979
采纳率:100%
帮助的人:69.5万
展开全部

1、新建存储过程,Create or Replace  Procedure CHK_SYS_EMP 检查系统工号。

2、定义参数及变量:(TREV IN VARCHAR2,TRES OUT VARCHAR2) IS C_EMP VARCHAR2(25)。

3、存储过程框架用Begin开始,End结束。

4、查看需要调用表的结构以及相关字段。会用到表中的 EMP_NO ENABLED。

5、存储过程按需添加SQL语句。

6、程序运行测试OK。

tzetzebaby0830
推荐于2017-11-26 · TA获得超过155个赞
知道小有建树答主
回答量:411
采纳率:100%
帮助的人:237万
展开全部
网上找到一段,希望采纳:

创建含有输入和输出参数的存储过程,该过程通过员工编号查找工资额,工资额以输出参数返回
CREATE OR REPLACE PROCEDURE getSalaryByEmpNo(eNo
IN NUMBER,salary
OUT NUMBER)
AS
BEGIN
SELECT SAL INTO
salary FROM EMP WHERE EMPNO=eNo;
EXCEPTION
WHEN NO_DATA_FOUND THEN

DBMS_OUTPUT.PUT_LINE('没有找到该编号的员工');
END;
当过程中含有输出参数时,调用时必须通过BEGIN
END块,不能通过EXEC或CALL调用。如:
DECLARE
salary NUMBER(7,2);
BEGIN
getSalaryByEmpNo(7788,salary);
DBMS_OUTPUT.PUT_LINE(salary);
END;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式