当前位置:Gxlcms > mysql > MySql存储过程―1、SQL存储过程的基础知识_MySQL

MySql存储过程―1、SQL存储过程的基础知识_MySQL

时间:2021-07-01 10:21:17 帮助过:5人阅读

bitsCN.com
MySql存储过程—1、SQL存储过程的基础知识 在深入理解MySq之前,我们先理下一些简单的问题
Q:什么是存储过程?(stored procedure)A:是一段写好的SQL代码,特别的就是它是存在数据库的目录里。所以外部程序可以直接调用数据库里面定义好的存储过程,另外数据库内部的触发器(trigger)、或者其他存储过程也可以调用它。 Q:存储过程有什么好处?有什么坏处?A: 先看看好处吧:1、首先在性能上的提高,比起通过应用程序发送sql语句给数据库执行,让数据库自己内部执行存储过程效率更高、速度更快(存储过程将sql编译好后存在数据库目录下); 2、存储过程还减少了应用程序同服务器自己的信息交互频率,可以想象在不是使用存储过程的情况,应用程序需要发送多条sql指令给服务器,而使用存储过程则只要一条调用存储过程的语句,然后获取需要的数据就ok了。3、存储过程重用性比较高,并且是透明的,因为保存在数据库里面所以对任何应用来说都可以使用。新的应用只需要调用相应的存储过程就可以得到相应的数据服务。 4、存储过程也是种安全的做法,数据库管理员可以对那些没有权限访问数据库中的表格的应用,给他们使用存储过程的权限来获得数据服务,可以看到这个时候这些存储过程好像我们编程里面的”接口“这个概念。对于安全性要求很高的系统,例如银行,基本上常用的操作都是通过存储过程或者函数来进行的,这样完全对应用”隐藏“了表格。 当然也有坏处: 1、存储过程会使得数据库占用的系统资源加大(cpu、memory),数据库毕竟主要用来做数据存取的,并不进行复杂的业务逻辑操作。 2、因为存储过程依旧是sql,所以没办法像编程语言那样写出复杂业务逻辑对应的存储过程。3、存储过程不容易进行调试。 4、存储过程书写及维护难度都比较大。了解这些优缺点对我们权衡使用存储过程有很大的帮助 作者 rdarda bitsCN.com

人气教程排行