我想創建一個for循環,我想在其中編寫一個查詢,更新數據庫中每行的值。這些行存在於datagridview以及數據庫中。目標是在datagridview中進行更改,因此使用按鈕時,更改也會應用到數據庫表中。在每一行中,條碼及其數量都是不同的。如果更改是在datagridview中的所有行中進行的,因此它也將應用於使用按鈕的數據庫中,並且請參閱幫助。從datagridview更新數據庫中的值
這裏是應該在for循環被視爲查詢:
SqlCommand cmd2 = new SqlCommand("update prod_info set [email protected] where [email protected] ", con);
考慮條形碼作爲列1和item_quantity爲列2。
到目前爲止創建一個for循環我已經試過,但得到錯誤的for循環:
for (int i = 0; dataGridView2.Rows.Count; i++) //getting error here
{
SqlCommand cmd2 = new SqlCommand("update prod_info set [email protected] where [email protected] ", con);
cmd2.Parameters.AddWithValue("@barcode", dataGridView2.Rows[i].Cells[1].Value.ToString());
cmd2.Parameters.AddWithValue("@qty", dataGridView2.Rows[i].Cells[1].Value.ToString());
}
你到目前爲止嘗試過什麼?一種可能性是將DataGridView綁定到DataTable並使用[SqlCommandBuilder助手類](http://msdn.microsoft.com/zh-cn/library/tf579hcz.aspx)生成插入/選擇/更新/刪除命令,一旦綁定到UI元素,對數據庫的更改將自動進行。 – pasty
以及我想通過使用按鈕進行更改數據庫。我的意思是什麼時候一切都在datagridview中確認,然後使用按鈕更改將被作出 –
這是我已經嘗試到目前爲止的代碼,我得到錯誤的for循環: for(int i = 0; dataGridView2.Rows。 count); i ++) {SqlCommand cmd2 = new SqlCommand(「update prod_info set item_quantity = @ qty where barcode = @ barcode」,con); (「@ barcode」,dataGridView2.Rows [i] .Cells [1] .Value.ToString()); cmd2.Parameters.AddWithValue(「@ qty」,dataGridView2.Rows [i] .Cells [1] .Value.ToString()); } –