SqlDataAdapter da = new SqlDataAdapter("select [ID],[GroupName],[State],[Point],[Time] from OnOff where [Time]>@StartTime and [Time]<@EndTime", con);
Time列实际上是个float类型的列。里面的时间信息是以数字形式存在的。(详细见http://topic.csdn.net/u/20100409/13/28cfdddb-71d6-4d5d-ac4d-6a783560be26.html)我要是用上面的SQL语句写的话 gridview中只会显示数字格式的时间。怎样将其转化成普通格式的时间呢?希望高手指点 万分感激!!!

解决方案 »

  1.   

    贴一下现阶段代码            using (SqlConnection con = new SqlConnection(connnectionString))
                {
                    //SqlDataAdapterl类表示用于填充 DataSet 和更新 SQL Server 数据库的一组数据命令和一个数据库连接。
                    SqlDataAdapter da = new SqlDataAdapter("select [ID],[GroupName],[State],[Point],[Time] from OnOff where [Time]>@StartTime and [Time]<@EndTime", con);
                    DateTime dt;//DateTime—>日期和当天的时间表示
                    if (!DateTime.TryParse(dateTimePicker1.Text, out dt))
                    {
                        MessageBox.Show("开始时间格式不正确");
                        return;
                    }
                    //SqlParameter 类 —>表示 SqlCommand 的参数,也可以是它到 DataSet 列的映射。
                    da.SelectCommand.Parameters.Add(new SqlParameter("@StartTime", dt));                if (!DateTime.TryParse(dateTimePicker2.Text, out dt))
                    {
                        MessageBox.Show("结束时间格式不正确");
                        return;
                    }
                    da.SelectCommand.Parameters.Add(new SqlParameter("@EndTime", dt.AddDays(1)));//这块参数设成1了,就表示比设置的值多出一天。                DataSet ds = new DataSet();
                    da.Fill(ds, "OnOff");//将数据库中的表OnOff以SqlDataAdapter对象da的一些条件添加给数据集ds                dataGridView1.DataSource = ds.Tables["OnOff"];//DataSet.Tables—>数据集中表的集合
                }
      

  2.   

    在sql语句中能否将time列转化成datetime类型格式呢?
      

  3.   

    单独的数字格式转化成时间代码是  DateTime dt = DateTime.FromOADate(40277.50511);
    就是不知道怎样放到gridview中显示
      

  4.   

    在模板列中
    <%# DateTime.FromOADate((double)Eval("Time"))%>
      

  5.   

    是我说错了 是在datagridview中  winform的 
      

  6.   


                string sql = "select [ID],[GroupName],[State],[Point], cast([Time] as datetime) as Time  from OnOff ";实现了一个
      

  7.   

    在CellFormatting事件里写
                 object obj = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value;
                 if (obj != null)
                    e.Value =DateTime.FromOADate((double)obj);