…
end;
ado(microsoft activex data objects),它是一组通过microsoft ole db 提供者访问数据库的com对象的集合。如我们研究一下tadoquery的first方法的实现过程:
tadoquery.first->tdataset.first->tdataset.internalfirst-> tcustomadodataset. internalfirst ->recordset15. movefirst
tadoquery从tcustomadodataset继承,而tcustomadodataset从tdataset继承,tdataset.internalfirst定义的是虚方法,而子类tcustomadodataset. internalfirst覆盖了它。tcustomadodataset. internalfirs调用接口recordset15的 movefirst方法。
不难发现,tadoquery.first最终是通过接口调用com对象实现的。
l delphi与windows 外壳