将 varchar 值 转换为数据类型为 int 的列时发生语法错误。c#

课设,sos~~
//函数定义部分
public int DeleteZcMain1(string BH)
{
return data.RunProc("delete from z_zmanage where z_ID='" + BH + "'");
}

//函数调用部分

private void 资产删除ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (dgvDataList.RowCount > 1)
{
if (MessageBox.Show("是否删除当前行数据!", "系统提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{
int i = oper.DeleteZcMain1(dgvDataList.SelectedCells[1].Value.ToString());
this.DataBindGridViewList();
}
}
}

你数据库中的 z_ID 列是 int 类型的吧?

而传入的BH参数为字符串类型,而且其值,不能转换成有效的数字
温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜