我在当前应用程序中使用了一个非常标准的表设置 。网 XSD DataSetTableAdapter 特征。我的 contracts 表包含一些标准合同信息,其中有一列 primary department. 。本专栏是一个 外键 给我的 Departments 表,我存储基本的 department name, id, notes. 。这是我的所有设置和功能 SQL服务器.

当我使用 XSD 工具时,我可以同时将两个表拖入,它会自动检测/创建这两个表之间的外键。当我在主页上查看合同数据时,这非常有用。

但是,当我进入管理页面修改部门数据时,我通常会执行以下操作:

Dim dtDepartment As New DepartmentDataTable()
Dim taDepartment As New DepartmentTableAdapter()

taDepartment.Fill(dtDepartment)

然而,此时会抛出一个异常,大意是这里有一个外键引用被破坏,我猜测是因为我没有 Contract DataTable 填充。

我该如何解决这个问题?我知道我可以简单地从 XSD 中删除外键以使事情正常工作,但是在那里进行额外的完整性检查并使 XSD 架构与数据库中的 SQL 架构相匹配是很好的。

有帮助吗?

解决方案

您可以尝试关闭数据集上的检查约束(它在其属性中),或更改该关系的属性,并将键更改为简单引用 - 由您决定。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top