MySQL存储过程

MySQL存储过程的定义

MySQL 存储过程是⼀组 预编译的 SQL 语句 ,可以在 MySQL 数据库中 定义和存储 ,并在 需要时执⾏ 。存储过程可以接受参数、执⾏条件判断、循环、异常处理等操作,使得开发⼈员可以把⼀系列操作组合成⼀个可重复使⽤的单
元,从⽽提⾼代码的复⽤性和可维护性。

存储过程的存放位置

存储过程保存在mysql.proc表中

创建存储过程:CREATE PROCEDURE 存储过程名(参数1,参数2,..,参数3)BEGIN 要执行的语句 END

一个简单的存储过程

注意:ALTER语句修改存储过程只能修改存储过程的注释等⽆关紧要的东⻄,不能修改存储过程体,所以要修改存储过程,⽅法就是删除重建

查看某一具体存储过程的定义:SHOW CREATE PROCEDURE 存储过程名称;

存储过程的意义与优势

存储过程把经常使⽤的SQL语句或业务逻辑封装起来,预编译保存在数据库中,当需要时从数据库中直接调⽤,省去了编译的过程(提高运行速度的原因)
提⾼了运⾏速度,同时降低⽹络数据传输量,存储过程相当于独⽴命令可以直接调⽤

  1. 提⾼性能
  2. 提⾼安全性
  3. 提⾼可维护性
  4. 提⾼可重⽤性
  5. ⽀持事务处理 ACID

存储过程与⾃定义函数的区别

  1. 返回值类型不同:⾃定义函数必须返回⼀个值,⽽存储过程可以不返回任何值。
  2. 使⽤⽅式不同:⾃定义函数可以在SQL语句中使⽤,如SELECT语句中的函数调⽤,⽽存储过程需要通过CALL
    语句来调⽤。
  3. 事务处理能⼒不同:存储过程可以包含事务处理代码,⽽⾃定义函数不能。
  4. 参数传递⽅式不同:⾃定义函数只能通过参数传递来接收输⼊值,并返回计算结果。⽽存储过程可以通过输
    ⼊、输出、输⼊输出三种参数类型来传递参数。
  5. 可重⽤性不同:⾃定义函数可以在多个查询中使⽤,⽽存储过程需要单独调⽤。
posted @ 2025-05-27 19:08  wewnehwhe  阅读(39)  评论(0)    收藏  举报