小弟做的一个程序,原者是将表T_kb中的teach_id变为2000+teach_id然后再将其他的字段信息追加进这个表中,可执行的结果是有一小部分的记录确不能追加,并且无论那种情况都正好是少55条,它们又没有了什么特别的地方?好郁闷!!
procedure TF_kaoshixx.Button1Click(Sender: TObject);
  var xkbh,kcdm,kd,st_id,student_team,id:string;
  gd,n,m,i,week,wek:integer;
 begin
   T_kb.Close;
   T_kb.Filter:='team='''+dbedit1.Text+'''';
   T_kb.Filtered:=true;
   T_kb.Open;
   n:=T_kb.recordcount;
   i:=0;
   gauge.Progress:=0;
   T_kb.First;
   while not T_kb.Eof do
   begin
   xkbh:=T_kb['teach_id'];
   gd:=2000+strtoint(xkbh);
   id:=inttostr(gd);
   kcdm:=T_kb['teach_code'];
   week:=T_kb['teach_to_week'];
   kd:=kcdm[length(kcdm)];
   if kd='0' then
   wek:=week+1
   else
   wek:=week;
   T_kb.AppendRecord([id,T_kb['teach_name'],T_kb['teach_grade'],T_kb['teach_class'],T_kb['teach_type'],
   T_kb['teach_class_id'],T_kb['teach_student_number'],T_kb['teach_teacher'],T_kb['teach_xuan'],T_kb['teach_code'],
   T_kb['teach_xf'],wek,wek,T_kb['teach_department'],T_kb['teach_department_id'],T_kb['team'],
   T_kb['teach_memo'],now]);
   inc(i);
   T_kb.Next;
   gauge.Progress:=(100*i) div n;
   end;
   B_xuesheng.Enabled:=true;
   Button1.Enabled:=false;
   showmessage('生成完毕');
   end;