在asp中调用sql server的存储过程方法

来源:asp之家 时间:2007-08-13 13:28:00 

在asp中调用sql server的存储过程可以加快程序运行速度,本文介绍了asp使用存储过程的方法。

1.调用存储过程的一般方法
先假设在sql server中有一存储过程aspxhome_com_users:

CREATE PROCEDURE [dbo].[aspxhome_com_users] 
AS 
select * from users 
return 
GO 


第一种方法是不利用command对象,直接用recordset对象

set rs=server.createobject("adodb.recordset") 
sql="exec aspxhome_com_users" 
rs.open sql,conn,1,1 这样就可 


第二种方法是利用command对象

set comm=server.createobject("adodb.command") 
comm.commantype=4 
set comm.activeconnection=conn 
comm.commanaspxhome_comext="dbo.aspxhome_com_users" 
set rs=server.createobject("adodb.recordset") 
rs.open comm,,1,1 


2.给存储过程传递参数
如果存储过程中不用参数,而是单一的sql语句,还显示不出调用存储过程的优势!
比如说一bbs的查询,可以按作者和主题查询!则可以建立存储过程如下:
参数keyword为关键字,choose是选择查询的方法。

CREATE PROCEDURE [dbo].[aspxhome_com_bbs] 
@keyword varchar(20)=null, 
@choose int=null 
as 
if @choose=1 
select * from bbs where name like @keyword 
else 
select * from bbs where subject like @keyword 
return 
go 

这样我们调用存储过程时只需将参数传递过去就行了,而省去在asp中来写一段程序
用第一种方法:

set rs=server.createobject("adodb.recordset") 
sql="exec aspxhome_com_bbs ’’"&keyword&"’’,"&choose&"" 
rs.open sql,conn,1,1 


用第二种方法:

set comm=server.createobject("adodb.command") 
comm.commantype=4 
comm.Parameters.append comm.CreateParameter("@keyword",adChar,adParamInput,50,keyword) 
comm.Parameters.append comm.CreateParameter("@keyword",adInteger,adParamInput,,choose) 
set comm.activeconnection=conn 
comm.commanaspxhome_comext="dbo.aspxhome_com_bbs" 
set rs=server.createobject("adodb.recordset") 
rs.CursorType=3 
rs.open comm,,1,1


深入阅读:

ASP存储过程应用全接触

标签:存储过程,SQL,asp
0
投稿

猜你喜欢

  • python实现通过队列完成进程间的多任务功能示例

    2022-06-25 03:49:27
  • python中is与双等于号“==”的区别示例详解

    2023-07-09 22:40:19
  • Python入门教程(二十二)Python的类和对象

    2021-11-22 06:00:56
  • python字符串连接方法分析

    2021-12-24 16:27:10
  • js仿腾讯QQ的web登陆界面

    2024-04-18 09:41:14
  • MySql创建分区的方法实例

    2024-01-23 22:17:40
  • 用JavaScript脚本实现的图灵机

    2009-01-21 18:10:00
  • php如何解决无法上传大于8M的文件问题

    2024-06-05 09:39:24
  • python计算导数并绘图的实例

    2023-01-19 21:16:51
  • Python实现采集网站ip代理并检测是否可用

    2021-01-10 09:10:53
  • python之yield表达式学习

    2022-05-06 14:51:43
  • MySQL高并发生成唯一订单号的方法实现

    2024-01-28 00:27:38
  • 使用express来代理服务的方法

    2024-05-03 15:56:50
  • 深入理解Python中range和xrange的区别

    2023-06-22 06:10:09
  • Django 解决distinct无法去除重复数据的问题

    2023-02-09 22:13:22
  • Pytorch转keras的有效方法,以FlowNet为例讲解

    2023-07-27 02:04:54
  • 平面设计人员必读

    2008-07-16 11:58:00
  • Python+Opencv实现表格边框线检测

    2023-08-11 04:55:14
  • 一文带你了解Python中的type,isinstance和issubclass

    2023-05-10 22:54:20
  • Python列表的索引与切片

    2022-11-17 13:06:19
  • asp之家 网络编程 m.aspxhome.com