我正在尝试在我的数据表中添加一个新行。
运行此代码时没有错误,但我的表中没有发生任何事情。
这是我的代码:
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运行命令,但实际上不喜欢这种方式......)。
由于
答案 0 :(得分:1)
根据您正在执行的操作,您希望新行最终在数据库中结束。所以删除这一行:
dataTable.AcceptChanges();
因为这会将RowState
更改为Unchanged
,您需要将其保留在Added
。此外,您需要确保adapter
已定义InsertStatement
,以便可以使用它。
答案 1 :(得分:0)
我会使用[]代替``但我相信@Michael Perrenoud已经给出了纠正问题的答案