仓酷云

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

[学习教程] ASP网站制作之关于0x80040e14毛病

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

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

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

x
缺点:正版成本价格贵(盗版就不说了)、不够安全,大多数服务器用windows系统,没有linux安全毛病为何我会失掉一个0x80040e14的毛病信息?

ThiserroristhrownupbytheunderlyingOLEDBProvider.Theactualerrormessageis:
Thecommandcontainedoneormoreerrors
TheerrormessagethatyouseeonthescreenwillvarydependingontheMDACthatyouhaveinstalledandtheactualcauseoftheerror.

Thereareanumberofpossiblecauses:
Scenario1-SyntaxerrorinFROMclause
Scenario2a-SyntaxerrorinINSERTINTOstatement
Scenario2b-SyntaxerrorinUPDATEstatement
Scenario3a-Syntaxerror(missingoperator)-causedbymark
Scenario3b-Syntaxerror(missingoperator)-incorrectdelimiters
Scenario4-Syntaxerror-divisionbyzeroerror
Scenario1-SyntaxerrorinFROMclause
Thiscommonlyoccurswhenyouhaveatablenamethatisareservedwordoryourtablenamecontainsaspace(eg"table1").

Certainwords(liketable,field,date,select,password,leveletc)arereservedbyeitherADO,OLEDBorbyAccessforuseascommandsorsystemobjects.

YoucangetalistofreservedwordsinAccessfromtheonlinehelp.TheMicrosoftPlatformSDKoutlinesADO/OLEDBreservedwords.

Youshouldneverusethesewordsasnamesfortablesorfieldsnorshouldyouhavespacesinyourtablenames.Itisrecommendedthatyourenameyouroffendingtables/fieldsandadjustyourSQLstatementaccordingly.

Ifthisisnotpossibleyoushouldencloseyouroffendingtablenameswith[]marks,eg
SELECTfield1
FROM[table]
Scenario2a-SyntaxerrorinINSERTINTOstatement.
Thiscommonlyoccurswhenyourfieldnameisareservedword(seescenario1above).AdjustyourfieldnamesandSQLstatementaccordinglyandyoushouldavoidtheproblem.

Ifyoucantadjustyourfieldnamesyoucanuse[]markstodelimitthefieldnames,eg
INSERTINTOtable1
([field],[password])
VALUES(value1,value2)
Scenario2b-SyntaxerrorinUPDATEstatement.
ThishasthesamecauseasScenario2aimmediatelyabove.

Scenario3a-SyntaxError(MissingOperator)
ThisiscommonlycausedwhensomevaluethatyouaretryingtoSELECT/UPDATEetccontainsasinglequotemark.Theerrorthatyoureceivelookslike:
MicrosoftJETDatabaseEngine(0x80040e14)
Syntaxerror(missingoperator)inqueryexpressionName=OMalleys.
BecauseofthepresenceoftheinthenameOMalleysthedatabaseenginethinksthatyouareconstructingaWHEREclauselike:
WHEREname=O
anddoesntknowwhattodowiththerestofthename(Malleys).TosolvethisproblemyouneedtousetheReplace()functionandreplaceallsinglequoteswithtwosinglequotes.ItisrecommendedthatyouputtheReplace()functionaboveintoauser-definedfunctionandcallasnecessarywithinyourpage.Clickhereforanexampleofsuchafunction.

Scenario3b-SyntaxError(MissingOperator)-incorrectdelimiters
ThiserrorcanalsobecausedwhenattemptinganINSERTorUPDATESQLstatementandyouhaveusedincorrectdelimiters.

FieldType(Access)FieldType(SQLServer)Delimiter
TextChar,varChar
NumericAnynumerictype<none>
Date/TimeAnyDate/Time#(Access),(SQLServer)

UPDATEtable1
SETsomeTextField=someTextValue,
someNumericField=5
someDateField=#01/01/2000#
Scenario4-DivisionbyZero
Datesneedtobedelimitedwith#markswhenpassedtotheJetDatabaseEngine.Thismarksthemasadateliteral.Accessthentakestheliteraldateandconvertsitintoanumber.Alternatively,youcanpassanintegertoAccess,andAccesswillconstructadatebasedonthatnumber.

Howeverifyoudothis:
SELECTfield1
FROMtable1
WHEREfield1=01/01/00
Accesswilltreatthisasaninteger-namely1dividedby1dividedby0,resultinginadivisionbyzeroerror.InsteadyouneedtowriteyourSELECTqueryas:
SELECTfield1
FROMtable1
WHEREfield1=#01/01/00#

</p>缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。
飘飘悠悠 该用户已被删除
沙发
发表于 2015-1-20 09:32:07 | 只看该作者
它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
admin 该用户已被删除
板凳
发表于 2015-1-25 23:01:31 | 只看该作者
Server:这个表示的服务器,操作服务器的一些东西使用这个,如Server.Mappath转换服务器路径,Server.CreateObject实例化一个组件
愤怒的大鸟 该用户已被删除
地板
发表于 2015-1-26 22:12:53 | 只看该作者
代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
柔情似水 该用户已被删除
5#
发表于 2015-2-4 20:54:08 | 只看该作者
代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
若相依 该用户已被删除
6#
发表于 2015-2-10 09:07:17 | 只看该作者
哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的?
飘灵儿 该用户已被删除
7#
发表于 2015-3-1 06:30:07 | 只看该作者
用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
冷月葬花魂 该用户已被删除
8#
发表于 2015-3-10 12:51:22 | 只看该作者
先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习
兰色精灵 该用户已被删除
9#
发表于 2015-3-17 07:10:54 | 只看该作者
代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-23 01:27

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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