ado访问access数据库问题

twinsensxu 2006-08-16 05:42:37
我设计了两个窗体,unit1,unit2
unit1用了dbgrid 和ADOTable1来显示数据库里的纪录。
unit2用ADOQuery来添加记录可是用execsql以后,新添加的记录不能及时在unit1里面的dbGrid中显示出来,该如解决?我希望每次ADOQuery1->ExecSQL()以后数据就会直接写入物理磁盘,而不是救灾内存中修改。该如何是好?分不多,以前都花光了,希望大家不要嫌弃
...全文
135 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuehaiyang 2006-08-21
  • 打赏
  • 举报
回复
如果是修改,则可以直接refush
如果是新增的,则先close,后open
huanying3990 2006-08-21
  • 打赏
  • 举报
回复
你也可以用updata,更新一下!
试一下,我用了是可能的!
zzq4823 2006-08-21
  • 打赏
  • 举报
回复
ADOQuery1->ExecSQL()后数据已经写入磁盘,unit1没有刷新,新增加的数据就不会显示出来
ADOTable1.close;
ADOTable1.open;
一次就OK了
skypeople 2006-08-21
  • 打赏
  • 举报
回复
我希望每次ADOQuery1->ExecSQL()以后数据就会直接写入物理磁盘!!在热行SQL后数据库已经进行了相应的更改;只是由于ADOTable1,没有刷新所以没有反映出更改,要刷新一次;
xjjrocker 2006-08-21
  • 打赏
  • 举报
回复
ADOQuery1.ExecSQL和ADOQuery1.Open,前者不返回,后者返回数据集。
ylsl917 2006-08-16
  • 打赏
  • 举报
回复
你先试试 adoquery1.active:=false;
adoquery1.active:=true;
要是不更新的话 就再添加一个adoconnection 控件 用他连接数据库 adoquery1连他
然后再更新一下
twinsensxu 2006-08-16
  • 打赏
  • 举报
回复
我都使用的sql语句添加的
newfang 2006-08-16
  • 打赏
  • 举报
回复
添加不要用INSERT语句!
用ADOQUERY1.APPEND
ADOQUERY1.FIELDBYNAME('..').ASSTRING := '......'
......
ADOQUERY1.POST
才子鸣 2006-08-16
  • 打赏
  • 举报
回复
ADOQuery2 ExecSQL後.把ADOQuery1先Close.然後再Open

2,496

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧