1

データ情報を含むデータテーブルがあり、挿入クエリを使用して Microsoft Access のテーブルに配置したいと考えています。誰でも私がそれをするのを手伝ってくれますか?

foreach ( DataRow row in table.Rows)
{
    insertCommand.CommandText = "INSERT INTO [tableName] VALUES (row[a], row[b], row[c])";
    insertCommand.ExecuteNonQuery();
}
4

1 に答える 1

1

コマンド ビルダーを使用できます。コマンドビルダーがコマンドを決定します。

データ アダプターには、必要に応じて呼び出すことができるさまざまな種類のコマンドがすべて必要です。コマンド ビルダーに SELECT コマンドを提供することで、UPDATE、DELETE、INSERT コマンドが決定されます。

データベースを更新しようとすると、DataTable オブジェクトがアダプタに渡されます。

using (OleDbConnection con = new OleDbConnection("YourConnectionString"))
{
    var adapter = new OleDbDataAdapter();
    adapter.SelectCommand = new OleDbCommand("SELECT * FROM [YourAccessTable]", con);

    var cbr = new OleDbCommandBuilder(adapter);

    cbr.GetDeleteCommand();
    cbr.GetInsertCommand();
    cbr.GetUpdateCommand();

    try
    {
        con.Open();
        adapter.Update(YourDataTable);
    }
    catch (OleDbException ex)
    {
        MessageBox.Show(ex.Message, "OledbException Error");
    }
    catch (Exception x)
    {
        MessageBox.Show(x.Message, "Exception Error");
    }
}
于 2013-02-25T09:19:25.223 に答える