使用ado连Access数据库,用Locate方法有一个问题,有人遇到过吗?(100分)

  • 主题发起人 主题发起人 leozmy
  • 开始时间 开始时间
L

leozmy

Unregistered / Unconfirmed
GUEST, unregistred user!
我用ado connection string的Microsoft Jet 4.0 OLE DB Provider
连Access数据库,增加等方法都正常,但使用TAdoTable或TAdoQuery的
Locate方法,如:
Locate('Text',VarArrayOf(['ss']),[loCaseInsensitive ,loPartialKey]);
在开发环境中运行时提示EVariantError:"Invalid variant operation",
不在开发环境中运行时不提示错误,但不能定位,用try也没捉时错误。

我delphi的所有补丁包括两个ado补丁都装过了。在三层程序的ado连接中
使用Locate方法也正常。

当把ado改成bde时,就正常使用了,证明不是代码的问题。
真怪了!
 
多贴点代码看看。
 
:hbezwwl
根本就没有任何代码呀,只有这句
ADOTable1.Locate('Text',VarArrayOf(['ss']),[loCaseInsensitive,loPartialKey]);
我另外开了个小程序,只有几个已连好的数据组件和dbgrid再加一个button。
不然你也试试看。怪。
 
自己找到答案了。
要用ADOTable1.Locate('Text','ss',[loCaseInsensitive,loPartialKey]);才行。

 
自己解决了??
那还给分么?
 
后退
顶部