我用ADOConnection和ADOTable,DBGrid用来显示数据。
程序开始运行时,DBGrid显示数据正常。
程序中我想断开数据库连接,于是将ADOConnection断开数据库。但此时我将ADOTable的active设置为true后,DBGrid中还是能够取得数据。
我换用ADOQuery后,也能取得数据。
不知道为何?是我对ADO了解不够深刻吗?
小弟不才,请大虾们解释一下,谢谢!
程序开始运行时,DBGrid显示数据正常。
程序中我想断开数据库连接,于是将ADOConnection断开数据库。但此时我将ADOTable的active设置为true后,DBGrid中还是能够取得数据。
我换用ADOQuery后,也能取得数据。
不知道为何?是我对ADO了解不够深刻吗?
小弟不才,请大虾们解释一下,谢谢!
解决方案 »
- 咨询根据数据库表名动态更新下拉框的函数的参数传送问题
- 找一个条形码打印源码
- 连接sql server时,provider使用msdatashape有效率还是使用默认的sqlclient有效率?
- 我的图象是JPEG文件,是放在远程一个固定IP电脑下面的一个目录,我如何读取这个JPEG文件呢?
- 如何将一个函数地址赋给一个函数指针?
- Delphi中如何将数据库Sql server中的数据库备份、如何恢复出来?
- com+调用时'无效的呼叫方'如何解决
- 谁有《Delphi 5.X ADO/MTS/COM+高级程序设计篇》的随机光盘!
- 如何代码指定DBGRIDEH 显示哪几行记录?
- 谁有Wise Installer 8.12的注册码?谢谢了!
- 在 Delphi 中怎么利用 office 2000 中的 Excel ---------在线等待!!!!
- form的背景问题,急用,help!
在运行期间,我将ADOTable设置为true,DBGrid中的数据就显示了。
但是在运行期间,我将ADOConnection断开数据库,然后设置ADOTable为true后,DBGrid还是能够显示!whbo(王红波) :我不知道你说的是什么意思?谢谢
ADOConnection这个控件本来就不是很正常,我以前做数据库恢复的时候把ADOConnection用程序断开,但是还是提示用表连接数据库,恢复不了,说明它压根就没有完全断开,后来把数据模块释放掉就搞定了
解决办法:
只要把 adotable.active := false; 而adoconnecttion 要不要断开没有关系.
这时dbgrid上面就肯定不会有数据了。
adotable1.locktype:=ltBatchOptimistic; //使用绶存更新
adotable1.open;
adotable1.connection:=nil;
adoconnection1.connnected:=False; //断开数据库连接在完成修改或是浏览的时候用adoconnection1.connected:=true; //打开数据库连接
adotable1.connection:=adoconnection1;adotable1.UpdateBatch(arall); //更新数数据操作
转<<Delphi.5.X.ADO.MTS.COM+高级程序设计篇>>
2.zdq801104(我很笨,但是我不傻!) ,请问什么叫释放数据模块?如何操作?
3.ADOQuery1.DisableControls;
ADOQuery1.EnableControls;
这个方法的话与1相似,要改多个谢谢!
你没明白一个问题,ADOConnection起到多个数据集组件链接到数据库的作用
当你把ADOTable设置为true设置为TRUE是,ADOConnection会自动打开的。明白了嘛
AdoTable.close;
这时dbgrid上面就肯定不会有数据了。