日期:2010-08-20  浏览次数:20884 次

   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 'htt