存储过程的详细介绍.doc

存储过程的详细介绍.doc

ID:33614087

大小:45.50 KB

页数:8页

时间:2019-02-27

存储过程的详细介绍.doc_第1页
存储过程的详细介绍.doc_第2页
存储过程的详细介绍.doc_第3页
存储过程的详细介绍.doc_第4页
存储过程的详细介绍.doc_第5页
资源描述:

《存储过程的详细介绍.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、存储过程  介绍怎样使用存储过程。存储过程是数据库服务器端的一段程序,它有两种类型。一种类似于SELECT查询,用于检索数据,检索到的数据能够以数据集的形式返回给客户。另一种类似于INSERT或DELETE查询,它不返回数据,只是执行一个动作。有的服务器允许同一个存储过程既可以返回数据又可以执行动作。10.1概述在不同类型的服务器上,存储过程的工作方式是不同的。例如,对于InterBase服务器来说,它能够以输出参数的形式返回数据,而对于其他服务器如MicrosoftSQLServer和Sybase,能够以数据集的形式返回数据和信息。在Delphi4中,要访问和操纵服务器上的存储

2、过程,可以使用TStoredProc构件或TQuery构件。至于到底选择哪一个,取决于存储过程本身是怎样编写的、数据怎样返回和使用哪一种服务器。TStoredProc构件和TQuery构件都是从TDataSet继承下来的。TStoredProc构件适合于执行那些不需要返回数据,并且通过输出参数来返回信息的存储过程。TStoredProc构件的Params属性用于管理这些参数,同时,TStoredProc构件的GetResults函数可以显式地申请返回结果。总之,TStoredProc构件适合于执行那些不需要返回结果或者只是通过输出参数返回结果的存储过程。TQuery构件适合于执行

3、那些能够返回数据集的存储过程,包括InterBase服务器上通过输出参数返回数据集的存储过程。当然,TQuery构件也适合于执行那些不需要返回结果或者只是通过输出参数返回结果的存储过程。参数既可以由存储过程传递给客户程序,也可以由客户程序传递给存储过程,前者称为输出参数,后者称为输入参数。对于有的服务器来说,输出参数只能传递一个值,而有的服务器允许输出参数传递一个数据集。10.2什么时候需要用存储过程如果服务器定义了存储过程,应当根据需要决定是否要用存储过程。存储过程通常是一些经常要执行的任务,这些任务往往是针对大量的记录而进行的。在服务器上执行存储过程,可以改善应用程序的性能。

4、这是因为:.服务器往往具有强大的计算能力和速度。.避免把大量的数据下载到客户端,减少网络上的传输量。例如,假设一个应用程序需要计算一个数据,这个数据需要涉及到许多记录。如果不使用存储过程的话,把这些数据下载到客户端,导致网络上的流量剧增。不仅如此,客户端可能是一台老掉牙的计算机,它的运算速度很慢。而改用存储过程后,服务器会很快地把数据计算出来,并且只需传递一个数据给客户端,其效率之高是非常明显的。10.3怎样使用存储过程应用程序怎样使用存储过程,取决于存储过程本身是怎样编写的、数据怎样返回和使用哪一种服务器。10.3.1使用存储过程的一般步骤要访问服务器上的存储过程,一般是这么几

5、个步骤:第一步,把一个TStoredProc构件放到窗体或数据模块上。第二步,设置DatabaseName属性指定一个数据库,可以设为BDE别名或者应用程序专用的别名(如果用TDatabase构件连接数据库的话)。第三步,设置StoredProcName属性指定存储过程的名称。如果前面正确设置了DatabaseName属性,就可以从一个下拉列表中选择一个存储过程。由于经常要在运行期执行不同的存储过程,因此,StoredProcName属性一般是在运行期设置的。第四步,单击Params边上的省略号按钮打开一个编辑器。如果第二步和第三步设置正确的话,在这个编辑器中将显示所有的输入和输

6、出参数,否则,这个编辑器就是空的。要说明的是,并不是所有的服务器都能够提供有关的参数的信息。如果服务器没有提供有关参数的信息,就得自己建立这些参数。10.3.2准备和执行存储过程在执行存储过程之前,最好先通知服务器准备好,这就要调用TStoredProc构件的Prepare函数,例如:StoredProc1.Prepare;注意:如果应用程序在运行期改变了参数的信息,必须重新调用Prepare函数。要执行存储过程,可以调用TStoredProc构件的ExecProc函数,程序示例如下:StoredProc1.Params[0].AsString:=Edit1.Text;Store

7、dProc1.Prepare;StoredProc1.ExecProc;注意:如果在调用ExecProc之前没有调用Prepare,TStoredProc构件会自动把参数准备好,存储过程执行完毕后,再自动取消准备。不过,如果一个存储过程要反复执行多次的话,最好显式地调用Prepare,不再需要执行存储过程时调用UnPrepare函数。执行了存储过程后,它有可能返回这样几种数据:.一是数据集,可以用标准的数据控件显示其中的数据。.二是输出参数。.三是状态信息。10.4创建一个存储过

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。