1

データテーブルに新しい行を追加しようとしています。

このコードの実行中にエラーは発生しませんでしたが、テーブルでは何も起こりませんでした。

これが私のコードです:

        string table = "`DONNEE ENTRANT`";
        OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT * From " + table, _conn);
        OleDbCommandBuilder cmdBuilder = new OleDbCommandBuilder(adapter);


        DataTable dataTable = new DataTable(table);
        adapter.Fill(dataTable);
        DataRow row = dataTable.NewRow();

        row["CODE LIAISON"] = "TEST";

        dataTable.Rows.Add(row);
        dataTable.AcceptChanges();

        adapter.Update(dataTable);

私が間違っていることを考えてください(このように、oleDbでコマンドを実行できることはわかっていますが、この方法は本当に好きではありません...)。

ありがとう

4

2 に答える 2

1

あなたがしていることに基づいて、その新しい行をデータベースに入れたいようです。したがって、次の行を削除します。

dataTable.AcceptChanges();

これは を に変更しているため、 のままにRowStateUnchangedておく必要がありますAdded。さらに、それを使用できるように が定義されているadapterことを確認する必要があります。InsertStatement

于 2013-06-10T13:16:34.817 に答える
0

``の代わりに [] を使用しますが、問題を修正するための答えは @Michael Perrenoud によってすでに与えられていると思います

于 2013-06-10T13:27:10.763 に答える