vba - 为什么我的 SQL 查询在应该返回的时候没有返回任何记录?
问题描述
我有一个带有一堆 where 子句的选择查询。我测试了几种情况,它们效果很好!但是测试了另一种情况,它没有返回任何应该返回的东西。
在访问中,我使用了“创建查询”功能,我输入了所有相同的值,它返回了 4 条记录,这是预期的!那么,为什么我的查询找不到这些记录?
Set rstV = cdb.OpenRecordset("SELECT * FROM " & tableVName & " WHERE ValveSize IN (" & mVSize & "," & mLineSize & ") AND ValveFamily = '" & confgType & _
"' AND CV >= " & mCV & " AND NO = 'X'")
当我删除 NO = 'X' 时,它会找到一堆记录(包括我正在寻找的那些),但我需要 NO='X' 以便我可以专门找到这 4 条记录。
我有一种感觉,“X”可能会以某种方式导致问题,但它在其他情况下也有效。我尝试查看列字段属性,一切看起来都很好......
请帮忙!
解决方案
据我记得,YES 和 NO 可能是值,因此请尝试在 NO 周围使用括号:
[NO] = 'X'
推荐阅读
- machine-learning - 多层神经网络错误
- c# - 如何在c#中停止调用父方法的执行?
- python - 从 TensorFlow 2.x 降级到 1.15
- python - 我正在寻找一个不使用循环将整数 X 映射到 0.X 的函数
- ios - 如何在 SwiftUI 中制作屏幕高度一半的图像?
- dictionary - Kotlin可变映射中的增量元素
- nginx - 使用 nginx 从另一台服务器设置 Web 服务器复制响应
- python - ANSI 转义颜色代码在 Python 终端中不起作用
- javascript - 为什么我不能使用填充访问 mongoose 对象的子字段?
- c++ - C++ 读取内存失败