c#从访问数据库获取双倍的形式

时间:2013-10-30 10:40:35

标签: c# visual-studio numbers double

我正在尝试获取在我的访问数据库中保存为Double的数据。我的应用程序假设将数据存储为double(Number -Data Type)并将其放在标签中供我查看。我可以通过将其重新标记为文本来实现,但它不会与double一起使用。

任何建议都会有所帮助!以下是我所拥有的,(1)是我的Double数据所在的列。

            str = "Select * from data where loc='" + loc + "'";
            cmd = new OleDbCommand(str, con);
            dr = cmd.ExecuteReader();

            if (dr.Read())
            {
                label33.Text = dr.GetDouble(1);

1 个答案:

答案 0 :(得分:2)

C#是一种打字语言,你不能给字符串变量赋一个double。这应该有效:

label33.Text = dr.GetDouble(1).ToString();

附注:不要在sql-queries中使用*。如果schmema改变,那将来会导致令人讨厌的错误。而是命名所有列。

您也可以使用GetOrdinal来获取列的索引,然后您可以使用它的名称,以减少错误:

int dataColIndex = dr.GetOrdinal("DataCol");
double dataValue = dr.GetDouble(dataColIndex);
label33.Text = dataValue.ToString();

您还应考虑为控件提供更有意义的名称;)