我有两张桌子:A和B.
表A :
Id | Number 1 | 2 2 | 5 3 | 1
表B :
Id | Name 2 | X 5 | Y 1 | Z
当我从数据库获取信息时,我填充了一个DataSet。但是,我在A.Number = B.Name上使用JOIN。因此导致:
结果:
Id | Number | Name 1 | 2 | X 2 | 5 | Y 3 | 1 | Z
我有一个显示结果的DataGridView,但只有 Id 和名称列。
有一件事困扰着我。我想在DataGridView中更改 结果 .Name 值,但我想用相应的 更新表A B .Name 值的 .Number 值。 表A 没有名称列。
所以我想得到这样的东西:
表A之前:
Id | Number 1 | 2
数字 2符合'X'名称值。
在DataGridView中为'Y'更改名称,其符合'5'数字 ...
之后的表A:
Id | Number 1 | 5
答案 0 :(得分:0)
答案 1 :(得分:0)
我认为Id
是两个表中的PK。通过在B
表格中更改“X”的名称,您可以更改与Name
= 2相关联的Id
值。如果您想更改表Id
中A
= 1的相关值,则需要将其Number
值更改为5,而不是Name
本身。
你提出的问题实际上是这样的:“如果表Number
中存在B
,我希望A
根据名称(不是唯一的)自动更改为其他名称。这对我来说很荒谬。例如,什么是值更改为不在列表中的项目?
您需要的是某种表Number
列表,其中B
的DropDown填充了表A
中的值。然后,用户将从预定义列表中选择值,并使用正确的Id
更新表{{1}}。
答案 2 :(得分:0)
我会将 Result.Name 列更改为DataGridViewComboBoxColumn
,将表B连接到它,并在将其发送回数据库之前引用组合的客户端值存储。
以下是DataGridView
DataGridViewTextBoxColumn
DataGridViewCheckBoxColumn
DataGridViewImageColumn
DataGridViewButtonColumn
DataGridViewLinkColumn
DataGridViewColumn