我有一个带有dataGridView的表单来显示表Attendance的内容
TagID SessionID ScanningTime
---------------------------------------
4820427 Test1 14/08/2013 18:12
我想手动向表中添加一条记录,看起来像这样....
TagID SessionID ScanningTime
---------------------------------------
4820000 Test1 14/08/2013 18:12
0000001 Test2 15/08/2012 17:00
...并在单击按钮后保存对SQL Server数据库的更改。
我尝试过创建UPDATE查询:
command.Text = "UPDATE Attendance
SET TagID= @tagNo, SessionID= @sessionNo, ScanningTime= @scantime";
但我不知道如何将DGV的值分配给参数。
将更改从dataGridView保存到SQL Server数据库的正确方法是什么?
请注意,使用DGV时我不使用DataSet或TableAdapter。
答案 0 :(得分:0)
您将要使用RowsAdded
的{{1}}方法并将必要信息缓存到DataGridView
数据:
INSERT
然后当您准备好将数据提交到数据库时:
// new form field for caching
private List<DataGridViewRow> _addedRowsCache = new List<DataGridViewRow>();
private void dataGridView1_RowsAdded(object sender,
DataGridViewRowsAddedEventArgs e)
{
for (int i = e.RowIndex; i < e.RowIndex + e.RowCount; i++)
{
_addedRowsCache.Add(dataGridView.Rows[i]);
}
}