为什么我的访问组合框要么显示重复项,要么根本没有值?

时间:2018-03-20 05:40:18

标签: sql ms-access

条款:

[main checks].ID是为每个添加的行生成的自动编号

[main checks].Account是我希望组合框在

上采用唯一值的字段

当我使用组合框向导时,它就是它生成的内容:

SELECT [main checks].ID, [main checks].Account
FROM [main checks];

Combo Box Wizard

所以我尝试使用我在此处以及谷歌中找到的内容,我应该将SELECT DISTINCT添加到SQL查询作为一个选项。另一个选项是转到“行源”,然后在查询构建器中,我将“唯一值”从“否”变为“是”。我相信这会做同样的事情,因为SQL查询会自动添加SELECT DISTINCT部分。

修订后的代码如下所示:

SELECT DISTINCT [main checks].ID, [main checks].Account
FROM [main checks];

Same issue 可以看出,组合框仍然显示重复项,但无法解决问题。

我的第三次尝试是删除SQL语句的[main checks].ID部分,然后离开[main checks].Account部分。这让我组合框空白我不知道为什么。代码如下所示:

SELECT DISTINCT [main checks].Account
FROM [main checks];

Blank combo box

带有值的表格的屏幕截图: Table

以下是我的事件组合框的属性表:

enter image description here

属性表的数据选项卡:

enter image description here

格式标签:

enter image description here

1 个答案:

答案 0 :(得分:1)

将现有值用作下拉内容是一种有效的方法,例如避免拼写错误的自由文本字段。

但是你不能在那个SQL中使用ID,这会使每一行都是唯一的 使用此:

SELECT DISTINCT [main checks].Account
FROM [main checks];

并将组合框属性更改为Column count = 1,并将Column widths修改为单个值(或为空)。