asp存储过程使用
2018-09-06 12:30
  1、调用没有参数的存储过程
<%
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 1
 请注意分割参数,该方法也不返回记录
 3、返回记录的
 Dim objConn
 Dim objRs
 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 
 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
本新闻共2页,当前在第1页12
  
上一篇:用ASP实现号码转换程序实例
下一篇:奇妙的文件系统对象组件