将数据类型varchar转换为float时出错。
问题描述:
我得到这个错误,不知道问题是什么。 我正在更新的数据库列的数据类型为float,并且在代码的cmd1.ExecuteNonQuery();
部分出现错误。 任何想法?将数据类型varchar转换为float时出错。
SqlConnection connect = new SqlConnection(ConfigurationManager.ConnectionStrings
["connectToEnterpriseAssignmentDB"].ToString());
SqlCommand cmd1 = new SqlCommand();
string currency = lstCurrency.SelectedItem.Value.ToString();
string columnCurr = lstColumnCurr.SelectedItem.Value.ToString();
float value = float.Parse(txtValue.Text);
currency = currency.Trim();
columnCurr = columnCurr.Trim();
cmd1.CommandText = "UPDATE CurrencyTbl SET " + columnCurr + " = '@Value' WHERE CurrencyName = '@Currency'";
cmd1.Parameters.Add("@Currency", SqlDbType.Char).Value = currency;
//cmd1.Parameters.Add("@Column", SqlDbType.Char).Value = columnCurr;
cmd1.Parameters.Add("@Value", SqlDbType.Float).Value = value;
cmd1.Connection = connect;
connect.Open();
cmd1.ExecuteNonQuery();
connect.Close();
答
删除单引号。您传递的参数正确类型:
cmd1.CommandText = "UPDATE CurrencyTbl SET " + columnCurr + " = @Value WHERE CurrencyName = @Currency";
+0
,做把周围@Currency – ilans
+0
真棒报价!谢谢! –
PLZ在这里发表更多的细节你会得到一个 – ilans
已经说明这里(和其他国家)以外的,在引号HTTP不附上数值://计算器.COM /问题/ 43904032 /使用参数换未知列名称-S –