存储过程

xiaoxiao2021-02-28  29

我们常用的操作数据库语言SQL语句在执行的时候都需要先编译,然后执行,而存储过程是一组为了完成特定功能的SQL语句集,创建的时候已经预编译存储在数据库中,用户通过制定存储过程的名字并给定参数来调用执行它。 一个存储过程是一个可编程的函数,它在数据库中创建并保存,它可以有SQL语句和一些特殊的控制结构组合。 优点: (1)存储过程增强了SQL语言的功能和灵活性。可以用流控制语句编写,有很强的灵活性,可以完成复杂的判断和较复杂的运算。 (2)存储过程允许标准组件是编程。存储过程被创建后,可以在程序中被多次调用,而不用重新写SQL语句。而且数据库专业人员可以随时对存储过程进行修改,对应用程序源代码毫无影响 (3)存储过程能实现较快的执行速度,如果某个操作包含了较多的Trancation-SQL或者对多个SQL语句重复执行,那么存储过程要比批处理执行的速度快很多。因为存储过程是预编译,当存储过程第一次执行时,优化器会对其进行分析优化,并最终被存储在系统表的执行计划中,而单独的sql语句在执行的时候都要先进行编译、优化,速度相对较慢 (4)存储过程能够减少网络流量,针对同一个数据库对象的操作,如查询、修改时,客户端只是发送了一句调用存储过程的语句,从而大大降低了网络流量的消耗和网络负载 (5)存储过程可以作为一种安全机制处理,开发人员对某一存储过程进行权限控制,能够实现对相应数据的权限控制,避免非授权用户对数据的操作,保证数据的安全 【存储过程在MySQL5.0以后才被支持】
转载请注明原文地址: https://www.6miu.com/read-2614790.html

最新回复(0)