设为首页 加入收藏

TOP

数据库存储过程(Procedure)
2015-07-24 10:23:01 来源: 作者: 【 】 浏览:0
Tags:数据库 存储 过程 Procedure

存储过程的优点:


提高运行速度。这是因为SQL语句大部分准备工作已经完成大大减少了时间。

增强了SQL的功能和灵活性。存储过程本身有很强的灵活性,能完成复杂的逻辑判断和复制的运算。

可以降低网络的通讯量。

减轻了程序编写的工作量,存储过程可以反复调用,并可供其他前端应用程序共享应用逻辑。

实现安全控制功能。


存储过程的种类:


系统存储过程

用户自定义存储过程

扩展存储过程


存储过程的格式:

-- Template generated from Template Explorer using:
-- Create Procedure (New Menu).SQL
--
-- Use the Specify Values for Template Parameters 
-- command (Ctrl-Shift-M) to fill in the parameter 
-- values below.
--
-- This block of comments will not be included in
-- the definition of the procedure.
-- ================================================
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:      
-- Create date: 
-- Description: 
-- =============================================
CREATE PROCEDURE  
    -- Add the parameters for the stored procedure here
    <@Param1, sysname, @p1>  = , 
    <@Param2, sysname, @p2>  = 
AS
BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;

    -- Insert statements for procedure here
    SELECT <@Param1, sysname, @p1>, <@Param2, sysname, @p2>
END
GO

存储过程是编译好的SQL语句,而SQL语句如果写在代码中,需要及时编译,然后才能运行,是在运行时编译的,这就增加了时间,也增加了客户端和服务器之间的网络流量。


不使用存储过程客户端和服务器端的通讯次数:


这里写图片描述


使用存储过程客户端和服务器通讯次数:


这里写图片描述


使用存储过程后客户端和服务器之间的通讯次数就会减少,服务器只传回一个执行成功与否的参数就可以。


什么情况下使用存储过程?


数据库进行复杂操作时;

需要优化,提高软件运行速度时;

当对软件的安全性要求比较高时;


编译好的存储过程可以让很多人重复使用,何乐而不为!

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇c3p0在spring中的配置 下一篇建表,插入标识列,自动生成id

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·微服务 Spring Boot (2025-12-26 18:20:10)
·如何调整 Redis 内存 (2025-12-26 18:20:07)
·MySQL 数据类型:从 (2025-12-26 18:20:03)
·Linux Shell脚本教程 (2025-12-26 17:51:10)
·Qt教程,Qt5编程入门 (2025-12-26 17:51:07)