ASP网页编程之办理ASP中实行数据库查询中的特别字符的...
问题是他们究竟是喜欢他们是使用软件时,速度快还是速度慢好.(当然在3秒以内).无论是他们输入资料时,查找资料时,分析资料时.办理|数据|数据库|成绩|实行 在举行数据库的查询时,会常常碰到如许的情形:比方想在一个用户数据库中查询他的用户名和他的暗码,但刚好该用户利用的名字和暗码中有特别的字符,比方单引号,“|”号
双引号大概连字符“&”。
比方他的名字是1test,暗码是A|&900
这时候当你实行以下的查询语句时,一定会报错:
SQL="SELECT*FROMSecurityLevelWHEREUID="&UserID&""
SQL=SQL&"ANDPWD="&Password&""
由于你的SQL将会是如许:
SELECT*FROMSecurityLevelWHEREUID=1test
ANDPWD=A|&900
在SQL中,"|"为支解字段用的,明显会堕落了。如今供应上面的几个函数专门用来处置这些头疼的器材:
FunctionReplaceStr(TextIn,ByValSearchStrAsString,_
ByValReplacementAsString,_
ByValCompModeAsInteger)
DimWorkTextAsString,PointerAsInteger
IfIsNull(TextIn)Then
ReplaceStr=Null
Else
WorkText=TextIn
Pointer=InStr(1,WorkText,SearchStr,CompMode)
DoWhilePointer>0
WorkText=Left(WorkText,Pointer-1)&Replacement&_
Mid(WorkText,Pointer+Len(SearchStr))
Pointer=InStr(Pointer+Len(Replacement),WorkText,_
SearchStr,CompMode)
Loop
ReplaceStr=WorkText
EndIf
EndFunction
FunctionSQLFixup(TextIn)
SQLFixup=ReplaceStr(TextIn,"","",0)
EndFunction
FunctionJetSQLFixup(TextIn)
DimTemp
Temp=ReplaceStr(TextIn,"","",0)
JetSQLFixup=ReplaceStr(Temp,"|","&chr(124)&",0)
EndFunction
FunctionFindFirstFixup(TextIn)
DimTemp
Temp=ReplaceStr(TextIn,"","&chr(39)&",0)
FindFirstFixup=ReplaceStr(Temp,"|","&chr(124)&",0)
EndFunction
有了下面几个函数后,当你在实行一个sql前,请先利用
SQL="SELECT*FROMSecurityLevelWHEREUID="&SQLFixup(UserID)&""
SQL=SQL&"ANDPWD="&SQLFixup(Password)&""asp可以轻松地实现对页面内容的动态控制,根据不同的浏览者,显示不同的页面内容。而浏览者一点觉察不出来,就像为他专门制作的页面一样。使用各种各样的组件,asp可以完成无比强大的功能。 接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。 最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。 以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。 学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。 如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。 Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点) 我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。 掌握asp的特性而且一定要知道为什么。
页:
[1]