学会在ASP中使用存储过程

2016-01-29 18:50 0 1 收藏

学会在ASP中使用存储过程,学会在ASP中使用存储过程

【 tulaoshi.com - ASP 】

 

学习使用存储过程(Stored Procedure),是ASP程序员的必须课之一。所有的大型数据库都支持存储过程,比如Oracle、MS SQL等,(但MS Access不支持,不过,在Access里可以使用参数化的查询)。
使用存储过程有许多好处,它可以封装复杂的数据逻辑,充分发挥大型数据库本身的优势。我们知道,ASP并不适合做复杂的数据运算,而通过OLD DB访问数据库,由于数据需要在ASP和数据库之间传递,相当消耗系统资源。事实上,如果数据库仅仅起着数据存储的作用,那么它的功能是远远没有得到利用的。
关于如何创建存储过程,请参考MS SQL的相关文档。
本文介绍存储过程如何在ASP中运用。
简单的一个SQL语句:
select ID,Name,Picture,Time,Duty from employ
我们可以创建一个存储过程:
CREATE PROCEDURE sp_employ
AS
select ID,Name,Picture,Time,Duty from employ
Go
 

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/asp/)

而SQL语句:
select ID,Name,Picture,Time,Duty from employ where ID=10230
对应的存储过程是:(用Alter替换我们已有的存储过程)
ALTER PROCEDURE sp_employ
@inID  int
AS
select ID,Name,Picture,Time,Duty from employ  where ID=@inID
Go
 


下面对比一下SQL和存储过程在ASP中的情况。首先看看直接执行SQL的情况:
<%
dim Conn, strSQL, rs
set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open  "DSN=webData;uid=user;pwd=password"
strSQL = " select ID,Name,Picture,Time,Duty from employ "
Set rs = Conn.Execute(strSQL)
%

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/asp/)


再看看如何执行Stored Procedure:
<%
dim Conn, strSQL, rs
set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open  "DSN=webData;uid=user;pwd=password" ’make connection
strSQL = "sp_employ"
Set rs = Conn.Execute(strSQL)
%


而执行带参数的Stored Procedure也是相当类似的:
<%
dim Conn, strSQL, rs, myInt
myInt = 1
set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open  "DSN=webData;uid=user;pwd=password"
strSQL = "sp_myStoredProcedure " & myInt
Set rs = Conn.Execute(strSQL)
%


你可能觉得在ASP中使用存储过程原来是这样的简单。对!就是这么简单。

 

来源:https://www.tulaoshi.com/n/20160129/1507477.html

延伸阅读
标签: ASP
当你的查询相对简单的时候,每次从头开始创建SQL语句也不费什么工夫,不过,复杂的查询就不同了,每次都从头来会产生很多开发错误。因此,一旦让SQL顺利地运行起来,你最好把它们存起来,在需要时再调用它们。这样,哪怕是一个简单查询你都能随时用上存储的查询语句了。 假设你每周都要给团队做一次报告,指出目前存在的业务支持问题,这些数...
标签: ASP
  在许多网页上,用户都可以通过简单地选择列表中的一项来输入一个国家或州的名字,在大多数情况下,我们通常使用ASP来生成这个列表,创建生成这个列表的函数并把它们保存在一个Include文件中。然而,ASP需要额外的时间在服务器上加载并处理这些Include文件,此外,每次生成一个选择列表时,服务器都必须加载整个Include文件。 在最...
标签: Web开发
ASP与存储过程(Stored Procedures)的文章不少,但是我怀疑作者们是否真正实践过。我在初学时查阅过大量相关资料,发现其中提供的很多方法实际操作起来并不是那么回事。对于简单的应用,这些资料也许是有帮助的,但仅限于此,因为它们根本就是千篇一律,互相抄袭,稍微复杂点的应用,就全都语焉不详了。     现在,我基...
问题 以前,我们学习过在SQL Server 2005中用EXECUTE AS命令来授予权限的方法,你已经看到如何用EXECUTE AS从句来授予粒度权限。在一个可编程的对象比如存储过程或函数内切换上下文是很重要的,尤其是如果访问存储过程的用户没有足够的权限去运行一个代码块时。但为了把它更加粒度化,只有在需要的时候和返回到调用方的原来的执行上...
标签: ASP
  VBScript5中增加了许多新功能,最振奋人心的当属类和正则表达式的出现。以下是本人写的一个解析html代码的类。我是 学php的,语法有不习惯的地方,请大家多包含。 <% Class HTMLParse     ' 设置 Initialize 事件。     Private Sub Class_Initialize      &nbs...

经验教程

362

收藏

89
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部