广告
返回顶部
首页 > 资讯 > 数据库 >plsql储存过程
  • 935
分享到

plsql储存过程

plsql储存过程 2015-05-06 20:05:24 935人浏览 绘本
摘要

第九章  存储过程   初识存储过程   存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的sql 语句集,存储在数据库中,经过第一次编译后调用不需要再次编译,用户通过指定存储过程的名字并给出

plsql储存过程

第九章  存储过程

 

初识存储过程

  存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的sql 语句集,存储在数据库中,经过第一次编译后调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象。

  包含一系列PL/SQL语句的集合

 

创建存储格式

CREATE [OR REPLACE] PROCEDURE procedure_name

  (argument1 [mode1] datatype1,

   argument2 [mode2] datatype2, ...)

AS [IS]

   声明部分

BEGIN

   执行部分

EXCEPTioN

   异常处理部分

END;

调用存储过程格式

call proc_update_emp();

 

示例:

create or replace procedure pro_stu_update

as

begin

  update student set stu_name="edit_name" where stu_id=5;

end;

-- 调用

call pro_stu_update();

 

in 示例

-- 根据员工号,查询员工工资

create or replace procedure

       -- in表示入参

       pro_emp_selectArray(v_empId in employees.employee_id%type)

as     v_sal employees.salary%type;

begin

  select salary into v_sal from employees where employee_id=v_empId;

  DBMS_OUTPUT.PUT_LINE("salary:" || v_sal);

end;

-- call调用

call pro_emp_selectArray(198);

 

in/out 示例

-- 根据员工号,查询员工工资 带out参数

create or replace procedure

       -- in表示入参,out表示出参

       pro_emp_selectArray(v_empId in employees.employee_id%type,v_sal out employees.salary%type)

as

begin

  select salary into v_sal from employees where employee_id=v_empId;

  DBMS_OUTPUT.PUT_LINE("salary:" || v_sal);

end;

-- PL/SQL调用

declare

   -- 对应的参数类型和数量保持一致

   v_empId employees.employee_id%type := "&input_empId";

   v_sal employees.salary%type;

begin

  pro_emp_selectArray(v_empId,v_sal);

exception

  when no_data_found then

    DBMS_OUTPUT.PUT_LINE("找不到对应员工"); 

end;

 

 

inout示例

create or replace procedure

       -- in/out 参数共用,必须保持参数类型相同

       pro_emp_selectArray(v_param  in out number)

as

begin

  select manager_id into v_param from employees where employee_id=v_param;

  DBMS_OUTPUT.PUT_LINE("salary:" || v_param);

end;

-- PL/SQL调用

declare

   v_param number := "&input_param";

begin

  pro_emp_selectArray(v_param);

exception

  when no_data_found then

    DBMS_OUTPUT.PUT_LINE("找不到对应员工"); 

end;

 

多参数传递 示例

create or replace procedure

       pro_multi_params(param1 in number,param2 in number,param3 in number)

as v_sum  number;

begin

  v_sum := param1+param2+param3;

  DBMS_OUTPUT.PUT_LINE("v_sum:" || v_sum);

end;

-- call调用

call pro_multi_params(1,2,3);

 

 

您可能感兴趣的文档:

--结束END--

本文标题: plsql储存过程

本文链接: https://www.lsjlt.com/news/4950.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • plsql储存过程
    第九章  存储过程   初识存储过程   存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后调用不需要再次编译,用户通过指定存储过程的名字并给出...
    99+
    2015-05-06
    plsql储存过程
  • plsql如何停止存储过程
    要停止正在执行的PL/SQL存储过程,可以使用以下方法之一:1. 使用CTRL+C组合键:如果在命令行界面下运行PL/SQL存储过程...
    99+
    2023-09-11
    plsql
  • plsql怎么执行存储过程
    在 PL/SQL 中执行存储过程的方法有以下几种:1. 使用 EXECUTE 或 EXECUTE IMMEDIATE 语句:```s...
    99+
    2023-09-23
    plsql
  • plsql怎么调试存储过程
    在PL/SQL中,可以使用DBMS_OUTPUT包来在控制台打印变量值或调试信息。下面是一个示例存储过程的调试过程:1. 首先,确保...
    99+
    2023-08-28
    plsql
  • plsql修改存储过程如何提交
    要修改一个PL/SQL存储过程,你可以按照以下步骤进行提交:1. 在一个文本编辑器中打开存储过程的源代码。2. 对需要修改的部分进行...
    99+
    2023-09-23
    plsql
  • plsql存储过程怎么创建与调用
    要创建一个PL/SQL存储过程,可以按照以下步骤进行操作:1. 打开SQL开发工具,例如Oracle SQL Developer或P...
    99+
    2023-10-11
    plsql
  • plsql调用存储过程语句怎么写
    要调用存储过程,可以使用以下语句:```BEGINprocedure_name(parameter1, parameter2, .....
    99+
    2023-10-11
    plsql
  • plsql编译存储过程卡死怎么解决
    当PL/SQL编译存储过程卡死时,可能是由于以下原因导致的:1. 死锁:检查是否存在其他会话正在使用存储过程所依赖的资源,例如表或行...
    99+
    2023-10-10
    plsql
  • plsql执行存储过程的方法是什么
    在PL/SQL中执行存储过程有以下几种方法:1. 使用EXECUTE语句:可以使用EXECUTE或EXEC来执行存储过程。例如,EX...
    99+
    2023-09-28
    plsql
  • plsql查看存储过程错误怎么解决
    要解决PL/SQL存储过程的错误,可以按照以下步骤进行操作: 查看错误信息:首先,如果存储过程在执行时产生了错误,可以使用DBM...
    99+
    2023-10-25
    plsql
  • plsql执行存储过程停止不了如何解决
    要解决PL/SQL执行存储过程停止不了的问题,可以尝试以下方法:1. 使用快捷键强制停止:在执行过程中,按下Ctrl+C组合键可以中...
    99+
    2023-09-09
    plsql
  • MySQL存储过程详解 mysql 存储过程
    mysql存储过程详解 1.      存储过程简介   我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Proce...
    99+
    2022-10-18
  • 存储过程
    存储过程是数据库对象之一,存储过程可以理解成数据库的子程序,在客户端和服务器端可以直接调用它。触发器是与表直接关联的特殊的存储过程,是在对表记录进行操作时触发的。 存储过程放在字典里,可以在不同用户和应用程序之间共享,并可以实现程...
    99+
    2015-02-05
    存储过程
  • mysql存储过程
      -- 创建清除过期积分存储过程DELIMITER //DROP PROCEDURE IF EXISTS reportUrl // CREATE PROCEDURE reportUrl() BEGIN -- 定义变量 ...
    99+
    2019-07-21
    mysql存储过程
  • Postgresql 存储过程
    1、没有定义 plpsql createlang -d tms plpgsql 2、找出不连续的SN DROP FUNCTION IF EXISTS sn_miss(IN order_name TEXT, IN pcline TE...
    99+
    2021-03-04
    Postgresql 存储过程
  • MYSQL——存储过程
       MYSQL的存储过程 1   存储过程是SQL语句和控制语句的预编译集合,以一个名称存储并作为一个单元处理2   存储过程的优点  &nbs...
    99+
    2022-10-18
  • MySQL 存储过程
    参考地址1:https://blog.csdn.net/yanluandai1985/article/details/83656374 参考地址2:https://www.runoob.com/w3cnote/mysql-stored-p...
    99+
    2016-08-26
    MySQL 存储过程
  • oracle存储过程
    存储过程1、创建create procedure 过程名(变量名 in 变量类型...变量名 out 变量类型...)is//定义变量  注:变量类型后不需要指定大小begin//执行的语句end...
    99+
    2022-10-18
  • MySQL--存储过程
    定义 一个复杂逻辑对SQL语句的批量处理, 通过一个名字存储 创建 delimiter // 修改终止符 -- 存储过程没有返回值 delimiter // ...
    99+
    2022-10-18
  • oracle存储过程转达梦8存储过程时踩过的坑
    达梦存储过程的语法与oracle的高度相似,但有好多细节还是有差异。我在这次项目迁移中踩过不少小坑,在这里给大家分享一下。 说明一下,我用的版本是达梦8,迁移时碰到的问题有些我已经反馈给达梦的官方群管理员,估计以后会有修复。 rp...
    99+
    2021-04-19
    oracle存储过程转达梦8存储过程时踩过的坑
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作