当前位置:   article > 正文

MySQL 存储过程原理理解以及存储过程的优点缺点_mysql 存储过程 有什么问题

mysql 存储过程 有什么问题

一、存储过程的介绍

MySQL数据库存储过程是一组为了完成特定功能的SQL语句的集合。

存储过程这个功能是从5.0版本才开始支持的,它可以加快数据库的处理速度,增强数据库在实际应用中的灵活性。

存储过程在使用过程中是将常用或者复杂的工作预先使用SQL语句写好并用一个指定的名称存储起来,这个过程经编译和优化后存储在数据库服务器中。

当需要使用该存储过程时,只需要调用它即可。

操作数据库的传统SQL语句在执行时需要先编译,然后再去执行,跟存储过程一对比,明显存储过程在执行上速度更快,效率更高。

存储过程就像是将提前编译好的函数放到后端服务器上,后端服务器只需要知道每个存储过程是做什么用的,该如何调用,如何传参,传参的类型是什么类型,将前端传来的参数按指定的类型填到存储过程中去就可以了,大大提高数据的传输速率和安全性。

二、存储过程的优点和缺点

1、存储过程的优点

1)存储过程执行一次后,生成的二进制代码就驻留在缓冲区,之后如果再次调用的话,将直接调用二进制代码,使得存储过程的执行效率和性能得到大幅提升
2)存储过程是 SQL语句加上控制语句的集合,有很强的灵活性,可以完成复杂的运算。
3)存储过程存储在服务器端,客户端调用时,直接在服务器端执行,客户端只是传输的调用语句,从而可以降低网络负载
4)存储过程被创建后,可以多次重复调用,它将多条SQL封装到了一起,可随时针对SQL语句进行修改,不影响调用它的客户端
5)存储过程可以完成所有的数据库操作,也可以通过编程的方式控制数据库的信息访问权限

2、存储过程的缺点

1)存储过程直接在数据库运行,可能对数据库服务器的性能有一定的要求。
2)不同厂商的数据库,因为支持的编程语言不同。当切换到其他厂商的数据库系统时,需要重写原有的存储过程
3)存储过程的性能,受限于各种数据库系统
4)可移植性差,调优麻烦。

三、存储过程创建和调用

1、存储过程创建的格式
  • DELIMITER ??

将语句的结束符号从分号;临时改为两个??(可以是自定义)

默认情况下,存储过程和默认数据库

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/783847
推荐阅读
相关标签
  

闽ICP备14008679号