在一个列中,我要查询带有字符串1的记录并将其添加到combo1控件中,还有在同一记录中要查询两个字符串字符串1和字符串2,并且他们们的距离为90为条件查询,代码怎么写?
求代码
追答你的描述不明确,只能写个大概(假设adodc和combo是非绑定的,数据库连接已经完成):
为了代码的简洁,定义一个记录集对象引用
dim rs as ADO.Recordset
adodc1.recordsource = “select F1,F2 from T1 where F1='” & Text1.Text & "'"
adodc1.requery
set rs = adodc1.recordset
combo1.clear
do while not rs.EOF
combo1.additem rs(0)
rs.movenext
loop
“在同一记录中要查询两个字符串字符串1和字符串2,并且他们们的距离为90为条件”描述模糊,咩看懂。
比如“书山有路勤为径”这句话“书”与“径”的距离为5,我要同时查询“书”与“径”使它们的距离限制在90范围内
追答假设:要查找的字段为F1,匹配的字符串为S1,S2,完整的条件是这样的:
查找F1包含S1和S2,并且S1,S2在F1里的位置差小于90的所有记录?
这个条件有点怪异,你是不是转换下思路,比如数据库的设计思路?
这种查找比较复杂,要用查询过程,不过你也可以先设置部分条件,然后用VB代码来过滤数据:
‘获取字段F1包含S1和S2的所有记录
adodc1.recordsource = “select F1,F2 from T1 where F1 Like '*” & S1 & "*' and F1 like '*” & S1 & "*'
adodc1.requery
set rs = adodc1.recordset
’查找位置差
do until rs.eof
if Instr(1,rs("F1"),S2)-Instr(1,rs("F1"),S1) < 90 then ...
rs.movenext
loop