如何在数据库中插入绑定列和取消绑定列数据网格视图值

本文关键字:绑定 数据网 数据 网格 视图 取消 数据库 插入 | 更新日期: 2023-09-27 18:35:39

我正在将datagirdview列值插入数据库。数据网格视图有 4 列,第一列绑定到数据库表。我已经编写了此查询以将所有这些数据插入我的表中,但是我收到错误"无效的列名'w'"。有人帮我弄清楚。在数据库表中,我有这些列:供应商ID,项目,数量,每项目价格,总计,账单编号..我使用的查询是:

string q = @" INSERT INTO PurchaseInvo(SupplierId,Item,Quantity,PricePerItem,Total,BillNo) VALUES (" + comboBox1.Text + ", " + dataGridView1.Rows[i].Cells["Item"].Value + ", " + dataGridView1.Rows[i].Cells["Quantity"].Value + ", " + dataGridView1.Rows[i].Cells["PricePerItem"].Value + ", " + dataGridView1.Rows[i].Cells["Total"].Value + ", " + bill + ")";

如何在数据库中插入绑定列和取消绑定列数据网格视图值

string q = 
@" INSERT INTO PurchaseInvo 
         (SupplierId, Item, Quantity, PricePerItem, Total, BillNo) 
    VALUES 
         (@SupplierID, @Item, @Quantity, @PricePerItem, @Total, @Bill)";
SqlCommand cmd = new SqlCommand(q, connectionString);
cmd.Parameters.AddWithValue("@SupplierID", comboBox1.Text);
cmd.Parameters.AddWithValue("@Item", dataGridView1.Rows[i].Cells["Item"].Value);
cmd.Parameters.AddWithValue("@Qauntity", dataGridView1.Rows[i].Cells["Quantity"].Value);
cmd.Parameters.AddWithValue("@PricePerItem", dataGridView1.Rows[i].Cells["PricePerItem"].Value);
cmd.Parameters.AddWithValue("@Total", dataGridView1.Rows[i].Cells["Total"].Value);
cmd.Parameters.AddWithValue("@Bill", bill);
cmd.ExecuteNonQuery();

应始终使用 sql 命令参数。这将防止您进行 sql 注入以及此类错误。像这样编写的代码应该可以工作。