//table1,dbgrid,DataSource1相关联,按botton1执行。
procedure TForm1.Button1Click(Sender: TObject);
var
RecordNumber:integer;//定义一个记录数变量
begin
recordnumber:=0; //似乎是必须的,否得不到正确结果
table1.first;
while not table1.Eof do
begin
if not table1.FieldByName('Fieldname').isNull then
//FieldName 是表中的任一个字段名
begin
RecordNumber:=RecordNumber+1;
end;
table1.next;
end;
button1.Caption :=inttostr(recordnumber);//把记录数示在按钮上
end;