【发布时间】:2009-06-03 12:44:07
【问题描述】:
我有一个包含 3 个表的数据库。
制造商: ID、名称、说明
型号: ID、Manufact_ID、名称
订单: ID、Manufact_ID、Model_ID、数量、日期、
在 Access 中,我想为 Order 提供正常的表/数据表视图,它提供以下输出
ID Manufact.Name Model_ID(组合框) 数量 日期 1 LG W3000H-BN 10 02-01-2009 2 三星 SyncMaster 205BW 5 02-20-2009 3 三星 SyncMaster 206BW 2 03-18-2009 4 饭山 ProLite E1902S-B1 1 05-13-2009我的问题是组合框。我只想在组合框中选择当前制造商的型号列表。例如:如果选择了 SAMSUNG,则只有 SAMSUNG 型号。 我尝试将 Model_ID 列的查找行源设置为
选择型号.ID,型号.Manufact_ID,型号.名称,订单.Manufact_ID \ FROM Model, Order WHERE Order.Manufact_ID = Model.Manufact_ID这实际上是一个 Model INNER JOIN Order ON ... 给出了错误的结果。 如何在实际行的 Lookup SELECT 命令中引用 Order.Manufact_ID 的实际值?这是一个我无法字符串化的变量值。
谢谢!
施特劳斯
【问题讨论】:
-
如果您坚持使用数据表,则必须使用表格。你不能在一个普通的表格数据表中做你想做的事。实际上,您不应该在表格中嵌入组合框。而在有多个记录的表单上,如果将 LimitToList 设置为 TRUE 会变得很复杂,因为当前记录的组合框列表的过滤器会导致其他记录显示空白值。
-
顺便说一句,这个问题就是为什么我不制作带有可编辑组合框的连续表单和数据表——这使得使用过滤的下拉列表验证数据变得太难了。