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("修改失败");
}
电话号码用int类型肯定是个错误的选择,转成varchar类型
你这个问题的表象就是 value[7] 不能转化成数字,value[7]的值可能是“abc”,“123-456” 这种,具有非数字字符
深究的话,还是 telphone 不要用int,用varchar是比较合适的
看下value[7] 的值可能不是数字