存储过程

1、为什么会产生存储过程?

  所有的程序开发,基本都离不开数据的处理。大量的数据都是保存在数据库中,那么在程序的开发中,必然就会涉及到与数据库的交互。大量的数据查询、新数据的插入、指定数据的删除、更新等等操作。

  下面来看这样一个场景:

  某个业务查询,涉及的表比较多,sql语句的执行也比较复杂。如果按照sql语句执行的方式运行,可能会产生多次数据库连接,影响执行效率。

  其根本原因就在于,执行的sql语句是放在客户端的,并且是一个可拆分的零散的语句。

 

2、存储过程解决了什么问题?

  存储: 存储过程将sql语句存储在数据库服务器中,这样就算是大量的sql语句,也不会出现多次与数据库服务器的连接。

  过程: 其实就是一个函数,将需要频繁执行的大量sql语句封装成一个函数,从而实现代码重用,简化开发过程。并且还可以实现函数一样的返回值。

 

3、什么是存储过程?

  下面就是一个存储过程的定义和调用:

 1 Create proc insert_book
 2 @param1 char(10),@param2 varchar(20),@param3 money,@param4 money output -----output表示回传
 3 with encryption ---------加密
 4 as
 5 insert into book(编号,书名,价格)Values(@param1,@param2,@param3)
 6 select @param4=sum(价格) from book
 7 go
 8 执行例子:
 9 declare @total_price money
10 exec insert_book '003','Delphi控件开发指南',$100,@total_price output
11 print '总金额为'+convert(varchar,@total_price)
12 go

 

posted @ 2019-01-10 20:51  澄虚元  阅读(148)  评论(0)    收藏  举报