在 Visual Studio 设计器中,我创建了一个包含 2 个数据表的数据集;EmployeeDT并PayrollSheetDT通过 SELECT 语句从 SQL Server 中提取数据。SSN这两个数据表通过列有关系。
相关SQL Server数据库结构:
- 表:
Employee,列:(SSN主键),Driver - 表:
PayrollSheet,列:(SSN外键),PSDate
在我的 PayrollSheet 表单中,我有多个组合框,其中绑定了DataSourceDisplayMember和DataTable。当我启动程序时,我成功地单击了“驱动程序”组合框中的向下箭头,选择了一个驱动程序名称,并让其他组合框显示来自该驱动程序/SQL 记录的信息——因为它们绑定到同一个数据源。ValueMemberEmployeeDT
我在组合框旁边还有一个列表框,目的是显示在组合框中选择PSDate的任何SSN内容。
列表框是我的问题。我需要能够更改任何组合框中的值,并将 PSDate 显示在列表框中。我不知道这是否可以做到,因为PayrollSheetDTDataTable 执行静态 SQL 查询,但我想要的是相当于添加一个WHERE SSN = <selected ssn in other datatable>
我不太了解如何执行此操作,但如果我尝试填写 ,则会TableAdapter收到以下错误:
一行或多行包含违反非空、唯一或外键约束的值。
谢谢你的帮助