使用datatable.merge()更新子表外键值

时间:2014-04-09 11:37:22

标签: c# dataset

更新后的主表从数据库获取PrimaryKey列的新值时使用:

ndaMasterAdapter.Update(dtChanges); 
dtMasterTable.Merge(dtChanges);

它不会更新slave表中的ForeignKey。

更新\删除设置为级联的数据集关系属性中的规则:

.DeleteRule = global::System.Data.Rule.Cascade;
.UpdateRule = global::System.Data.Rule.Cascade;

插入命令(我使用npgsql for postgresql):

ndaMasterAdapter.InsertCommand = new Npgsql.NpgsqlCommand("insert into \"Test\".\"Master\" (master_text) values (:master_text) returning id, master_text;");
ndaMasterAdapter.InsertCommand.UpdatedRowSource = UpdateRowSource.Both;
ndaMasterAdapter.AcceptChangesDuringUpdate = false;

0 个答案:

没有答案