浅谈在asp中调用sqlserver中的存储过程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

浅谈在ASP中调用SQL SERVER中的存储过

论文导读:ASP (ActiveServer Pages) 是服务器端的脚本编写环境,可用来创建动态Web页、生成功能强大的Web应用程序和各种基于B/S结构的治理系统。

本文就针对ASP调用SQL SERVER中的储备过程来谈谈自己的观点。

下面要紧介绍如何利用COMMAND对象来对储备过程的调用。

关键词:ASP,储备过程,COMMAND对象,CONNECTION对象ASP (Active Server Pages) 是服务器端的脚本编写环境,可用来创建动态Web页、生成功能强大的Web应用程序和各种基于B/S结构的治理系统。

ASP技术以通俗易明白的编程方式受到宽敞读者的青睐,读者通过短期的基础知识及实例培训即可开发出自己的WEB网站。

SQLSERVER是WEB站点部署最常用的数据库,它与ASP结合开发成为这一领域的经典合作。

本文就针对A SP调用SQL SERVER中的储备过程来谈谈自己的观点。

1、储备过程的简介1.1储备过程的定义:储备过程是一组编译在单个执行打算中的Trans act-SQL语句,它将一些固定的操作集中起来交给SQL SERVER数据库服务器完成,以实现某个任务。

在需要使用时只要调用即可。

1.2使用储备过程的优点1)通过本地储备、代码预编译和缓存技术实现高性能的数据操作。

储备过程是SQL语句和部分操纵流语句的预编译集合,储备过程被进行了编译和优化,当储备过程第一次执行时,SQL SERVER为其产生查询打算并将其储存在内存中,如此以后在调用该储备过程时就不必再进行编译,这能在一定程度上改善系统的性能。

2)通过通用编程结构和过程重用实现编程框架。

假如业务规则发生了变化,能够通过修改储备过程来适应新的业务规则,而不必修改客户端应用程序。

如此所有调用该储备过程的应用程序就会遵循新的业务规则。

3)通过隔离和加密的方法提高了数据库的安全性。

数据库用户能够通过得到权限来执行储备过程,而不必给予用户直截了当访问数据库对象的权限。

这些对象将由储备过程来进行操作。

另外,储备过程能够加密,如此用户就无法阅读储备过程中的Transact-SQL命令。

这些安全特性将数据库结构和数据库用户隔离开来,这也进一步保证了数据的完整性和可靠性。

2、ASP调用储备过程ASP页是包括HTML标记、文本和脚本命令的文件。

ASP页可调用ActiveX组件来执行任务,也能够通过ADO组件实现对数据库的调用。

2.1 ADO对象简介ASP通过一组称为ADO的对象模块来访问数据库。

如此用户在编码时,就不用考虑数据库的类型,因为ADO对象能够通过OLE DB访问数据库。

OLE DB是一种数据库体系结构,它使应用程序能够对储备在不同数据库中的数据进行统一的访问。

但在访问数据库之前,必须建立数据库的连接。

在ASP中连接数据库要紧是利用ADO对象中的connection对象来完成。

论文检测。

具体见后面的实例。

2.2 ASP利用ADO调用储备过程的方法在ASP中,调用储备过程的方法一样来说有两种:一种是用execute直截了当调用储备过程,另一种是利用command对象来调用储备过程。

下面分别通过实例来介绍这两种调用方式。

2.2.1用execute直截了当调用储备过程。

这种方法对调用一些简单的无输出参数的储备过程比较方便。

其操作步骤如下:步骤1:编写sql语句:“execute储备过程名参数”。

设在XK数据库中有一student表,其结构为(classno,stuno,stuname,pwd),现要求创建一个储备过程p_student,使之能完成将student表中的所有记录显示在页面上。

则所对应的代码为:Create procedure p_studentAsSelect * from student步骤2:再通过connecti on.execute或recordset.open执行。

为了实现上面的功能,ASP调用储备过程对应的代码如下:/*现在是直截了当利用recordset.open来执行储备过程的,因此也可用connection对象的execute方法来调用,只是现在要先建一个connection对象*/尽管利用这两种方法能实现对储备过程的调用,但Recor dset对象会要求数据库传送所有的数据,那么数据量专门大的时候就会造成网络的堵塞和数据库服务器的负荷过重,从而导致整体的执行效率降低,因此在数据流量大时,常用command对象来完成对储备过程的调用,专门在用参数查询时其优点更明显。

要紧是因为Command对象能够直截了当调用SQL语句,所执行的操作又在数据库服务器中进行的,明显会有专门高的执行效率。

下面要紧介绍如何利用COMMAND对象来对储备过程的调用。

2.2.2利用command对象来完成对储备过程调用1、ASP中command
对象简介在ASP中Command对象又称为命令对象,是对数据库执行命令的对象,利用它的对象、方法与属性能够执行对数据库的查询、添加、删除和修改记录等操作。

2、command对象的建立该对象的建立有两种方法:一种是利用connection对象来建立command对象,另一种是直截了当建立command对象。

由于command对象必须依靠于connection对象,因此直截了当建立command对象看起来没有明确建立connection对象,但还要隐含地建立一个connection对象。

只是,由于没有明确建立,因此就导致conne ction对象的有些功能无法使用。

因此大伙儿一样采纳connection对象来建立command对象的。

3、ASP调用储备过程实例众所周知,储备过程之因此能提高程序的执行效率,要紧是因为它能够利用参数查询。

为了方便说明,依照储备过程的输入输出,作以下简单分类:1)只返回单一记录集的储备过程(设有如以下储备过程,它要紧是取得student表中的所有记录,即返回一个结果集,因此假如student表是一张空表,则ASP调用储备过程的结果集是既无输入也无输出。

其对应代码如下:)CREATE PROCEDURE p_studentasselect * from studentgo通过command对象调用该储备过程的ASP关键代码如下:DIM MyComm,MyRst,strconnstringSet MyComm =S erver.CreateObject('ADODB mand')。

相关文档
最新文档