Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

[5分]filter 与 recordsource的使用时机?

Handoome  发表于:2012-11-29 18:20:35  
复制

请教什么时候用 ?

Form.Filter = strSQL
Form.FilterOn = True

什么时候用
form.recordsource=strSQL

 

Top
缪炜 发表于:2012-11-29 19:32:19

得到的效果是一样的,而这两句都是成对出现的Form.Filter = strSQL ,Form.FilterOn = True



煮江品茶 发表于:2012-11-29 19:32:58

这个问题与什么时候用筷子什么时候用勺子相同,多数情况下只是习惯和偏好,少数情况下只可用其一。



煮江品茶 发表于:2012-11-29 19:42:12

如同喝汤的时候用筷子是不行的,在where子句涉及到复杂的子查询时,filter通常也难以解决问题,诸如此类情况下recordsource的作用就显现出来了。

其实不必去归纳总结Filter和recordsource异同,遇到具体问题后就知道该用什么不该用什么了。



殷小宝 发表于:2012-11-29 21:17:32
form.recordsource=strSQL一般用于窗体的加载事件中或更新事件中。Form.Filter = strSQL Form.FilterOn = True这个是一个筛选语句,前面还有许多条件,诸如:strwhere=strwhere & " AND 生日=#" & Me.生日1 & "#",最后strwhere还要减去6, strWhere = Mid(strWhere, 6),如果有煮江品茶老师的,用“True”代替前面的 strWhere,就不需要减6了。


总记录:4篇  页次:1/1 9 1 :