ASP常见错误详解及解决方案小结 推荐第1/2页(2)


Microsoft VBScript 编译器错误 (0x800A0401)
语句未结束
原因:语法错误。
解决:按系统所提示的行来检查。如果提示的恰好是本页的最后一行,则很有可能是if语句忘记写”end if”啦,select语句忘记写”end select”啦,总之是需要end的地方没有end,导致服务器找不到语句的结尾,只好在最后一行显示错误。

错误类型:
Microsoft JET Database Engine (0x80040E10)
至少一个参数没有被指定值。
原因:在写SQL语句的时候,我们经常会调用一些参数,很可能这些参数中有一个没有被赋值。
解决:检查每一个参数的值是否真的传递过来了,很可能有些参数其实是”",这样的参数去索引数据库当然是不行的。

错误类型:
Microsoft JET Database Engine (0x80040E37)
Microsoft Jet 数据库引擎找不到输入表或查询 ‘AA'。 确定它是否存在,以及它的名称的拼写是否正确。
原因:不存在这个表。
解决:应该是你写错了表名,或者连错了数据库?再仔细核对一下吧!

错误类型:
Microsoft VBScript 运行时错误 (0x800A000D)
类型不匹配: \'[string: ""]\”
原因:是因为你的变量的类型是字符串型的,而你却当作数字或者其他类型来使用。
解决:比如你需要数字的变量用来计算i=i+1等数学运算,那么应该在变量上使用cint(变量名),强制转换为数字型,两个变量之间作比较也一定要是相同的类型,因此也需要转换,方法同上。

错误类型:
Microsoft JET Database Engine (0x80040E07)
标准表达式中数据类型不匹配。
原因:一般也是在写SQL语句时发生了错误,即把数字型和字符串型的变量混淆了。
解决:很好办,试一试把SQL中变量加了”的去掉单引号,或者把原先认为是数字的加上”,再查看效果。

错误类型:
Microsoft VBScript 运行是错误(0x800A01A8)
缺少对象:”
原因:很有可能是你没有对rs对象进行定义。
解决:别忘了写set rs=server.CreateObject(“adodb.recordset”),这样可以定义对象;或者直接不用这种写法,直接用conn.execute(“SQL”)这样会方便得多,也不用考虑对象问题。

错误类型:
Microsoft VBScript 运行时错误 (0x800A005E)
无效使用 Null: ‘Replace'
原因:无效使用函数的情况也比较多见,包括Split等,这个道理也比较简单,就是因为你Replace的内容是空的。
解决:最好加一句IF检验一下你要replace的内容是否为空。

Microsoft VBScript 编译器错误 错误 '800a03f6′
ODBC 驱动程序不支持所需的属性。
原因:可能是因为没有sql语句里出现的字段名,一般为字段名或sql关键字书写错误。也有可能是sql所要打开的表已经被独占打开。
解决方法:检查sql语句里出现的每个字段名,和每个关键字

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/2304.html