【发布时间】:2018-02-26 21:23:07
【问题描述】:
我正在尝试读取包含整数和浮点值的 sql 数据库表。我在读取浮点值时遇到问题。我试图解析,但我得到了错误。以下是我的代码:
private void PopulateFields()
{
using (SqlConnection con = new SqlConnection(@"Data Source = *** ; Initial Catalog = abc123; Persist Security Info = True; User ID = xyz12; Password = xyz12"))
{
DataTable dt = new DataTable();
con.Open();
SqlDataReader myReader = null;
SqlCommand cmd = new SqlCommand("SELECT Machine_name, turn_right, turn_left, total, End_time_sec FROM Machine_status", con);
myReader = cmd.ExecuteReader();
while (myReader.Read())
{
string MachineName = myReader["Machine_name"].ToString();
float Total = float.Parse(myReader["Total"].ToString());
float TurnRight = float.Parse(myReader["Turn_right"].ToString());
float TurnLeft = float.Parse(myReader["Turn_left"].ToString());
float Total_1= float.Parse(myReader["Turn_right + Turn_left"].ToString());
TextBox1.Text = (myReader["End_time_sec"].ToString());
Chart1.Series.Add("Series1");
Chart1.Series["Series1"].ChartType = SeriesChartType.Column;
Chart1.Series["Series1"].Points.AddXY(MachineName,Total_1);
Chart1.Series["Series2"].Points.AddXY(MachineName, Total-Total_1);
}
con.Close();
}
}
我正在尝试在 X 轴上使用 machineName 和在 Y 轴上代表 Total、Total_1 的进度图表。 Total_1 显示已完成的工作。
详情:
Machine_name = abc ;
turn_right = 2.5;
turn_left = 3.2 ;
total = 9;
Total_1 = 5.7
请帮忙!!
【问题讨论】:
-
您的
reader变量来自哪里?我看到了myReader的声明,但没有看到reader的声明。您是否还尝试查看没有任何.ToString()和float.Parse的myReader["Total"]得到了什么?最后但并非最不重要的一点是,您写了一个您遇到的错误,所以您可以将它复制/粘贴到您的问题中吗? -
对不起“读者”。我已经改了。