C# 如何从gridview向数据库添加信息?
我一直在尝试从Windows窗体(Gridview)向数据库添加新信息。这是我想出的方法(但不起作用): 这就是所谓的事件:C# 如何从gridview向数据库添加信息?,c#,database,gridview,C#,Database,Gridview,我一直在尝试从Windows窗体(Gridview)向数据库添加新信息。这是我想出的方法(但不起作用): 这就是所谓的事件: private void btAgregarNuevo_Click(object sender, EventArgs e) { agregarProducto(tbId_Prod.Text, tb_Id_proveedor.Text, tbId_categoria.Text, tbCantidad.Text, tbPrecioActual.Text, tbCod_
private void btAgregarNuevo_Click(object sender, EventArgs e)
{
agregarProducto(tbId_Prod.Text, tb_Id_proveedor.Text, tbId_categoria.Text, tbCantidad.Text, tbPrecioActual.Text, tbCod_barras.Text);
}
我遗漏了什么吗?您还没有执行sql。打开连接后执行此操作
cmd.ExecuteNoneQuery();
好的,它现在插入了,但是它在字段中显示0。我在MySQL上做了一个查询,它运行良好。我猜是转换还是方法。@GJenyRamirez。您正在将字符串类型传递给创建和执行查询的方法。应该让此方法接受正确的类型(可能是int或long),并在单击事件中进行适当的转换。例如,
int.Parse(tbId\u Prod.Text)
好的,它现在确实插入了,但是它在字段中显示0。我在MySQL上做了一个查询,它运行得很好,我猜是转换还是方法。
cmd.ExecuteNoneQuery();
private void agregarProducto(string id_producto, string id_proveedor, string id_categoria, string cantidad, string precio_actual, string codigo_barras)
{
MySqlCommand cmd = new MySqlCommand();
using (cmd = cn.CreateCommand())
{
cmd.CommandText = "INSERT INTO productos(id_producto, id_proveedor, id_categoria, cantidad, precio_actual, codigo_barras) VALUES (@id_producto, @id_proveedor, @id_categoria, @cantidad, @precio_actual, @codigo_barras)";
cmd.CommandType = CommandType.Text;
cmd.Parameters.AddWithValue("@id_producto", tbId_Prod);
cmd.Parameters.AddWithValue("@id_categoria", tbId_categoria);
cmd.Parameters.AddWithValue("@id_proveedor", tb_Id_proveedor);
cmd.Parameters.AddWithValue("@cantidad", tbCantidad);
cmd.Parameters.AddWithValue("@precio_actual", tbPrecioActual);
cmd.Parameters.AddWithValue("@codigo_barras", tbCod_barras);
cn.Open();
cmd.ExecuteNoneQuery();//This is the line you are missing
cn.Close();
}
}