To read through all records in a table and update the ProgressBar accordingly:
procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
begin
with ProgressBar1 do
begin
Min := 0;
Max := PSQLTable1.RecordCount;
PSQLTable1.First;
for i := Min to Max do
begin
Position := i;
PSQLTable1.Next;
end;
end;
end;