动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   Asp → 阅读文章

 asp存储过程使用

作者:郁郁小蝎 来源:中国站长学院 
阅读 2403 人次 , 2006-2-15 14:16:00 

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

  
 本文Tags存储过程  
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:asp当中判断函数一览
· 下一篇:ASP调用带参数存储过程的几种方式
· 站内搜索脚本例子二(JavaScript)
· 将汉字转换成汉语拼音的一段代码
· 站内搜索脚本例子六(JavaScript)
· 一个不太让人讨厌的自动弹出窗口
· 每页都有的表头和打印分页


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077