一个奇怪的错误,大家要当心呀(花了我大半天的时间)!

错误

在ASP有用Dim预先定义变量是非常好的习惯,可我碰到这样的问题:
用存储过程取出一个结果集,其中一个字段为smallDate类型,缺省值为Null,这里为'2001-4-4',做如下判断:
...
<Table>
...
</Table>
<%
IF Not IsNull(oRs("E_DT")) Then
%>
  <Table>
  ...
  </Table>
<%
End IF
%>
可显示出来的日期却是1899-12-30
在判断前加上 Response.Write oRs("E_DT")居然为空。
后来改为:
<%
Dim strBack
IF IsNull(oRs("E_DT")) Then
    strBack = "0"
Else
    strBack = "1"
End IF
%>
...
<Table>
...
</Table>
<%
IF strBack = "1" Then
%>
  <Table>
  ...
  </Table>
<%
End IF
%>
就正确了,在判断前加上 Response.Write oRs("E_DT")也显示正常了。
真是怪事,看来用Dim时要当心些,宁愿多加几个变量上去。

时间: 2024-09-19 18:18:04

一个奇怪的错误,大家要当心呀(花了我大半天的时间)!的相关文章

线程-sql 找错,一个很奇怪的错误

问题描述 sql 找错,一个很奇怪的错误 sql = "UPDATE bs2_dl_road_min SET count=count+{0} WHERE time='{1}' " "AND host_ip='{2}' AND module='{3}' AND method='{4}' AND status='{5}' " "AND size_level='{6}' AND level='{7}' AND submodule_road='{8}'"

javaweb-jsp页面从数据库捞数据,报了一个好奇怪的错误

问题描述 jsp页面从数据库捞数据,报了一个好奇怪的错误 查询jsp: <%@ page contentType=""text/html; charset=gb2312"" %> Book Query 输入用户名: display页面: 1<%@ page language=""java"" contentType=""text/html; charset=utf-8""

c语言-以下异或加密代码提示一个奇怪的问题,数字上的错误后缀

问题描述 以下异或加密代码提示一个奇怪的问题,数字上的错误后缀 void EncryptXOR (long s[8]) { char key[4] = { 'mque' }; int a[4],b[4]; for (int i= 0; i<= 3; i++) { a[i] = int(s[2i+1] * 16 + s[2i]); } for (int j = 0; j <= 3; j++) { b[j] = a[3-j] ^int( key[j]); printf("%c"

调试-QT遇到了奇怪的错误,网上的方法都不行

问题描述 QT遇到了奇怪的错误,网上的方法都不行 #include "mainwindow.h" #include <QApplication> #include <QtGui> #include<QtWidgets> class notepad:public QWidget { Q_OBJECT public: notepad(QWidget * parent = 0, Qt::WindowFlags f = 0);//g QTextEdit *q

我遇到一个奇怪的问题,php代码里面凡是含有//这样的注释,include 失败

问题描述 我遇到一个奇怪的问题,php代码里面凡是含有//这样的注释,include 失败 我遇到一个奇怪的问题,php代码里面凡是含有//这样的注释,就无法include 我是二次开发的,服务器上面原来的程序带//注释的就没有问题 但是我从服务器上面下载的代码到本地,所有的程序,导入eclipse后,每一行下面都会带一个空行 后来我把//的注释换成/*** /这样的就好了 下面是我贴出来的phpinfo信息,望大神指导 PHP Version 5.5.25 System Linux iZ238

ios-遇到了一个奇怪的问题

问题描述 遇到了一个奇怪的问题 今天我改了几处代码,在界面上屏蔽删除了一些东西,在模拟器上运行没问题,但是部署到真机上后,竟然是没改代码前的效果,那些删掉的屏蔽掉的东西竟然还在.这是怎么回事? 试了好几次都这样,把真机上的app删掉重装还是这样. 解决方案 好奇怪,试试clean一下 解决方案二: 把你开发机器上的生成文件都删除了,重新生成,再部署. 解决方案三: 在分析相关参数对性能影响的时候,遇到个奇怪的问题.在效果全开的情况下:1.?????? 单独关闭Caustics效果2.??????

c++ widnows-GetQueuedCompletionStatus函数奇怪的错误?

问题描述 GetQueuedCompletionStatus函数奇怪的错误? 本人在UDP的客户端对socket使用了完成端口,在工作线程中,GetQueuedCompletionStatus返回0,GetLastError错误码为0x36E: $errhr 0x000003e6 内存位置访问无效.,这是什么问题呢?

一个奇怪的问题使用ajax提交必须alert才能赋值

 在使用ajax提交的时候将返回值赋给一个变量,无论怎么写都没法赋值,刚开始怀疑js有错但是ie没有反应过来,多次清缓存.部程序都没效果 一个奇怪的问题,在使用ajax提交的时候将返回值赋给一个变量,无论怎么写都没法赋值,刚开始怀疑js有错但是ie没有反应过来,多次清缓存.部程序都没效果......最后只好一行一行的alert看原因出在哪里:奇怪的是加上了alert之后就可以赋值,删掉alert后就又不可以了.百度了一下发现是因为ajax默认是异步执行的,也就是并没有等待请求完毕就开始执行下一行

mysql遇到一个奇怪问题

问题描述 mysql遇到一个奇怪问题 mysql的 select可以 但是insert 整个数据库的表都不行 后来重启了 就可以了 但是还是想不明白什么问题 求大神帮忙分析下 解决方案 你的insert语句是怎么样的,直接用my SQL的命令语句还是用客户端执行的呢? 解决方案二: 原因多多,贴出代码更好些 解决方案三: 可能是你对这张表执行操作,没执行完,所以这张表是被锁上了,也就是只读,然后你停止了服务,没执行完的操作就中断了,你再插入就成功了!也可能是其他原因,这个就要依情况而论了! 解决