我有查询
SELECT [Forms]![frmDataEntry]![Combo3];
我还有一个名为frmDataEntry的表单,上面有一个名为combo3的组合框。组合框有多个值,运行查询时会选择一个值。我使用宏表达式构建器在按下按钮时打开查询。
类似/同样的sql昨晚在同一个组合框中工作。我尝试用不同的形式和控件做一些事情,但没有任何东西返回结果。我也尝试了一个新的查询并再次放入sql。
答案 0 :(得分:1)
cboUserID
上的Form2
已选择47作为其绑定值。
此查询返回一个空字段:
SELECT Forms!Form2!cboUserID;
明确告诉数据库引擎我希望组合的.Value
属性为我提供一个斜杠字符(/
)作为此查询的结果:
SELECT Forms!Form2!cboUserID.Value
然而,这个查询告诉我“Long”作为组合绑定值的数据类型,这是正确的:
SELECT TypeName(Forms!Form2!cboUserID.Value)
所以我尝试了CLng()
函数通知数据库引擎我希望组合的值为Long Integer,这个查询给了我47 ...这是组合中的选定值:
SELECT CLng(Forms!Form2!cboUserID.Value);
我不知道为什么会这样;我以前从未尝试过这个。我建议你为你的组合尝试适当的数据类型转换功能。 [CLng
; CInt
; CDbl
; CStr
; CDate
;此外,我使用Access 2007进行测试,因为我没有2010年。我希望2010年的行为与你类似。