当前位置:asp编程网>技术教程>Asp教程>  正文

ASP调用sql server存储过程的技巧

2011-12-07 08:56:11   来源:网络    作者:佚名   浏览量:2196   收藏

asp程序中使用sql server存储过程是常见的事,主要的作用是提高程序运行的时间,这里介绍一下调用不同类型的存储过程的方法。

一、最简单的调用

<%
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" 
%>
(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)

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

二、带参数的一种调用

<%
objConn.Execute "exec sp_AddHit,'http://www.aspbc.com', 1" 
%>
(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)

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

三、带返回记录集的

<%
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 
%>
(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)

 

四、带参数和返回记录集的

<%
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 
%>
(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)

 

五、存储过程代码

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 
(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)


关于我们-广告合作-联系我们-积分规则-网站地图

Copyright(C)2013-2017版权所属asp编程网