将数据视图中的行添加到sql数据库中
本文关键字:sql 数据库 添加 数据 视图 | 更新日期: 2023-09-27 18:02:22
我有一个DataGridView,我用变量填充,但是我想把每一行添加到sql数据库表。
此刻我正在尝试这个代码时,按下一个按钮,但我有点卡住我的值应该是....这是我的代码…我在正确的轨道上,即使我刚刚把代码扔在一起。
///////// Add to DataGridView Rows to Table ///////
foreach( DataGridViewRow row in dgv.Rows){
SqlCommand Insert = new SqlCommand(@"insert into TestTable(ID, FirstName, LastName) values ("dgv.Cells[1].Value.ToString(), dgv.Cells[2].Value.ToString(),dgv.Cells[3].Value.ToString());
}
你在正确的轨道上,但有一些问题。
-
您暴露于SQL注入攻击。因此,您应该使用参数化查询而不是
-
如果更改网格中列的顺序,则需要更新SQLCommand代码。相反,你应该循环遍历你的数据源,它应该有很好的属性名。
-
您需要建立一个连接并将其添加到命令中并打开和关闭它(using语句是管理连接生存期的好方法)
-
创建SQL命令并设置其连接仍然不够,您还需要使用Insert执行它。ExecuteNonQuery
-
另外,你可能应该在循环之外创建你的Command,并且只在每次迭代中设置参数,而不是每次都创建它。
帮助链接
-
如何:将数据绑定到使用DataSet和DataAdpater的Windows Forms DataGridView控件
-
如何:绑定对象到Windows窗体DataGridView控件将DataGridView绑定到对象数据源
-
如何:执行参数化查询描述了如何使用参数化查询避免SQL注入攻击。