'select * from table '+'weather_day = '''+date1.text+''' 

解决方案 »

  1.   

    因为日期型的字段如不经处理一般存储的值是YYYY-MM-DD HH:NN:SS
    你直接使用“=”号那么除非年,月,日,小时,分,秒都相等否则数据库便认为不相等
    你应该使用'BETWEEN .. AND'来进行日期的比较如:
    SELECT * FROM SYSOBJECTS WHERE CRDATE BETWEEN ‘2001-06-26 00:00:01’
    AND ‘2001-06-26 11:11:59’
      

  2.   

    to yellowbb:weather_day是日期型数据啊,不能与字符串进行操作啊?!
      

  3.   

    OH 语句的单引号及冒号字符非法,改成ASCII的即可
      

  4.   

      msDat:='01-05-03';
      query1.add('select * from table1 where dat='+''''+msDat+'''');
      

  5.   

    weather_day=weather_day 
    肯定没意义
    他就是两个自端相等;肯定为true吗
    'select weather_day,weather from tab_weather where weather_day='''+weather_day1 +''''
    weather_day1 由程序传入有意义在sqlserver中用单引号把日期括来
    'select * from tab_weather where weather_day=''01-2-1'''
    access 用#
    'select * from tab_weather where weather_day=#01-2-1#'
    PARADOX 用双引号
    'select * from tab_weather where weather_day="01-2-1"' 
      

  6.   

    各位大哥, 我已经解决了这个问题,谢谢了!可惜小弟穷啊大家得到一点分意思意思啦!
    对了,如果哪位大哥,对于编写FTP程序熟的,请到http://www.csdn.net/expert/topic/179/179441.shtm
    帮小弟一下吧!