2017-05-14 364 views
0

我得到這個錯誤,不知道問題是什麼。 我正在更新的數據庫列的數據類型爲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(); 
+0

PLZ在這裏發表更多的細節你會得到一個 – ilans

+0

已經說明這裏(和其他國家)以外的,在引號HTTP不附上數值://計算器.COM /問題/ 43904032 /使用參數換未知列名稱-S –

回答

1

刪除單引號。您傳遞的參數正確類型:

 cmd1.CommandText = "UPDATE CurrencyTbl SET " + columnCurr + " = @Value WHERE CurrencyName = @Currency"; 
+0

,做把周圍@Currency – ilans

+0

真棒報價!謝謝! –

相關問題