我打算在打开报告时尝试执行一些SQL。当我尝试匹配一个带整数的整数的列时,这种方法很好,但是当我尝试匹配“text”列时,它会不断弹出一个对话框,询问你想要过滤的内容。
这是一个很简单的查询:
select person_phone_numbers.person_id from person_phone_numbers where phone_number = '444-444-4444'
这实际上是我正在尝试使用的子查询,但这就是问题所在。如果我将其更改为此工作正常:
select person_phone_numbers.person_id from person_phone_numbers where phone_id = 2
我把它放在OnOpen事件中,并且我将它分配给Me.RecordSource,如果这有所不同的话。我的目标是获得一个表单接受查询参数,并让它打开一个包含结果的报告。
编辑:完整代码段:
Private Sub Report_Open(Cancel As Integer)
Me.RecordSource = "SELECT person.original_name, person.normalized_name, phone_number.full_number, phone_number.type, person.person_id " _
& "FROM phone_number INNER JOIN (person INNER JOIN person_phone_numbers ON person.person_id = person_phone_numbers.person_id) " _
& "ON phone_number.full_number = person_phone_numbers.full_number where person.person_id IN " _
& "(select person_phone_numbers.person_id from person_phone_numbers where phone_number = '444-444-4444')"
End Sub
有关为什么要求参数而不是按照我的方式运行查询的想法?
答案 0 :(得分:0)
是实际存储哈希标记的手机号码字段吗?
从您提供的代码中,我没有看到任何会导致参数提示的内容 - 请发布整个查询