仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 402|回复: 8
打印 上一主题 下一主题

[学习教程] ASP网页设计前往多个纪录集的存储历程-ASP挪用存储...

[复制链接]
乐观 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:49:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。存储历程|纪录集 本文开始先容的是前往纪录集的存储历程。偶然候,必要一个存储历程前往多个纪录集,在ASP中,怎样同时获得这些纪录集呢?为了申明这一成绩,在userinfo表中增添两个字段:usertel及usermail,并设定只要登任命户能够检察这两项内容。

/*SP7*/
CREATEPROCEDUREdbo.getUserInfo
@useridint,
@checkloginbit
as
setnocounton
begin
if@useridisnullor@checkloginisnullreturn
selectusername
fromdbo.[usrinfo]
whereuserid=@userid
--若为登任命户,取usertel及usermail
if@checklogin=1
selectusertel,usermail
fromdbo.[userinfo]
whereuserid=@userid
return
end
go

  以下是ASP代码:


**挪用前往多个纪录集的存储历程**
DIMchecklg,UserID,UserName,UserTel,UserMail
DIMMyComm,MyRst
UserID=1
checklogin()为自界说函数,判别会见者是不是登录
checklg=checklogin()
SetMyComm=Server.CreateObject("ADODB.Command")
withMyComm
 .ActiveConnection=MyConStrMyConStr是数据库毗连字串
 .CommandText="getUserInfo"指定存储历程名
 .CommandType=4标明这是一个存储历程
 .Prepared=true请求将SQL命令先行编译
 .Parameters.append.CreateParameter("@userid",3,1,4,UserID)
 .Parameters.append.CreateParameter("@checklogin",11,1,1,checklg)
 SetMyRst=.Execute
endwith
SetMyComm=Nothing

从第一个纪录会合取值
UserName=MyRst(0)
从第二个纪录会合取值
ifnotMyRstisNothingthen
 SetMyRst=MyRst.NextRecordset()
 UserTel=MyRst(0)
 UserMail=MyRst(1)
endif
SetMyRst=Nothing

  以上代码中,使用Recordset工具的NextRecordset办法,获得了存储历程前往的多个纪录集。

  至此,针对ASP挪用存储历程的各类情形,本文已做了较为周全的申明。最初说一下在一个ASP程序中,挪用多个存储历程的分歧办法。
  在一个ASP程序中,挪用多个存储历程最少有以下三种办法是可行的:

  1.创立多个Command工具


DIMMyComm
SetMyComm=Server.CreateObject("ADODB.Command")
挪用存储历程一
......
SetMyComm=Nothing
SetMyComm=Server.CreateObject("ADODB.Command")
挪用存储历程二
......
SetMyComm=Nothing
......

  2.只创立一个Command工具,停止一次挪用时,扫除其参数


DIMMyComm
SetMyComm=Server.CreateObject("ADODB.Command")
挪用存储历程一
.....
扫除参数(假定有三个参数)
MyComm.Parameters.delete2
MyComm.Parameters.delete1
MyComm.Parameters.delete0
挪用存储历程二并扫除参数
......
SetMyComm=Nothing

  此时要注重:扫除参数的按次与参数声明的按次相反,缘故原由嘛,我也不晓得。

  3.使用Parameters数据汇合的Refresh办法重置Parameter工具


DIMMyComm
SetMyComm=Server.CreateObject("ADODB.Command")
挪用存储历程一
.....
重置Parameters数据汇合中包括的一切Parameter工具
MyComm.Parameters.Refresh
挪用存储历程二
.....
SetMyComm=Nothing

  一样平常以为,反复创立工具是效力较低的一种办法,可是经测试(测试工具为MicrosoftApplicationCenterTest),了局出人意表:

  办法2>=办法1>>办法3

  办法2的运转速率年夜于即是办法1(最多可高4%摆布),这两种办法的运转速率宏大于办法3(最多竟高达130%),以是倡议在参数多时,接纳办法1,在参数较少时,接纳办法2。
想法是和程序员的想法不一样的.至于为什么.大家去想一想.跟心理学有关的
冷月葬花魂 该用户已被删除
沙发
发表于 2015-1-20 05:13:47 | 只看该作者
Session:这个存储跟客户端会话过程的数据,默认20分钟失效
飘灵儿 该用户已被删除
板凳
发表于 2015-1-25 17:10:59 | 只看该作者
我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。
若天明 该用户已被删除
地板
发表于 2015-2-3 11:59:54 | 只看该作者
掌握asp的特性而且一定要知道为什么。
谁可相欹 该用户已被删除
5#
发表于 2015-2-8 20:44:39 | 只看该作者
从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了
再见西城 该用户已被删除
6#
发表于 2015-2-26 09:03:42 | 只看该作者
Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)
小魔女 该用户已被删除
7#
发表于 2015-3-8 13:12:22 | 只看该作者
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
老尸 该用户已被删除
8#
发表于 2015-3-15 23:13:39 | 只看该作者
运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。
分手快乐 该用户已被删除
9#
发表于 2015-3-22 18:08:18 | 只看该作者
我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 10:34

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表