指定的强制转换无效(C#,SQL)

时间:2018-10-24 11:02:14

标签: c# sql sql-server datetime

我正在尝试从SQL中读取Date和Amount_Fuel以绘制每周间隔的油耗条形图。该图应该是按周绘制Amount_Fuel。但是,我得到的是'Specified cast not从SQL SERVER 2012的Fuel_Attended表中读取具有date_time / date数据类型的Date和具有int数据类型的Amount_Fuel时发生“有效”错误。这是当前代码,突出显示了错误`

private void Load_BTN_Click(object sender, EventArgs e)
{           
    try
    {      
        string selectQuery = "Select sum(Fuel_Amount), DATEADD(week, DATEDIFF(week, '1950-01-01', Date), '1950-01-01') AS WeekNumber from Fuel_Attendend group by DATEADD(week, DATEDIFF(week, '1950-01-01', Date), '1950-01-01')";
        cmd = new SqlCommand(selectQuery, connection);

        try
        {
            connection.Open();
            dr = cmd.ExecuteReader();

            while (dr.Read())
            {
                this.chart1.Series["Date"].Points.AddXY(dr.GetDateTime(0), dr.GetInt32(1));     
            }
        }
        catch(Exception ex)
        {
            MessageBox.Show(ex.Message);
        }

        connection.Close();
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

这是表格。SQL TABLE。 这是错误消息。Error。请提供帮助。

1 个答案:

答案 0 :(得分:0)

 connection.Open();
    dr = cmd.ExecuteReader();
    while (dr.Read())
    {
        this.chart1.Series["Date"].Points.AddXY(dr.GetInt32(1), dr.GetDateTime(0));

   }