用odbc访问access数据库,用insert增加一条记录然后post,可是recordcount值为什么还是原来的值?(50分)

  • 主题发起人 主题发起人 lhy9988
  • 开始时间 开始时间
是不是要Refresh一下,我没用ODBC访问过ACCESS,只是猜的 :)
 
refresh了,就是不行!
 
同志,不要用RecordCount了,用Eof去判断吧,听说RecordCount会出现记录不准的情况
 
可是我想根据记录数生成序号,而且在增加、删除时都能自动重新排列序号
 
自己写了
function myrecord(mytable:Ttable):integer;

begin
myrecord:=1;
with mytable do
begin
first;
while not eof do
begin
inc(myrecord);
next;
end;
end;

end;
 
也不行,你可以新增两条试一试
 
你把代码贴出来看看
 
应该用refresh.
 
begin

table1.post;
table1.refresh;
no:=1;
table1.first;
with table1 do
begin
while not eof do
begin
showmessage(inttostr(no));

if no<10 then r:='00'+inttostr(no)
else
if (no>9) and (no<100) then r:='0'+inttostr(no)
else
if (no>99) and (no<1000) then r:=inttostr(no);
edit;
fieldbyname('序号').asstring:=loginform.bm+r;
post;
no:=no+1;
next;
end;
end;
 
table1.close;
table1.Open; //代替refresh试试
 
接受答案了.
 
后退
顶部