我创建了一个数据库,我可以添加名称,但我无法删除,请帮助我。
这是我的代码:
private void button2_Click(object sender, EventArgs e)
{
using (connection = new SqlConnection(connectionString))
using (SqlCommand cmds = new SqlCommand("DELETE FROM Recipe WHERE firstName = @user", connection))
{
connection.Open();
cmds.Parameters.AddWithValue("@user", cmds);
cmds.ExecuteNonQuery();
}
populateRecipe();
}
这是错误
System.ArgumentException
信息中出现System.Data.dll Additional
类型的未处理异常:从对象类型System.Data.SqlClient.SqlCommand
到已知托管提供程序本机类型不存在映射。
答案 0 :(得分:3)
而不是将cmds本身传递给AddWithValue方法:
cmds.Parameters.AddWithValue("@user", cmds);
我想你应该通过实际的uesrname:
cmds.Parameters.AddWithValue("@user", username);
答案 1 :(得分:1)
您正在传递cmds
变量作为@user
参数的值,因为它是SqlCommand
对象,因此它没有意义:
cmds.Parameters.AddWithValue("@user", cmds);
您是否打算传递要删除的用户名?
cmds.Parameters.AddWithValue("@user", "Username");