读书人

大家来看看SQL查询类型不匹配有关问

发布时间: 2012-02-12 17:16:33 作者: rapoo

大家来看看,SQL查询类型不匹配问题
在ASP页面里,我已经查询得到记录rs1("total") (为总分成绩)
Dim n
n=rs1("total")

response.write"总分:"&n&" <br>"

可以在页面上看到输出为‘总分:90’。接着,我再次查询得到记录rs2 ,我想将rs2("total")与 n 比较,看是否相等。但出错。代码如下:
Do While Not rs2.eof
If rs2("total")=n Then
num=num+1
Else
Exit do
End If
rs2.moveNext
Loop

出错如下:
总分:90

Microsoft VBScript 运行时错误 '800a000d'

类型不匹配

\all\all\check.asp, line 699

补充说明:rs2记录有100条,rs2("total")也是成绩。


[解决办法]
类型不对 是否有空值
[解决办法]
都转换为字符比较看看

If cstr(rs2("total"))=cstr(n) Then
num=num+1
Else


[解决办法]
n=rs1("total") ,你的rs1()是个自定义函数吧,你的这个自定函数是用来取得记录集的,而记录集是一个对象,我看不到你的全部代码,我想这个错误是一个对象和一个标量比较而造成的
[解决办法]
如果是字符串比较的话 最好用下trim()把前后空格去掉

读书人网 >vbScript

热点推荐