c#数据库报错问题大家帮我看看吧

c#数据库报错

{

        string strid2 = Convert.ToString(dataGridView1.CurrentCell.RowIndex);
        string sql = string.Format(@"update Customer set CustomerCompanyName='{0}',CustomerName='{1}',CustomerTitle='{2}',CustomerAddress='{3}',CustomerPostalcode='{4}',CustomerIphone='{5}',telephone={6},where CustomerID ='{7}'"
                                 , value[1], value[2], value[3], value[4], value[5], value[6], Convert.ToInt32(value[7]), strid2);
        int n = DBHelper.ExecuteNonQuery(sql);
        if (n > 0)
        {
            MessageBox.Show("修改成功");
        }
        else
        {
            MessageBox.Show("修改失败");
        }

img

img


实在看不出来 大家可以帮我看看吗

img

电话号码用int类型肯定是个错误的选择,转成varchar类型

你这个问题的表象就是 value[7] 不能转化成数字,value[7]的值可能是“abc”,“123-456” 这种,具有非数字字符
深究的话,还是 telphone 不要用int,用varchar是比较合适的

看下value[7] 的值可能不是数字