我正在使用C#在Visual Studio 2008中使用基于Windows窗体的应用程序,并将Access数据库作为后端。我通过转到Data->Add New Data Source
将Access数据库添加到项目中,并且我能够完全从数据库定制的DataSet
中检索数据。
我的下一个目标是将新数据保存回Access数据库,创建一个新行。然而,对于我的生活,我似乎无法弄清楚如何做到这一点。看起来我需要一个OLEDbConnection
数据库或一个TableAdapter
连接到数据库,但我似乎没有其中任何一个。当我添加新的数据源时,我认为它们是预制的或类似的东西,就像DataSet
一样,但如果是这种情况,我就无法弄清楚如何引用它们。
将数据添加回已添加到项目中的数据源的最佳方法是什么?
答案 0 :(得分:4)
您可能有一个(已配置的)TableAdapter,它位于您的(生成的)数据集的子命名空间中。
代码中的某处必须有Adapter.Fill(table)
,找到它。
复制它并将其更改为Adapter.Update(table)
以写回数据库。
不要通过添加记录的其他多种方式与您交谈,而是查看videos here
答案 1 :(得分:2)
这就是我最终解决它的方法: 我不得不创建一个新的表适配器,创建一个新的行,然后用它更新表适配器。
// Set up the table adapter and new row
MyDataSetTableAdapters.EmployeeTableAdapter adapter;
adapter = new MyDataSetTableAdapters.EmployeeTableAdapter();
MyDataSet.EmployeeDataTable table = adapter.GetData();
MyDataSet.EmployeeRow newRow;
newRow = table.NewEmployeeRow();
// Insert the values of the fields into the new row here
// Save the row
table.AddEmployeeRow(newRow);
adapter.Update(table);
感谢您的帮助!