存储过程

作者: 叨叨侠爱叨叨 | 来源:发表于2017-04-27 14:16 被阅读9次

存储过程是经过语法检查和编译的SQL语句
创建过程时,系统会对其进行编译,并将执行代码存储到数据库中。有名字,可接收参数,没有返回值。

创建时不执行,调用时才执行。
1.在SQL>提示符下调用过程,execute 过程名(参数 ...)
2.在PL/SQL块中调用过程,过程名(参数 …),可独立作为PL/SQL语句
可以在匿名块、其他的存储过程、函数中调用。
存储过程中可以直接执行DML语句(select、insert、update、delete),不能直接执行DDL语句。
存储过程中如需执行DDL语句,先把DDL语句存放在一个字符串变量中,然后通过execute immediate语句执行字符串内容,字符串内容必须符合SQL语法。用户从角色中获取的权限,在PL/SQL块中
存储过程中创建触发器实现主键自增长:
create or replace procedure pk_auto_increment_pro(t_name varchar2) is
v_ddl varchar2(2000);
begin
v_ddl := 'create or replace trigger pk_auto_increment_' || t_name ||
' before insert on ' || t_name ||
' for each row
begin
dbms_output.put_line(''赋值前id:'' ||:new.id);
select test_seq.nextval into :new.id from dual;
dbms_output.put_line(''赋值后id:'' ||:new.id);
end;';
execute immediate v_ddl;
end;

 create [or replace] procedure 过程名 [(参数名 参数模式 参数类型,...)] is|as 
[declaration] --定义部分
begin 
--执行部分
[exception] 
--异常处理部分
end [过程名];

相关文章

  • Mysql存储过程

    阅读目录:MySQL存储过程_创建-调用-参数 存储过程:SQL中的“脚本” 创建存储过程 调用存储过程 存储过程...

  • MySQL批量添加数据

    创建存储过程 执行存储过程 删除存储过程

  • 17 存储过程

    过程: 函数: 过程是没有返回值的函数 存储过程: 存储过程语法 存储过程1--创建简单的存储过程 存储过程2--...

  • 存储过程

    详见存储过程详解 创建存储过程 使用存储过程 存储过程简介 什么是存储过程:存储过程可以说是一个记录集吧,它是由一...

  • 存储过程与函数

    存储过程与函数存储过程的定义存储过程的创建存储过程的操作自定义函数 存储过程与函数 存储过程的定义 运行效率高 降...

  • 存储过程

    ps 不能修改过程体,要修改过程体必须先删除存储过程,再重建 mysql变量的术语分类: 1.用户变量:以"@"开...

  • 存储过程

    存储过程 过程,可以简单理解为是一个函数。 函数和过程的区别:函数总是向调用者返回数据,而过程没有数据返回。 Or...

  • 存储过程

    存储过程(Stored Procedure)是一个可编程的函数,是为了完成特定功能的SQL语句集;创建的存储过程保...

  • 存储过程

    一.基础语法 说明 delimiter // 一般情况下MYSQL以;结尾表示确认输入并执行语句,但在存储过程中;...

  • 存储过程

    存储过程:带有逻辑的sql语句。之前的sql没有条件判断,循环。 存储过程带上流程控制语句(if,while)。 ...

网友评论

    本文标题:存储过程

    本文链接:https://www.haomeiwen.com/subject/orogzttx.html