c#生手一个,做了一个小项目,其中一个功能是周期性的采集下级装置的模拟量,放入到一个表中(数据曲线表),同时把采集时刻的时间也放入该表中,只有两个字段:时间 ,数据。最后根据时间点和对应的数据绘制一条曲线。我是这样处理的,把时间(比如:2009年1月4日10时8分48秒,用了一个DateTimePicker)转换成字符串保存到表的“时间”字段中,再设计表的时候我把该字段设计成文本型,同时把相应采集到的值保存到表的“数据”字段中。上述工作已经完成,运行程序,也看到了表中的时间和数据。
 接下来我要把表中的时间和数据保存到ArrayList 变量中,然后再画曲线。我要把表中符合条件的数据select到ArrayList中,因为我要的是一天的数据,所以我的条件就是 时间字段的年月日部分等于当前用户点击DateTimePicker后对应的年月日,但折腾了半天,总是不成功,我把大概的代码贴一下,忘高人指点,再此先谢过了。string selectstr = string.Format("SELECT  时间,数据 FROM 数据曲线表",query_date.Value.Year,query_date.Value.Month,query_date.Value.Day);

string selection = "";
selection = selection + string.Format("WHERE 时间='{0:D4}年{1:D2}月{2:D2}日'" 
,query_date.Value.Year.ToString()
,query_date.Value.Month.ToString()
,query_date.Value.Day.ToString()
);
selectstr += selection; oleDbQueryCommand3.CommandText = selectstr;
                        System.Data.OleDb.OleDbDataReader  reader = oleDbInsertCommand3.ExecuteReader();
                        while (reader.Read())


-------------

解决方案 »

  1.   

    string selectstr = string.Format("SELECT  时间,数据 FROM 数据曲线表",query_date.Value.Year,query_date.Value.Month,query_date.Value.Day); 没有大括号括起来的参数啊?{}
      

  2.   

    string selectstr = String.Format("SELECT  时间,数据 FROM 数据曲线表 WHERE 时间='{0:D4}年{1:D2}月{2:D2}日'",query_date.Value.Year.ToString()
    ,query_date.Value.Month.ToString()
    ,query_date.Value.Day.ToString());
    oleDbQueryCommand3.CommandText = selectstr; 
      

  3.   

    string selectstr = string.Format("SELECT  时间,数据 FROM 数据曲线表",query_date.Value.Year,query_date.Value.Month,query_date.Value.Day); 很明显这里有问题数据曲线表后面一大堆东西是什么东西啊
      

  4.   

    selection = selection + string.Format("WHERE 时间=#{0:D4}年{1:D2}月{2:D2}日#"//这里错误,Access的时间值定界符是#...要使用一种数据库你必须得先了解它...
      

  5.   

    string selectstr = string.Format("SELECT  时间,数据 FROM 数据曲线表",query_date.Value.Year,query_date.Value.Month,query_date.Value.Day); 
    --------
    这句也不对...你的占位符跑到哪里去了...
      

  6.   

    SELECT  时间,数据 FROM 数据曲线 where year(cast(时间 as datetime))='{0}'
    and month(cast(时间 as datetime))='{1}'
    and day(cast(时间 as datetime))='{2}'