ms-access - 在 Access 中显示由重复项连接的数据
问题描述
如果我的标题没有意义,我很抱歉,我正在学习 Access 并且我没有所有的词汇。我会尝试解释,但我认为我拥有的图片会更好。我试图证明两件设备是通过相同的导管/电线连接的(参见绘制的图片)。绘制“连接” 我需要能够:
同时输入两件设备和管道(从已连接的已填充表的组合框中)例如。[装备99]-[导管1002]-[装备100] 我有什么, 我想要什么
创建一个显示所有设备及其连接设备的查询。
创建一个报告,显示所有设备、其信息以及连接的设备及其信息。
问题:
- 创建 to/from 字段不允许同时显示所有设备。例如,我只能在报告中显示 to 而不是 from。
如果需要,我不怕使用代码。我知道我展示了 excel 中的图片,但这是我能想到的展示我想要的东西的最佳方式。这是我的表格,只有带圆圈的表格是相关的。
- 资产=设备。
- JT =接线表
- 我知道需要从字段和表格中删除空格……说来话长。
解决方案
我只会回答第一个问题。我们这里有一个多对多关系的自加入类型。 http://allenbrowne.com/ser-06.html 连接关系后,通过选择联结表并点击功能区上的表单来启动表单。然后将 3 个未绑定的组合框(无数据源)和一个按钮添加到表单标题。像往常一样美化表格,直到你得到类似的东西:
通常将未绑定的组合框行源设置为适当的表,然后将组合框绑定列设置为键列并通过将键列的宽度设置为0来隐藏键列。然后将插入代码放入按钮单击事件中:
Private Sub cmdAddConnection_Click()
Dim db As Database
Set db = CurrentDb
Dim sqlString As String
sqlString = "INSERT INTO AssetConduitConnections(AssetAfk, AssetBfk, Conduitfk) VALUES(" & _
cmbAssetA & ", " & cmbAssetB & ", " & cmbConduit & ")"
'Debug.Print sqlString
db.Execute (sqlString)
Me.Requery 'show data changes on form
'Debug.Print Me.Name
db.Close
Set db = Nothing
End Sub
经过一些额外的美化,比如用绑定的组合框替换细节部分中的绑定文本框后,我使用未绑定的组合框和按钮输入了一些数据。下一步可能是打开报告按钮。