首页 > 解决方案 > 我想从数据库中选择浮点值并在文本框(asp.net)中显示结果?

问题描述

我想从数据库中获取浮点数据(如果存在)并在添加后在文本框(TXT_grandtotal)中显示结果

在我的代码中,它只显示数值

double price= 0;   
DataTable dt = new DataTable();

cmd.CommandText = "select total from productADD where auto_no='"+txt_autoNo.Text.Trim() + "'";
cmd.Connection = con;

SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(dt);

foreach (DataRow row in dt.Rows)
{
    float id = (Convert.ToInt32(row["total"]));
    price = id + price;
    TXT_grandtotal.Text = (Convert.ToString(price));
}

标签: c#sqlasp.net.netsql-server

解决方案


您的代码中的第一个问题是您没有使用参数化查询,其次转换不正确,请检查以下代码是否对您有帮助

double price= 0;   
DataTable dt = new DataTable();

string sql = "select total from productADD where auto_no = @auto_no";

using (SqlConnection connection = new SqlConnection(/* connection info */))
{
        SqlCommand command = new SqlCommand(commandText, connection);
        command.Parameters.Add("@auto_no", SqlDbType.Int);
        command.Parameters["@auto_no"].Value = Int32.Parse(txt_autoNo.Text.Trim());
}

SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(dt);

foreach (DataRow row in dt.Rows)
{
    float id = (Convert.ToSingle(row["total"]));
    float price = id + price;
    TXT_grandtotal.Text = Convert.ToString(price)
}

推荐阅读