|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
ASP由于使用了COM组件所以它会变的十分强大,但是这样的强大由于WindowsNT系统最初的设计问题而会引发大量的安全问题。只要在这样的组件或是操作中一不注意,哪么外部攻击就可以取得相当高的权限而导致网站瘫痪或者数据丢失;随机|语句创建随机天生的HTML代码是一件相称简单完成的ASP特征。你大概创立过“逐日一帖”、转动告白等等,只必要略加粉饰就会令你的网站日久弥新。
对存储在数据库中的数据来讲,随机数特征能给出下面的效果,但它们大概太慢了些。你不克不及请求ASP“找个随机数”然后打印出来。实践上罕见的办理计划是创建以下所示的轮回:
Randomize
RNumber=Int(Rnd*499)+1
WhileNotobjRec.EOF
IfobjRec("ID")=RNumberTHEN
...这里是实行剧本...
endif
objRec.MoveNext
Wend
这很简单了解。起首,你掏出1到500局限以内的一个随机数(假定500就是数据库内纪录的总数)。然后,你遍历每纪录来测试ID的值、反省其是不是婚配RNumber。满意前提的话就实行由THEN关头字入手下手的那一块代码。假设你的RNumber即是495,那末要轮回一遍数据库花的工夫可就长了。固然500这个数字看起来年夜了些,但比拟更加安定的企业办理计划这仍是个小型数据库了,后者一般在一个数据库内就包括了不计其数笔记录。这时候候不就逝世定了?
接纳SQL,你就能够很快地找出正确的纪录而且翻开一个只包括该纪录的recordset,以下所示:
Randomize
RNumber=Int(Rnd*499)+1
SQL="SELECT*FROMCustomersWHEREID="&RNumber
setobjRec=ObjConn.Execute(SQL)
Response.WriteRNumber&"="&objRec("ID")&""&objRec("c_email")
不用写出RNumber和ID,你只必要反省婚配情形便可。只需你对以上代码的事情中意,你自可按需操纵“随机”纪录。Recordset没有包括其他内容,因而你很快就可以找到你必要的纪录如许就年夜年夜下降了处置工夫。
再谈随机数
如今你下定决计要榨干Random函数的最初一滴油,那末你大概会一次掏出多条随机纪录大概想接纳必定随机局限内的纪录。把下面的尺度Random示例扩大一下就能够用SQL应对下面两种情形了。
为了掏出几条随机选择的纪录并寄存在统一recordset内,你能够存储三个随机数,然后查询数据库取得婚配这些数字的纪录:
SQL="SELECT*FROMCustomersWHEREID="&RNumber&"ORID="&RNumber2&"ORID="&RNumber3
假设你想选出10笔记录(大概是每次页面装载时的10条链接的列表),你能够用BETWEEN大概数学等式选出第一笔记录和得当数目的递增纪录。这一操纵能够经由过程好几种体例来完成,可是SELECT语句只显现一种大概(这里的ID是主动天生的号码):
SQL="SELECT*FROMCustomersWHEREIDBETWEEN"&RNumber&"AND"&RNumber&"+9"
注重:以上代码的实行目标不是反省数据库内是不是有9条并发纪录。假如你必要包管每次选出10笔记录,那末你必需进一步计划查询。
</p>强大的可扩展性。ASP具有强大的扩展性,可以实现与多种网络、硬件设备的连接:通过专用的通讯线路远程接入企业;通过远程拨号服务器为远程拨号客户提供服务;通过WAP为移动电话互联网客户服务。 |
|