title: ADO DataSet use EOF or IsEmpty?
body: <p>The majority of my code for accessing a Stored Procedure dataset (MS SQL Server, forward-only, readonly) is a fallback to my Clipper coding from many years ago</p>
  
  <p>In code review today, I noticed a reference to IsEmpty instead in a similar block of code.  Is this just a preference or is there any real difference in the example scenario?  </p>
  
  <pre><code>MyStoredProc.Open;
  if not MyStoredProc.IsEmpty then
  begin
    DoSomething;
  end;
  </code></pre>
  
  <p>Where I usually use</p>
  
  <pre><code>MyStoredProc.Open;
  if not MyStoredProc.Eof then
  begin
    DoSomething;
  end;
  </code></pre>
  
  <p>Mostly because it mirrors the practice of what I use in a while loop when it's more than one record:</p>
  
  <pre><code>MyStoredProc.Open;
  while not MyStoredProc.Eof then
  begin
    DoSomething;
    MyStoredProc.Next;
  end;
  </code></pre>