Vb6 ADODB记录集筛选器未在Windows 7中筛选记录

Vb6 ADODB记录集筛选器未在Windows 7中筛选记录,vb6,adodb,recordset,Vb6,Adodb,Recordset,我正在使用以下代码: Public rs As New ADODB.Recordset ------------------------------------ If rs.State = 1 Then rs.Close com.ActiveConnection = con com.CommandText = "Select * from Table" On Error Resume Next rs.CursorLocation = adUseClient rs.CursorTyp

我正在使用以下代码:

Public rs As New ADODB.Recordset
------------------------------------
 If rs.State = 1 Then rs.Close
 com.ActiveConnection = con
 com.CommandText = "Select * from Table"

 On Error Resume Next
 rs.CursorLocation = adUseClient
 rs.CursorType = adOpenDynamic

 Set rs = com.Execute 
 rs.Filter = "Filterdata"  //not filtering Recordset in Win-7 
以上代码在WIN-XP中运行良好

@Remou: 假设rs包含“A”、“B”、“C”、“A”、“C”、“A”值 我只是为了获取“A”值而过滤数据。
我的代码是:
rs.Filter=“A”

您可以通过where子句在SQL查询中直接尝试使用过滤器-如果它有效,您可以放心地假设数据不是问题所在。
另外,在AFAIK中,Filter命令需要fieldname=value语法。select语句返回了多少个字段?

您是指没有引号的Filterdata吗?Filterdata的内容是什么?请尝试使用
“MyField=3”
而不是
“Filterdata”
。仅供参考,使用
adUseClient
作为游标位置总是会导致记录集类型的
adOpenStatic
,并且它使用仅向前的“firehose”游标从服务器获取它。