[英]iis7, classic asp; type mismatch error
我已经在Windows 7和IIS 7上安装了本地服务器,用于我正在处理的经典ASP VBS网站。
一页显示“类型不匹配”错误。 原始服务器(Windows 2008,IIS 7)不会发生这种情况
相关代码:
if myRS("age") = 10 then
现在,我知道代码编写得很糟糕。 但是本地服务器如何发出这样的错误而公共服务器却没有呢? 我认为比较是通过变体类型进行的,因此应该自动评估子类型而没有错误?
这很可能是由“ ..固有属性..”问题引起的。 我的猜测是您的生产服务器已经被“修复”以允许它,而您的本地服务器设置从未经历过“ ..fix ..”的需要。
你可以在这里阅读更多:
您已经使用CreateObject
创建了记录集/ ado对象,并且受到这种担忧的影响,该担忧导致Microsoft将它们默认设置为即开即用。
在这里阅读更多内容:
http://support.microsoft.com/default.aspx?scid=kb;EN-US;287422
虽然..如果您只是想让它工作,那么您可以阅读第一个链接。
可能是不同的数据源或驱动程序,因此看起来相同的数据略有不同。
例如,它是一个空字符串,一个空白字符串还是null。
尝试重写,以便您可以记录myRS(“ age”)的值。
我不知道您可以用来解决Nonym提到的服务器配置。 我的建议是只更新代码以显式调用所需的属性,而不是让其推断出来。 例如,
更改此:
if myRS("age") = 10 then
变成这个:
if myRS("age").Value = 10 then
如果我没记错的话,这还可以带来其他好处,尽管目前尚无具体示例说明为什么。 祝你好运!
似乎是ADO记录集问题。 尝试输出myRS(“ age”)值,如果没有返回任何值或错误,则尝试更改连接字符串中的sql驱动程序,甚至可能使用CStr(myRS(“ age”))= CStr(10)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.