我用的C# ACCESS的字段类型是文本,然后里面里面的数据是这样的20081220 12:00:00和20081222 12:00:00这样的,
现在用2个dateTimePicker用于时间段查询,access语句该怎么写呢?

解决方案 »

  1.   

    [Date]>=#" + dateTimePicker1.Text + "#" + " and [Date]<=#" + dateTimePicker2.Text+ "#" + "
      

  2.   

    假设你这个记录时间的字段为InputTimestring sql="Select * from YourTable Where CDate(InputTime)>=#"+dateTimePicker1.Text+"# And CDate(InputTime)<=#"+dateTimePicker2.Text+"#";
      

  3.   

    汗了,这种格式是转换不了的,干脆就用字符串比较算了。。
    string sql="Select * from YourTable Where InputTime>='"+dateTimePicker1.Value.ToString("yyyyMMdd HHmmss")+"' And InputTime)<='"+dateTimePicker2.Value.ToString("yyyyMMdd HHmmss")+"'";
      

  4.   

    你存的类型不对所以就太麻烦了....如果用字符串比较的话还要转化成一样的格式才可以....因为2008-1-12和2008-01-12这样的字符串是大小不一样的.....所以对从数据库里的和外面的变量都要做转化比如楼上的.ToString("yyyyMMdd HHmmss")楼主现在知道不用日期类型有多烦了吧.....
      

  5.   

    可以在C#中使用String.Format()重載實現
    String sql=String.Format("SELECT * FROM YourTable WHERE InputTime BETWEEN {0} AND {1}", dateTimePicker1.Value, dateTimePicker2.Value) ;
    不妨一試.