两个ADOQUERY 通过 Microsoft.Jet.OLEDB.4.0 连接 access 数据库 1. 先用第一个 ADOQUERY 查询出一个表的数据,用DBGrid显示; 2. 再用另外一个 ADOQUERY 更新(删除、添加)这个表的数据,sql语句是insert/update/delete,用ADOQuery.ExecSQL提交 3. 执行之后紧接着 刷新第一个 ADOQUERY ,显示的数据却没有变化。 用 ADOQUERY.Close 和 ADOQUERY.Open 、ADOQUERY.Active:= false 和 ADOQUERY.Active:=true 、ADOQUERY.Refresh 、DBGrid.Refresh 这些方法,都不能刷新DBGrid中的值。 硬是要等到1-2秒之后再刷新才有效。 这个情况在Sql Server 和 Oracle 中都没有碰到。 是ACCESS数据更新太慢?是Microsoft.Jet.OLEDB.4.0更新太慢?
1. 我的系统中的 Microsoft Data Access Component 是最新的…… 2. 这段代码在其他多台机器上运行,问题相同…… 3. 考虑到可能是Microsoft.Jet.OLEDB.4.0的问题,我改成通过ODBC连接ACCESS,对于代码来说,只改了ADOQuery的连接字符串,其他没有变化,结果是:问题依旧…… 4. 把 ACCESS 导入到 SQL Server ,通过 Microsoft OLE DB Provider for SQL Server 连接,只改了ADOQuery的连接字符串,其他代码没有改变,结果是:问题不存在了…… 但是这个小东西要用ACCESS,不用SQL Server。
谁碰到并解决过这个ACCESS的刷新问题,请告诉我解决的办法,不胜感谢!另外再加100分…… 谁对这个问题感兴趣,可以和我交换QQ,我把代码发过去,切磋一下。
1. 我的系统中的 Microsoft Data Access Component 是最新的…… 2. 这段代码在其他多台机器上运行,问题相同…… 3. 考虑到可能是Microsoft.Jet.OLEDB.4.0的问题,我改成通过ODBC连接ACCESS,对于代码来说,只改了ADOQuery的连接字符串,其他没有变化,结果是:问题依旧…… 4. 把 ACCESS 导入到 SQL Server ,通过 Microsoft OLE DB Provider for SQL Server 连接,只改了ADOQuery的连接字符串,其他代码没有改变,结果是:问题不存在了…… 但是这个小东西要用ACCESS,不用SQL Server。
谁碰到并解决过这个ACCESS的刷新问题,请告诉我解决的办法,不胜感谢!另外再加100分…… 谁对这个问题感兴趣,可以和我交换QQ,我把代码发过去,切磋一下。
解决方案 »
- delphi2009自带的indy10.2.5 idtcpserver与idtcpclient传送记录类型时,中文显示乱码
- 求助如何动态生成DBChart Series 的代码
- 有没有高手,是高手来解决这个问题...
- PagaControl 控件如何能锁定一个页面,在线。。。。。。
- BMP或者JPG文件如何合并成一幅图片?急
- paradox7里查询,删除前5条记录的sql语句怎么写
- 怪问题!MDI 加三成结构----在线等!!
- 求救(急!):在应用程序中,怎样获取DOS程序是否执行完成?
- 请csdn的朋友帮助解惑!
- 急急急!如何对本机的某个文件夹加密,只有知道密码的人才能打开。
- 分辨率问题
- ★★★自己都觉得感动啊,耗时将近两周,终于闹了个4个三角啊★★★
不过你说的用close,在open应该行的啊
原来我也用Access做过的
就用close,再用open就可以了
在Access里我这么用没问题的
以删除为例
id:=adoquery1.Fields[0].Value;
adoquery2.Close;
adoquery2.SQL.Clear;
adoquery2.SQL.Add('delete from mytest where 编号=:id');
adoquery2.Parameters.ParamByName('id').Value:=id;
adoquery2.ExecSQL;
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('select * from mytest');
adoquery1.Open;
经测试,能够及时刷新
删除能够了,那么其他操作也可以类似
楼主如果要私下讨论,也可以
我的QQ是88971159,随时可以联系我
前面3个要绑定一下,adoquery2与adoconnection1绑定就可以了