-1
我試圖插入一個有小數點位置的記錄,例如:7654.00,此列的數據類型爲numeric(10,12)
但我得到算術溢出錯誤,我知道我需要先做一個轉換,但不知道如何......在asp.net中將varchar轉換爲數據類型數值的算術溢出錯誤
我遇到問題的列是TotalCost
。
以下是我有:
string FullName = row.Cells[1].Text;
string TotalCost = row.Cells[6].ToString();
using (SqlConnection myCon = new SqlConnection(myConnStr))
{
using (SqlCommand myCmd = new SqlCommand())
{
myCmd.Connection = myCon;
myCmd.CommandType = CommandType.Text;
myCmd.CommandText = @"insert into myTable (FullName, TotalCost)
values(@FullName, @TotalCost)";
myCmd.Parameters.AddWithValue("@FullName", FullName.ToString());
myCmd.Parameters.AddWithValue("@TotalCost", TotalCost)
myCon.Open();
myCmd.ExecuteNonQuery();
myCon.Close();
}
}
如果'TotalCost'是數字,那麼就需要將其轉換爲十進制\雙,然後作爲'myCmd.Parameters.AddWithValue通過(「@ TotalCosts」) ' –
AddWithValue無法知道你傳遞了一個double如果第二個參數是一個字符串。避免它 – Steve
'NUMERIC(10,12)'是不可能的 - 這將意味着一個數字與** 10位**所有在一起,** 12其中**在小數點右側.... –