ASP存储过程的使用

存储过程

   1、调用没有参数的存储过程

  <%
  set conn=server.CreateObject("adodb.connection")
  set cmd=server.CreateObject("adodb.command")
  strconn="dsn=pubs;uid=sa;pwd"
  conn.Open strconn
  set cmd.ActiveConnection=conn
  
  cmd.CommandText="{call nono}"
  
  'set rs=cmc.exe 或者cmd.execute
  
  set rs=cmd.Execute()
  
  %>

  2、一个输入的参数的存储过程

  <%
  set conn=server.CreateObject("adodb.connection")
  set cmd=server.CreateObject("adodb.command")
  strconn="dsn=pubs;uid=sa;pwd"
  
  conn.Open strconn
  set cmd.ActiveConnection=conn
  
  cmd.CommandText="{call oneinput(?)}"
  cmd.Parameters.Append cmd.CreateParameter("@aaa",adInteger ,adParamInput )
  cmd("@aaa")=100
  
  cmd.Execute()
  
  %>

  3、一个输入参数和一个输出的参数

  <%
  set conn=server.CreateObject("adodb.connection")
  set cmd=server.CreateObject("adodb.command")
  strconn="dsn=pubs;uid=sa;pwd"
  
  conn.Open strconn
  set cmd.ActiveConnection=conn
  
  cmd.CommandText = "{call oneinout(?,?)}"
  cmd.Parameters.Append cmd.CreateParameter("@aaa",adInteger,adParamInput)
  cmd("@aaa")=10
  cmd.Parameters.Append cmd.CreateParameter("@bbb",adInteger,adParamOutput)
  
  cmd.Execute()
  
  bbb=cmd("@bbb")
  %>

  4、一个输入参数,一个输出参数,和一个返回值

  <%
  set conn=server.CreateObject("adodb.connection")
  set cmd=server.CreateObject("adodb.command")
  strconn="dsn=pubs;uid=sa;pwd"
  
  conn.Open strconn
  set cmd.ActiveConnection=conn
  
  cmd.CommandText="{?=call onereturn(?,?)}"
  
  cmd.Parameters.Append cmd.CreateParameter("@return_value",adInteger,adParamReturnValue )
  cmd.Parameters.Append cmd.CreateParameter("@aaa",adInteger,adParamInput )
  cmd("@aaa")=10
  cmd.Parameters.Append cmd.CreateParameter("@bbb",adInteger,adParamOutput)
  
  cmd.Execute()
  
  bbb=cmd("@bbb")
  rrr=cmd("@return_value")
  %> 

  如何在ASP中调用SQL存储过程

  <%set connection1 = Server.CreateObject("ADODB.Connection")
  connection1.open ... '联接
  set command1=Server.CreateObject("ADODB.command")
  set command1.activeconnection=connection1
  command1.commandtype=4
  command1.commandtext="sp_1" 'SP 名
  command1.parameters(1)=... '参数值
  command1.parameters(2)=...
  set recordset1=command1.execute()
  %> 

  ASP调用存储过程的技巧

  1、最简单的如下

   Dim objConn
   Set objConn = Server.CreateObject("ADOBD.Connection")
   objConn.Open Application("Connection_String")
   'Call the stored procedure to increment a counter on the page
   objConn.Execute "exec sp_AddHit"

   没有参数,没有返回,没有错误处理,就是这个了

   2、带参数的一种调用

   objConn.Execute "exec sp_AddHit 'http://www.aspalliance.com', 1"

   请注意分割参数,该方法也不返回记录
  
   3、返回记录的

   Dim objConn
   Dim objRs
   Set objConn = Server.CreateObject("ADOBD.Connection")
   Set objRs = Server.CreateObject("ADOBD.Recordset")
   objConn.Open Application("Connection_String")
   'Call the stored procedure to increment a counter on the page
   objRs.Open objConn, "exec sp_ListArticles '1/15/2001'"
   'Loop through recordset and display each article

   4、……

   Dim objConn
   Dim objCmd
  
   'Instantiate objects
   Set objConn = Server.CreateObject("ADODB.Connection")
   set objCmd = Server.CreateObject("ADODB.Command")
   conn.Open Application("ConnectionString")
  
   With objCmd
   .ActiveConnection = conn 'You can also just specify a connection string here
   .CommandText = "sp_InsertArticle"
   .CommandType = adCmdStoredProc 'Requires the adoVBs.inc file or typelib meta tag
  
   'Add Input Parameters
   .Parameters.Append .CreateParameter("@columnist_id", adDouble, adParamInput, , columnist_id)
   .Parameters.Append .CreateParameter("@url", adVarChar, adParamInput, 255, url)
   .Parameters.Append .CreateParameter("@title", adVarChar, adParamInput, 99, url)
   .Parameters.Append .CreateParameter("@description", adLongVarChar, _
   adParamInput, 2147483647, description)
  
   'Add Output Parameters
   .Parameters.Append .CreateParameter("@link_id", adInteger, adParamOutput, , 0)
  
   'Execute the function
   'If not returning a recordset, use the adExecuteNoRecords parameter option
   .Execute, , adExecuteNoRecords
   link_id = .Parameters("@link_id")
   End With

     5、存储过程的代码

   Create PROCEDURE dbo.sp_InsertArticle
   (
   @columnist_id int,
   @url varchar(255),
   @title varchar(99),
   @description text
   @link_id int OUTPUT
   )
   AS
   BEGIN
   INSERT INTO dbo.t_link (columnist_id,url,title,description)
   VALUES (@columnist_id,@url,@title,@description)
  
   SELECT @link_id = @@IDENTITY
   END

时间: 2025-01-18 20:31:22

ASP存储过程的使用的相关文章

asp+存储过程的使用

asp+|存储过程 在ASP中调用存储过程 <!-- 必须加载adovbs.inc文件,否则将出错 --><!--#include file="adovbs.inc"--><%dim objCnndim objCmddim Rsconst o_id=112 '-----建立Connection对象----------set objCnn=Server.CreateObject("Adodb.connection")objCnn.Open

何为asp存储过程

总是听人说存储过程怎么怎么好,怎么怎么有优势,实在想研究一下这个东西. 虽然现在还是学习阶段,先拿出来分享一下. 总是听人说存储过程怎么怎么好,怎么怎么有优势,实在想研究一下这个东西. 虽然现在还是学习阶段,先拿出来分享一下. 通俗的说,可以把很多句SQL语句放在存储过程里,然后,用ASP执行一下存储过程就可以了. 用ASP执行一句存储过程,让那些语句在MSSQL库里执行,远比通过ASP执行很多句SQL效率要高很多.   举例图示如下: ASP执行>>存储过程>>MSSQL内部处理

使用ASP存储过程的方法

本讲将主要使用Microsoft SQL Server7.0数据库,先建立一个连接文件AdoSQL7.asp备用,以后用到时不再特别说明. 一.使用Command对象和Parameter对象传递参数 本讲将主要使用Microsoft SQL Server7.0数据库,先建立一个连接文件AdoSQL7.asp备用,以后用到时不再特别说明. <% ''AdoSQL7.asp Option Explicit Response.Expires = 0   ''第一部分: 建立连接 Dim Cnn, St

ASP存储过程的使用方法

存储过程 一.使用Command对象和Parameter对象传递参数 本讲将主要使用Microsoft SQL Server7.0数据库,先建立一个连接文件AdoSQL7.asp备用,以后用到时不再特别说明. <% ''AdoSQL7.asp Option Explicit Response.Expires = 0 ''第一部分: 建立连接 Dim Cnn, StrCnn Set Cnn = Server.CreateObject("ADODB.Connection") StrC

存储过程介绍及asp存储过程的使用

存储过程 一.先介绍一下什么是存储过程 存储过程是利用SQL Server所提供的Tranact-SQL语言所编写的程序.Tranact-SQL语言是SQL Server提供专为设计数据库应用程序的语言,它是应用程序和SQL Server数据库间的主要程序式设计界面.它好比Oracle数据库系统中的Pro-SQL和Informix的数据库系统能够中的Informix-4GL语言一样.这类语言主要提供以下功能,让用户可以设计出符合引用需求的程序: 1).变量说明 2).ANSI兼容的SQL命令(如

几例在ASP存储过程的使用方法

存储过程 一.使用Command对象和Parameter对象传递参数 本讲将主要使用Microsoft SQL Server7.0数据库,先建立一个连接文件AdoSQL7.asp备用,以后用到时不再特别说明. <% 'AdoSQL7.asp Option Explicit Response.Expires = 0 '第一部分: 建立连接 Dim Cnn, StrCnn Set Cnn = Server.CreateObject("ADODB.Connection") StrCnn

存储过程介绍及asp+存储过程的使用

一.先介绍一下什么是存储过程 存储过程是利用SQL Server所提供的Tranact-SQL语言所编写的程序.Tranact-SQL语言是SQL Server提供专为设计数据库应用程序的语言,它是应用程序和SQL Server数据库间的主要程序式设计界面.它好比Oracle数据库系统中的Pro-SQL和Informix的数据库系统能够中的Informix-4GL语言一样.这类语言主要提供以下功能,让用户可以设计出符合引用需求的程序:1).变量说明2).ANSI兼容的SQL命令(如Select,

asp 存储过程分页代码第1/2页

存储过程采用的是select top 加 not in的方式完成,速度也算是相当快了 我测试过了百万级数据量一般查询在1秒一下,贴出来大家交流下,看有没有什么好的建议. 简单几句话就可以实现分页功能,请看代码: 最简单使用方法(适用于任何数据表): test.asp 复制代码 代码如下: <!--#include file="conn.asp"--> <!--#include file="Page.asp"--> <% Set My =

ASP存储过程开发应用详解第1/2页

我在初学时查阅过大量相关资料,发现其中提供的很多方法实际操作起来并不是那么回事.对于简单的应用,这些资料也许是有帮助的,但仅限于此,因为它们根本就是千篇一律,互相抄袭,稍微复杂点的应用,就全都语焉不详了. 现在,我基本上通过调用存储过程访问SQL Server,以下的文字都是实践的总结,希望对大家能有帮助. 存储过程就是作为可执行对象存放在数据库中的一个或多个SQL命令. 定义总是很抽象.存储过程其实就是能完成一定操作的一组SQL语句,只不过这组语句是放在数据库中的(这里我们只谈SQL Serv