Vb.net UpdateAll方法相关的表问题.net

Vb.net UpdateAll方法相关的表问题.net,vb.net,visual-studio-2010,tableadapter,Vb.net,Visual Studio 2010,Tableadapter,我正在尝试使用表适配器管理器中的方法updateAll。当我试图更新作为子表存储在另一个表中的任何记录时,updateAll抛出一个异常,告诉我“无法删除或更改,因为表“竞争”包含相关记录”。 这个方法不应该处理所有的表关系吗 以下是我正在保存的代码: Public Sub saveAll(ByVal dataSet As SudokuDataSet) Try Dim tbAdapterManager As New SudokuDataSetTableAdapters.TableAd

我正在尝试使用表适配器管理器中的方法
updateAll
。当我试图更新作为子表存储在另一个表中的任何记录时,
updateAll
抛出一个异常,告诉我“无法删除或更改,因为表“竞争”包含相关记录”。 这个方法不应该处理所有的表关系吗

以下是我正在保存的代码:

Public Sub saveAll(ByVal dataSet As SudokuDataSet)
  Try
    Dim tbAdapterManager As New SudokuDataSetTableAdapters.TableAdapterManager

    tbAdapterManager.CompetitorTableAdapter = competitorTableAdapter
    tbAdapterManager.PuzzleTableAdapter = puzzleTableAdapter
    tbAdapterManager.CompetitionTableAdapter = competitionTableAdapter

    tbAdapterManager.UpdateAll(dataSet)
  Catch ex As Exception
    MessageBox.Show(ex.Message, "Saving Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
  End Try
End Sub
无法删除或更改记录,因为表包含 相关记录。(错误3200)

您试图执行的操作 将违反相关表的引用完整性规则。 例如,如果尝试删除或更改记录,则会发生此错误 在一对多关系中的“一”表中 “多”表中的相关记录

如果要删除或更改记录,请先删除相关记录 “多”表中的记录


从。

我发现这个方法很有效。问题是在数据库中,我必须配置表之间的关系,并将它们设置为级联


i、 e.在关系中启用“级联更新相关字段”和“级联删除相关字段”

@Camus:
UpdateAll
负责数据库层。如果您设法提供了无效数据,那么您有责任修复它。