私は TableAdapters を使用するのが初めてで、何が起こっているのかわかりません。基本的に、生成されたデータセットを使用して、あるデータベースから別のスキーマを持つ別のデータベースにデータをエクスポートしようとしています。コードをステップ実行すると、ターゲット データベースの行に値を入力するという点で、すべてが正常に機能しているように見えます。ただし、ターゲット データベースに行を追加しようとすると、行が挿入されないようです。何かアイデアはありますか?プロジェクトに追加されたデータベースを出力ディレクトリにコピーしないように設定しました...そのため、Webで見た提案は機能していないようです。
OleDbConnection oleDbConnection = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Database\database.mdb;");
SomeTableAdapter tableAdapter = new SomeTableAdapter();
tableAdapter.Connection = oleDbConnection;
tableAdapter.Connection.Open();
SomeDataSet.SomeDataTable dataTable = tableAdapter.GetData();
SomeDataSet.SomeDataRow dataRow = null;
// Do some checks on the existing rows
// Creation of new row is necessary
if (dataRow == null)
dataRow = dataTable.NewSomeRow();
// Populate row fields
dataTable.AddSomeRow(dataRow);
dataTable.AcceptChanges();
}
else
{
// Update exiting row
}
tableAdapter.Update(dataTable);
tableAdapter.Connection.Close();